问题1:Flink CDC中是这个参数没有开,gtid_mode = onenforce_gtid_consistency = onlog-slave-updates = 1请问这个参数是从节点配置还是所有节点都要配置? 问题2:大佬文章中没有提到配置哪个节点呀,但是我百度的文章有的说主从都要配置log-slave-updates = 1 想和您这边确认一下
在 Flink CDC 中,参数 gtid_mode=on
、enforce_gtid_consistency=on
和 log-slave-updates=1
是 MySQL 数据库的配置参数,而不是 Flink CDC 的参数。
这些参数用于开启 MySQL 的 GTID(全局事务标识符)模式和二进制日志复制,以确保数据同步的一致性和准确性。根据您的描述,需要将这些参数配置在 MySQL 数据库的配置文件中,而不是 Flink CDC 的节点配置中。
通常情况下,这些参数应该在所有主从节点的 MySQL 配置文件中进行配置,以保持一致性。如果只在从节点或主节点配置,可能会导致数据同步的问题。
请注意,具体的配置方式可能因为不同的 MySQL 版本和拓扑结构而有所差异。建议参考 MySQL 官方文档或与数据库管理员进行进一步的沟通,确保正确配置了这些参数。
sink.partitioner这个参数需要在 Flink 任务的配置中指定。
Flink 的 sink.partitioner 参数是用来指定如何分区数据的,可以配置如下几种分区方式:
DefaultPartitioner: 默认分区方式,按轮询的方式分配
ForwardPartitioner:按数据的key值分区
BroadcastPartitioner:广播分区,将所有数据发送到所有的分区上
CustomPartitioner:自定义分区逻辑
对于 Flink CDC 来说,通常推荐使用sink.partitioner =ForwardPartitioner,这样可以根据表中主键等字段来做分区,让同一主键的数据落在同一个分区。
因此,这个参数需要配置在所有 TaskManager 上的 Flink 任务配置中,这样所有节点才能有一致的分区逻辑。
所以答案是: sink.partitioner这个参数需要在所有 Flink 任务节点的配置中都指定。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。