展开描述
Avro schema 解析和表示
提供用于解析和表示 Avro schema 定义的类型。Arrow 的 Avro Schema 表示。
结构体§
- Array 🔒
- 一个数组
- Attributes 🔒
Schema中的额外属性- Avro
Schema - Avro schema JSON 字符串表示的包装器。
- Avro
Schema 🔒Options - Enum 🔒
- 一个枚举
- Field 🔒
Record中的字段- Fixed 🔒
- 一个固定长度的二进制数组
- Map 🔒
- 一个映射
- Name
Generator 🔒 - Prefix 🔒
- 一个栈分配的、固定大小的前缀缓冲区。
- Record 🔒
- 一个记录
- Schema
Store - 按指纹索引的 Avro schema 内存缓存。
- Type 🔒
- 不是
ComplexType变体的类型定义
枚举§
- Complex
Type 🔒 - 一个复杂类型
- Fingerprint
- 支持格式之一的 schema 指纹。
- Fingerprint
Algorithm - Avro schema 识别支持的指纹算法。对于 Confluent Schema Registry ID,设置为 None。
- Fingerprint
Strategy - 定义生成 Avro 二进制流每条记录前缀的策略。
- Nullability 🔒
- Avro 类型不可为空,可空性被编码为一个联合,其中一个变体是 null 类型。
- Primitive
Type 🔒 - 一个原始类型
- Schema 🔒
- 一个 Avro schema
- Type
Name 🔒 - 一个
PrimitiveType或对先前定义的命名类型的引用
常量§
- AVRO_
DOC_ METADATA_ KEY - 用于在 Avro schema 中存储类型文档的元数据键。
- AVRO_
ENUM_ SYMBOLS_ METADATA_ KEY - 用于在 Arrow schema 中表示 Avro 枚举符号的元数据键。
- AVRO_
FIELD_ DEFAULT_ METADATA_ KEY - 用于在 Avro schema 中存储字段默认值的元数据键。
- AVRO_
NAMESPACE_ METADATA_ KEY - 用于在 Avro schema 中存储类型名称的元数据键。
- AVRO_
NAME_ METADATA_ KEY - 用于在 Avro schema 中存储类型名称的元数据键。
- AVRO_
ROOT_ RECORD_ DEFAULT_ NAME - Avro schema 中根记录的默认名称。
- CONFLUENT_
MAGIC - Confluent “魔法”字节 (
0x00) - EMPTY 🔒
- Avro 规范中描述的 64 位 Rabin 指纹。
- MAX_
PREFIX_ LEN - 前缀的最大可能长度。SHA256 (32) + 单对象魔法 (2)
- SCHEMA_
METADATA_ KEY - 用于存储 JSON 编码
Schema的元数据键 - SINGLE_
OBJECT_ MAGIC - Avro 单对象编码“魔法”字节 (
0xC3 0x01)
静态§
- FINGERPRINT_
TABLE 🔒 - 预计算的表。
函数§
- arrow_
field_ 🔒to_ avro - build_
canonical 🔒 - build_
table 🔒 - 在编译时构建完整的 256 条目表。
- compute_
fingerprint_ 🔒md5 - 计算规范形式的 128 位 MD5 指纹。
- compute_
fingerprint_ 🔒rabin - 为给定的规范 schema 字符串计算 64 位 Rabin 指纹。此实现基于 Avro 规范的 schema 指纹。
- compute_
fingerprint_ 🔒sha256 - 计算规范形式的 256 位 SHA‑256 指纹。
- datatype_
to_ 🔒avro - deserialize_
default 🔒 - extend_
with_ 🔒passthrough_ metadata - 将 Arrow schema 元数据条目复制到提供的 JSON 映射,跳过 Avro 保留键、内部 Arrow 键或嵌套在
avro.schema.命名空间下的键。可解析为 JSON 的值将作为 JSON 插入;否则保留原始字符串。 - is_
avro_ 🔒json_ null - is_
internal_ 🔒arrow_ key - make_
full_ 🔒name - merge_
extras 🔒 - min_
fixed_ 🔒bytes_ for_ precision - one_
entry 🔒 - 构建多项式除法表的一个条目。
- process_
datatype 🔒 - quote 🔒
- sanitise_
avro_ 🔒name - union_
branch_ 🔒signature - wrap_
nullable 🔒 - write_
prefix 🔒