Я пытаюсь просто прочитать файл Avro, хранящийся в HDFS. Я узнал, как читать его, когда он находится в локальной файловой системе....
FileReader reader = DataFileReader.openReader(new File(filename), new GenericDatumReader());
for (GenericRecord datum : fileReader) {
String value = datum.get(1).toString();
System.out.println("value = " value);
}
reader.close();
Однако мой файл находится в HDFS. Я не могу дать openReader путь или FSDataInputStream. Как я могу просто прочитать файл Avro в HDFS?
РЕДАКТИРОВАТЬ :Я заставил это работать, создав собственный класс (SeekableHadoopInput ), который реализует SeekableInput. Я «украл» это у «Ganglion» на github. Тем не менее, похоже, что для этого будет путь интеграции Hadoop/Avro.
Спасибо