新特性
Neo4j Kafka 连接器 5.3 引入了若干改进以及相较于上一个次版本的若干破坏性更改。
Source(源)
-
源连接器使用 Kafka Connect 数据模型生成消息,并开箱即支持基于模式的转换器,如
Avro、JSON Schema和Protobuf。在连接器本身已无法关闭此行为,如果不需要模式,应通过转换器进行处理。 -
变更数据捕获现已在源连接器中得到完整支持,并应在可能的情况下作为首选的源连接器策略。
-
通过将
neo4j.start-from设置为USER_PROVIDED并将neo4j.start-from.value设为所需的游标(例如来自 CDC 的自定义变更标识),即可使用用户提供的游标进行变更跟踪。 -
如果需要,现在可以通过将
neo4j.ignore-stored-offset设置为true来忽略已存储的偏移量。 -
全新的
payload.mode配置提供了控制负载结构的选项。-
EXTENDED:提供详细的数据和类型信息,即使属性类型发生变化也能保证兼容性。 -
COMPACT:提供更简洁、轻量的格式,仅包含必要字段,适用于不需要模式兼容性或复杂类型的场景。
-
Sink(接收器)
-
更改现在会按照在 Kafka Connect 中收到的顺序执行,并按主题进行分组。
-
错误处理已重新实现,以实现与 Kafka Connect 基础设施的完整集成,失败的消息可以被独立识别并转发到死信队列(如已配置)。
-
在 CDC 策略中同时支持变更数据捕获以及以前流插件生成的变更事件消息。由于模式无效(缺少键字段等)而无法处理的变更事件将不再被悄然忽略,而是导致失败,必须通过错误处理机制进行监控和处理。
-
所有消息字段,包括 Kafka 中存储的消息时间戳、消息头、键和值,都可以在 Cypher 策略中引用。
-
所有消息字段,包括 Kafka 中存储的消息时间戳、消息头、键和值,都可以在模式(Pattern)策略中引用。
-
现在可以在模式策略中为节点或关系命名属性。