【发布时间】:2020-07-18 00:26:35
【问题描述】:
我在 SQL Server 中有这张表:
CREATE TABLE [dbo].[blast_info](
[blast_id] [int] NOT NULL,
[tnt_amount_kg] [decimal](18, 2) NOT NULL,
[time_blasted] [datetime] NOT NULL,
[hole_deep_ft] [numeric](9, 2) NULL,
[hole_coord_n] [numeric](18, 6) NOT NULL,
[hole_coord_e] [numeric](18, 6) NULL
) ON [PRIMARY]
debezium 配置为从 confluent 作为插件运行。数据被发布到 Kafka,但是当我通过 python 或控制台消费者读取它时,我看到了数字和十进制类型的编码值:
{"blast_id":17,"tnt_amount_kg":"eA==","time_blasted":1585803600000,"hole_deep_ft":"AOY=","hole_coord_n":"A/OOVvYA","hole_coord_e":"AKSQkBwA","__ts_ms":1586140437125}
{"blast_id":16,"tnt_amount_kg":"ANw=","time_blasted":1583125200000,"hole_deep_ft":"Aa4=","hole_coord_n":"A/OOVvYA","hole_coord_e":"AKSQkBwA","__ts_ms":1586140437125}
{"blast_id":17,"tnt_amount_kg":"eA==","time_blasted":1585803600000,"hole_deep_ft":"AOY=","hole_coord_n":"A/OOVvYA","hole_coord_e":"AKSQkBwA","__ts_ms":1586140437126}
Processed a total of 38 messages
为什么会这样?解决方法是什么?谢谢。
【问题讨论】:
-
您是否已将 Debezium 配置为精确处理 DECIMAL 值?
-
@MitchWheat 我没有。文档说这是默认设置(尽管对于 Postgres 连接器)。会给它我拍。谢谢。
-
您能否粘贴您的连接器配置并关注 kafka 连接属性。 1.key.converter 2.value.converter 3.key.converter.schemas.enable 4.value.converter.schemas.enable @DmitryBuzolin
-
@RaviDesai 这里是:
"key.converter.schemas.enable": "false", "internal.key.converter": "org.apache.kafka.connect.json.JsonConverter", "internal.value.converter.schemas.enable": "false", "value.converter.schemas.enable": "false", "internal.value.converter": "org.apache.kafka.connect.json.JsonConverter", "value.converter": "org.apache.kafka.connect.json.JsonConverter", "key.converter": "org.apache.kafka.connect.json.JsonConverter",
标签: sql-server apache-kafka confluent-platform connector debezium