如何从 scala 中的 avro 文件中读取元数据
How to read metadata from an avro file in scala
I want to read the avro schema from the metadata of an avro file in scala. I can do it python, but I don't know how to achieve the same in scala. Below is the python code for the same:
with open(file_path, 'rb') as f:
file_reader = reader(f)
data = [rec for rec in file_reader]
avro_schema = file_reader.metadata['avro.schema']
avro_schema = ast.literal_eval(avro_schema)
Thanks in advance
试试这个:
import org.apache.avro.file.DataFileReader
import org.apache.avro.generic.{GenericDatumReader, GenericRecord}
val datumReader = new GenericDatumReader[GenericRecord]
val dataFileReader = new DataFileReader[GenericRecord](new File("file.avro"), datumReader)
val schema = dataFileReader.getSchema
希望对您有所帮助
I want to read the avro schema from the metadata of an avro file in scala. I can do it python, but I don't know how to achieve the same in scala. Below is the python code for the same:
with open(file_path, 'rb') as f:
file_reader = reader(f)
data = [rec for rec in file_reader]
avro_schema = file_reader.metadata['avro.schema']
avro_schema = ast.literal_eval(avro_schema)
Thanks in advance
试试这个:
import org.apache.avro.file.DataFileReader
import org.apache.avro.generic.{GenericDatumReader, GenericRecord}
val datumReader = new GenericDatumReader[GenericRecord]
val dataFileReader = new DataFileReader[GenericRecord](new File("file.avro"), datumReader)
val schema = dataFileReader.getSchema
希望对您有所帮助