Почему avro не может взять схему из файла .avro? - PullRequest
0 голосов
/ 26 сентября 2019

Вот десериализатор с точки tutorialspoint.

public class Deserialize {
   public static void main(String args[]) throws Exception{

      //Instantiating the Schema.Parser class.
      Schema schema = new Schema.Parser().parse(new File("/home/Hadoop/Avro/schema/emp.avsc"));
      DatumReader<GenericRecord> datumReader = new GenericDatumReader<GenericRecord>(schema);
      DataFileReader<GenericRecord> dataFileReader = new DataFileReader<GenericRecord>(new File("/home/Hadoop/Avro_Work/without_code_gen/mydata.txt"), datumReader);
      GenericRecord emp = null;

      while (dataFileReader.hasNext()) {
         emp = dataFileReader.next(emp);
         System.out.println(emp);
      }
      System.out.println("hello");
   }
}

Мой вопрос: если в файле .avro уже есть схема, почему я должен также передавать схему?Я нахожу очень неудобным предоставление схемы для анализа файла.

...