Добавьте атрибут {{X0}} в аннотацию RequestMapping

Record1:
{
  label:int,
  id: long
},
Record 2:
{
 ...
}
...

На выходе я хочу получить

Record 1:
{
  data:{
    label:int,
    id:long
  }
}, 
Record 2:
{
  ...
}
...

Я старался:

result = FOREACH input GENERATE (id, label) AS data;

Я пытаюсь обновлять существующее значение каждый час, если условие действительно

Record 1:
{
  data:{
   TUPLE_1:{
      label:int,
      id: long
   }
  }
}

Как я мог избавиться от еще одного мешка как "TUPLE_1", похоже, я пропустил тривиальную настройку.

3
Yitong Zhou 15 Мар 2014 в 02:32
Как вы получаете эти структуры? Вы используете DESCRIBE?
 – 
reo katoa
11 Июл 2014 в 19:19

2 ответа

Лучший ответ

Мое окончательное решение таково:

Отправка формы, неправильно вызывает контроллер Spring

STORE sth INTO 'someplace' USING AvroStorage('schema','
  {
    ### AN AVRO SCHEMA JSON STRING ###
  }
');

Я обнаружил, что использование такого отступа действительно помогает сделать определение схемы более чистым. А также мне нужно убедиться, что я экранировал все специальные символы, особенно для кавычек (они могут существовать в "doc", это сложно).

Например, если есть что-то подобное,

in = LOAD '$INPUT_PATHS' USING AvroStorage();
in = FOREACH in GENERATE foo.label AS label, bar.id AS id;
out = FOREACH in GENERATE TOMAP('id', (long)id, 'label', (chararray)label) AS data;
RMF $OUTPUT_PATH;
STORE out INTO '$OUTPUT_PATH USING AvroStorage('schema',
  {
    "type": "records",
    "name": "XXItem",
    "namespace": "com.xxx.xxx",
    "fields": [
      {
       "name": "data",
       "type":  {"type": "map", "values" : ["string", "long", "int"]}
      }
    ]
  }
');
0
Yitong Zhou 18 Окт 2014 в 01:51

Это вызов jquery для отправки формы.

result = FOREACH input GENERATE label:int, id:long;
STORE result INTO 'result.avro' USING org.apache.pig.piggybank.storage.avro.AvroStorage('schema', '{"type": "record","name": "data","fields": [{"name": "label","type": "int"},{"name": "id", "type": "long"}]}');
0
Mikko Kupsu 5 Авг 2014 в 16:08