我们在当前的基础设施中设置了普通的 apache Kafka,并开始记录一些我们想要使用 Kafka Connect 处理的数据。目前,我们使用 Avro 作为消息格式,但我们的基础设施中没有架构注册表。
将来,我们计划用 Confluence 替换当前堆栈,并使用 Schema Registry 和 Connect,但在一段时间内我们只需要为此部署 Connect。
是否可以以某种方式配置 Connect 接收器,以便它们使用显式 avsc 文件或模式,而无需连接到模式注册表,并且无需使用带有魔术字节和模式 ID 的 Confluence 格式?
是的,可以使用无注册表 avro 转换器 https://github.com/farmdawgnation/registryless-avro-converter在 Github 上。
按照那里的构建说明进行操作,将 JAR 添加到您的plugin.path
加载其他连接器时的文件夹,然后像这样设置
key.converter=me.frmr.kafka.connect.RegistrylessAvroConverter
key.converter.schema.path=/path/to/schema/file.avsc
value.converter=me.frmr.kafka.connect.RegistrylessAvroConverter
value.converter.schema.path=/path/to/schema/file.avsc
请注意,这将要求您存储/维护/同步架构文件所有 Connect 工作人员, 然而
或者,您可以使用普通 Kafka 设置架构注册表 - 没有理由进行一些“融合迁移”,因为除了序列化器和反序列化器配置之外,注册表不需要任何基础设施更改。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)