AVRO 参考 API


在上一章中,我们描述了 Avro 的输入类型,即 Avro 模式。在本章中,我们将解释在 Avro 模式的序列化和反序列化中使用的类和方法。

具体的DatumWriter 类


这个类属于包 org.apache.avro.specific .它实现了 数据写入器 interface which converts Java objects into an in-memory serialized format.

构造函数

S.No. 描述
1 SpecificDatumWriter(架构模式)

Method

S.No. 描述
1

特定数据 getSpecificData()

返回此 writer 使用的 SpecificData 实现。

具体的DatumReader 类


这个类属于包 org.apache.avro.specific .它实现了 基准阅读器 interface which reads the data of a schema and determines in-memory data representation. 具体数据读取器 是支持生成的java类的类。

构造函数

S.No. 描述
1

SpecificDatumReader(架构模式)

构造作者和读者的模式相同的地方。

Methods

S.No. 描述
1

特定数据 getSpecificData()

返回包含的SpecificData。

2

void setSchema(Schema actual)

此方法用于设置编写器的架构。

数据文件编写器


实例化 数据文件写入 for emp 班级。此类将符合模式的数据的序列序列化记录与文件中的模式一起写入。

构造函数

S.No. 描述
1 DataFileWriter(DatumWriter dout)

Methods

S.No 描述
1

void append(D datum)

将数据附加到文件。

2

DataFileWriter appendTo(文件文件)

此方法用于打开附加到现有文件的写入器。

数据文件读取器


此类提供对使用编写的文件的随机访问 数据文件编写器 .它继承了类 数据文件流 .

构造函数

S.No. 描述
1 DataFileReader(文件文件,DatumReader 阅读器))

Methods

S.No. 描述
1

next()

读取文件中的下一个数据。

2

布尔 hasNext()

如果此文件中还有更多条目,则返回 true。

类 Schema.parser


此类是 JSON 格式模式的解析器。它包含解析模式的方法。它属于 org.apache.avro package.

构造函数

S.No. 描述
1 Schema.Parser()

Methods

S.No. 描述
1

解析(文件文件)

解析给定中提供的模式 file .

2

解析(输入Stream 中)

解析给定中提供的模式 输入流 .

3

解析(字符串)

解析给定中提供的模式 String .

接口通用记录


此接口提供按名称和索引访问字段的方法。

Methods

S.No. 描述
1

Object get(String key)

返回给定字段的值。

2

void put(String key, Object v)

设置给定名称的字段的值。

类 GenericData.Record


构造函数

S.No. 描述
1 GenericData.Record(架构模式)

Methods

S.No. 描述
1

Object get(String key)

返回给定名称的字段的值。

2

架构 getSchema()

返回此实例的架构。

3

void put(int i, Object v)

设置给定字段在架构中的位置的值。

4

void put(String key, Object value)

设置给定名称的字段的值。