AvroRecordSetWriter

文档中心 › 组件索引 › AvroRecordSetWriter

AvroRecordSetWriter Controller Service

类型全限定名:cn.org.acal.lynxus.avro.AvroRecordSetWriter

所属 Bundle:cn.org.acal.lynxus:lynxus-record-serialization-services-nar:2.11.8

描述

以二进制 Avro 格式写入 RecordSet 的内容。

标签

avroresultsetwriterserializerrecordrecordsetrow

属性

下表中,加粗的属性为必填项;其余为可选项。表格同时标注默认值、是否支持表达式语言,以及是否为敏感属性(值会被加密)。

名称默认值可选值描述
Schema Write Strategyavro-embedded
  • 嵌入 Avro Schema — FlowFile 将把 Avro Schema 嵌入到内容中,这是 Avro 的典型做法
  • 不写出 Schema — 不向 FlowFile 添加任何 Schema 相关信息。
  • Set 'schema.name' Attribute — FlowFile 将被赋予一个名为 'schema.name' 的属性,该属性将指示 Schema Registry 中 schema 的名称。请注意,如果记录的 schema 不是从 Schema Registry 获取的,则不会添加任何属性。
  • 设置 'avro.schema' 属性 — FlowFile 将获得一个名为 'avro.schema' 的属性,该属性将包含描述 FlowFile 中记录的 Avro Schema。FlowFile 的内容不需要是 Avro 格式,但将使用 Schema 的文本。
  • Schema 引用写入器 — Schema 引用信息将通过配置的 Schema 引用写入器服务实现写出。
指定记录的模式应如何添加到数据中。
Schema Cache控制器服务 API:
RecordSchemaCacheService
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
指定要添加记录模式的模式缓存,以便记录读取器可以快速查找模式。
Schema Reference Writer控制器服务 API:
SchemaReferenceWriter
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
负责使用模式参考信息写入 FlowFile 属性或内容头的服务实现
Schema Access Strategyinherit-record-schema
  • 继承记录 Schema — 用于写入记录的 Schema 与创建 Record 时给出的 Schema 相同。
  • 使用 'Schema Name' 属性 — 要使用的 Schema 名称由 'Schema Name' 属性指定。此属性的值用于在配置的 Schema Registry 服务中查找 Schema。
  • 使用 'Schema Text' 属性 — Schema 本身的文本由 'Schema Text' 属性指定。此属性的值必须是有效的 Avro Schema。如果使用表达式语言,则 'Schema Text' 属性的值在替换表达式后必须有效。
指定如何获取用于解释数据的架构。
Schema Registry控制器服务 API:
SchemaRegistry
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
指定用于架构Registry的Controller Service
Schema Name${schema.name}指定要在架构Registry属性中查找的架构名称
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Schema Version指定在 Schema Registry 中查找 Schema 的版本。如果未指定,则检索 Schema 的最新版本。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Schema Branch指定在 Schema Registry 属性中查找 Schema 时使用的分支名称。如果选择的 Schema Registry 不支持分支,则此值将被忽略。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Schema Text${avro.schema}Avro 格式的架构文本
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Schema Reference Reader控制器服务 API:
SchemaReferenceReader
cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8
服务实现负责读取 FlowFile 属性或内容以确定架构参考标识符
Compression FormatNONE
  • BZIP2
  • DEFLATE
  • NONE
  • SNAPPY
  • LZO
写入 Avro 文件时使用的压缩类型。 默认为“无”。
Cache Size1000指定应缓存多少个 Schema
Encoder Pool Size32Avro Writer 需要使用 Encoder。创建 Encoder 的开销较大,但创建后可以重用。此属性控制可以池化和重用的 Encoder 的最大数量。设置过小的值可能导致性能下降,但设置较高的值可能导致使用更多堆内存。如果 Avro Writer 配置了 Schema 写入策略为'嵌入 Avro Schema',则忽略此属性。
支持表达式语言:是(仅使用环境/系统变量求值)

状态管理

该组件不存储状态。

受限 (Restricted)

该组件不受限。

提供的 Service API

  • RecordSetWriterFactory (cn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8)