我已经将Kafka连接工作人员配置为在集群中运行,并能够获取DB数据。此外,我还以JSON格式以Kafka主题存储DB数据。这里我使用JSON转换器来序列化数据
在查看Kafka消费控制台中的DB数据时,我可以看到UserCreatedon列值显示为整数。DB中的UserCreatedon列值的数据类型是int64 (unix ),这就是卡夫卡使用者将时间戳值显示为int的原因。
是否有任何方法在连接器创建期间发送架构。因为我希望UserCreatedon应该以时间戳格式显示,而不是int格式。
样本输出
{“模式”:{“类型”:“结构”,“字段”:“字符串”,“可选”:“假”,“字段”:“名称”},{“类型”:“int64”,“可选”:真,“int64”版本:1,"UserCreatedon“},”可选“:false},”有效载荷“:{”名称“:”UserProvision“,”UserCreatedon ":1567688965261}}
恳请您在此多多支持。
发布于 2019-10-01 09:43:21
您没有提到您使用哪种类型的连接器从DB将数据带到Kafka。卡夫卡连接支持变压器。
单消息转换(SMT)在消息通过Connect时应用于消息。SMT在源连接器生成入站消息之后,但在写入Kafka之前,对入站消息进行转换。
请参阅这里
特别针对您的情况,您可以使用TimestampConvertor
https://stackoverflow.com/questions/58179387
复制相似问题