2015-02-20 2 views
0

У меня есть GenericRecord и хочу перебирать всю коллекцию ключей/значений. Запись представляет собой структуру данных java, которая эквивалентна простой строке json. Например:Avro итерация по GenericRecord

{"key1":"val1","key2":val2",...} but is quite long. 

Проблема в том, что я не знаю, сколько ключей, валов внутри.

Я пробовал:

AvroKeyValue<String,String> kv = new AvroKeyValue<>(record); 
    Iterator<String,String> iterator = new AvroKeyValue.Iterator<String,String>(kv); 

Но это не работает.

Апач документы об этом здесь: http://avro.apache.org/docs/1.7.0/api/java/org/apache/avro/hadoop/io/AvroKeyValue.Iterator.html

+0

Не работает ни точным, ни полезным. Что именно не работает? – jAC

ответ

0

Вы можете получить число полей GenericRecord с:

record.getSchema().getFields().size(); 
Смежные вопросы