我正在使用 Confluence JDBC Kafka 连接器将消息发布到主题中。源连接器将数据以及每次轮询的架构发送到主题。我想检索这个架构。
这可能吗?如何?谁能给我推荐一下
我的目的是根据 Kafka 连接器在 poll 上构建的模式创建 KSQL 流或表。
最佳答案
最好的方法是使用 Avro,其中模式单独存储,并由 Kafka Connect 和 KSQL 自动使用。
您可以通过配置 Kafka Connect 使用 AvroConverter 来使用 Avro。在您的 Kafka Connect 工作线程配置集中:
key.converter=io.confluent.connect.avro.AvroConverter
key.converter.schema.registry.url=http://schema-registry:8081
(将 schema-registry
更新为运行架构注册表的主机名)
从那里开始,在 KSQL 中您只需使用
CREATE STREAM my_stream WITH (KAFKA_TOPIC='source_topic', VALUE_FORMAT='AVRO');
您不需要在此处指定架构本身,因为 KSQL 会从架构注册表中获取它。
您可以阅读有关转换器和序列化器的更多信息 here 。
免责声明:我在 Confluence 工作,并撰写了引用的博客文章。
关于apache-kafka - 如何根据连接器名称获取Kafka源连接器架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53425385/