Debezium MySQL连接器对接AWS Glue注册表键值Schema同名问题问询
问题原因
你当前的配置使用AWS Glue Schema Registry的默认Schema命名策略:默认直接用消息发送的Kafka Topic名称作为Schema注册名。由于Debezium生成的数据库变更事件的键、值消息都会发往同一个Topic(你的场景下Topic名为database1.tutorial.movies),所以两者的Schema会被注册到同一个名称下,仅通过版本号区分,和你的预期不符。
解决方案
只需要在现有配置中新增2行参数,分别指定键、值转换器的Schema名称生成策略,让其自动追加对应后缀即可,新增配置如下:
# 键Schema自动追加-Key后缀 key.converter.schemaNameGenerationStrategy=TOPIC_NAME_KEY_SUFFIX # 值Schema自动追加-Value后缀 value.converter.schemaNameGenerationStrategy=TOPIC_NAME_VALUE_SUFFIX
修改配置后重启连接器,后续新注册的Schema就会按照database1.tutorial.movies-Key、database1.tutorial.movies-Value的命名规则独立注册。如果之前已经生成了同名的错误Schema,你可以手动在AWS Glue控制台删除对应旧Schema版本即可,不会影响新数据写入。
内容的提问来源于stack exchange,提问作者kalyan chakravarthy
相关产品推荐
相关产品推荐

