Avro
Avro 是 Hadoop 生态的行式二进制序列化格式,schema 内嵌或外联,用于大数据存储与 Kafka。
用途
提供紧凑且 schema 感知的序列化,适合大数据与流处理。
机制
数据编码时 schema 可内嵌(写入头)或外联(注册中心)。无字段标签(靠 schema 定位),故比 Protobuf 更紧凑。支持 schema 演进(字段增删与默认值)。行式存储适合 OLAP。
用例
- Kafka 消息序列化
- Hadoop 文件格式
- Hive 表存储
- Confluent Schema 注册中心
示例
- 输入
schema + data输出Compact binary bytesSchema-aware encoding
常见错误
- Schema mismatch causes decoding errors
- Manage schema versions with a Schema Registry