jdbc - kafka 连接 jdbc sink 值 schema 必须是 Struct 类型
问题描述
我想使用带有 avro 转换器的 kafka connect jdbc sink 连接器。
这些是我的 avro 配置:
"key.converter":"io.confluent.connect.avro.AvroConverter",
"key.converter.schema.registry.url" : "http://myurl.com" ,
"value.converter":"io.confluent.connect.avro.AvroConverter",
"value.converter.schema.registry.url" : "http://myurl.com" ,
架构设置为 false
key.converter.schemas.enable=false
value.converter.schemas.enable=false
现在,当我启动连接器时,出现此错误
引起:org.apache.kafka.connect.errors.ConnectException:值模式必须是 Struct 类型
从我读到的, Struct 是用于 json 模式的,对吧?如果我使用 avro 模式,我不应该有任何结构吗?
Avro 模式类型有:记录、枚举、数组、映射、联合和固定,但没有结构。
我错过了什么?
谢谢 !!
解决方案
Avro记录创建一个Struct
Connect 数据类型。
错误是说您的数据不是记录。
架构设置为 false
这些属性对 Avro 转换器没有任何意义。Avro总是有一个模式
我想使用带有 avro 转换器的 kafka connect jdbc sink 连接器。
然后生产者需要发送带有模式的记录。这包括启用了模式的 Avro 记录或 JSON
推荐阅读
- amazon-web-services - 在 AWS 应用程序负载均衡器侦听器中添加路径
- java - 如何在 Firestore Android Studio 中计算集合中的文档数?
- ios - 如何解决视图初始化程序中不可用的 swiftUI environmentObject?
- java - 从弹簧数据 jpa 返回自定义复杂对象的选项
- go - 从 github 获取 go 包时出错
- performance - 对于 jmeter 中的应用程序的压力测试,我们应该增加每小时的交易量还是增加用户数?
- javascript - 如何让这个函数同步运行?
- python-3.x - python pandas dataframe.plot()
- javascript - 在调用函数之前对 React 数组进行排序
- google-apps-script - 无法使用 clasp push 命令推送文件