跳到主要内容 跳到补充内容

元数据和数据消息

本主题描述了由Kafka目标连接器生成的元数据和数据消息的结构和内容。

元数据消息

元数据消息
字段 类型 描述
schemaId 字符串 Avro 架构的唯一标识符。
世系 結構 有关数据来源的信息(Qlik Talend Data Integration 服务器、任务、表等等)

服务器

字符串 Qlik Talend Data Integration 服务器的名称。

任务

字符串 任务的名称。

模式 (模式名称)

字符串 数据库模式的名称。

表 (表格名称)

字符串 表格的名称。

tableVersion

整数 Qlik Talend Data Integration 维护源表结构的版本号。当源上发生 DDL 更改时,版本会增加,并生成新的元数据消息。

时间戳

字符串 元数据消息的日期和时间。
表结构 結構 描述表的结构。

表列

結構 包含列及其属性的列表。

{列}

結構 对于每列,一个包含以下属性的记录。

初始

整数 列在记录中的位置。

类型

字符串 列数据类型。

长度

整数 该列允许的最大数据大小(以字节为单位)。

精度

整数 对于 NUMERIC 数据类型,表示值所需的最大位数。

刻度

整数 对于 NUMERIC 数据类型,一个数字允许的小数点右边的最大位数。

primaryKeyPosition

整数 列在表的主键或唯一索引中的位置。如果列不是表主键的一部分,则该值为零。
dataSchema 字符串 用于反序列化数据消息的 Avro 模式。

数据消息

数据消息
字段 类型 描述
模式 (名称) 字符串 包含复制的源表的源数据库模式的名称。
表格 (名称) 字符串 源表的名称。

标题

結構 有关当前记录的信息。

操作 (Operation)

枚举 操作类型。

全量加载 - 将源数据初始加载到目标主题

刷新 – 在完全加载期间向目标插入记录

CDC - 将源表更改应用到相关主题

INSERT – 插入新的目标记录

UPDATE – 将现有目标记录 UPDATE

DELETE – 删除目标记录

changeSequence (更改序列)

字符串

单调递增的变更序列器,对于任务的所有变更表都是通用的。

使用此字段按时间顺序对记录进行排序。

仅适用于 CDC 操作。

时间戳 (时间戳)

字符串

原始更改 UTC 时间戳。

仅适用于 CDC 操作。

数据流位置

字符串

源 CDC 流位置。

仅适用于 CDC 操作。

事务 ID (事务 ID)

字符串

更改记录所属事务的 ID。

使用此字段收集特定事务的所有更改。

仅适用于 CDC 操作。

changeMask(更改掩码)

字符串

指示源表中更改了哪些数据列。

更改掩码是一个十六进制数字字符串,表示小端序数据列的位掩码。更改掩码中的位位置基于该表的元数据消息中列的序号。

这意味着,如果有 10 个数据列,它们在位掩码中占据位 0 到 9。

如果 UPDATE 掩码是十六进制的 0B(即二进制的 1011),则表示序号为 1、2 和 4 的列已更改。

以下描述了位语义:

  • 对于 INSERT 记录,所有插入的列都设置了相关的位。
  • 对于 DELETE 记录,只有主键(或唯一索引)列设置了相关的位。这允许应用程序构造 DELETE 语句,而不必从另一个源中查找主键字段。
  • 对于 UPDATE 记录,每个值已更改的列都将设置相关的位。
信息注释

LOB 列不包含在 changeMask 位中。

columnMask (列掩码)

字符串

指示消息中存在哪些数据列。通常,这将包含所有表列。

信息注释

移动 来自未启用完全补充日志记录的 Oracle 源时,某些列可能不会出现在数据中,因为它们无法 已移动

列掩码是一个十六进制数字字符串,表示以小端序排列的数据列的位掩码。列掩码中的位位置基于该表的元数据消息中列的序号。

这使得应用器能够区分作为列的实际值的空值,以及表示无法从源数据库中已移动的列的空值。

外部架构ID

字符串

架构ID。仅当选中包含外部架构ID标头复选框时,才会显示此项。

由于每次对源表执行 DDL 操作时,架构 ID 都会更改,因此消费者应用程序可以使用此信息来确定消息架构是否已更改。

transactionEventCounter (事务事件计数器)

Long

事务中当前操作的序列号。

这可用于确定事务中的操作顺序。

transactionLastEvent (事务最后事件)

布尔值

“True”表示它是事务中的最终记录,而“False”表示并非所有记录都已处理。

数据

結構 表记录的数据

{列}

  当前记录中的列名和值。

之前数据

結構 表记录变更前的数据

{列}

 

变更前的列名和值。

适用于 UPDATE 操作。

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们!