问题一:Flink cdc在全量阶段所需的TaskManager在增量阶段会释放吗 还是一直占用啊?
Flink cdc在全量阶段所需的TaskManager在增量阶段会释放吗 还是一直占用啊?增量阶段应该只需要一个并行度读取binlog数据就行了吧?
参考答案:
需要开启自动释放哈,最好是flink>=1.15版本。
关于本问题的更多回答可点击进行查看:
https://developer.aliyun.com/ask/599256
问题二:Flink cdc同步mysql多张表,初始化过程中,内存是如何释放的?
Flink cdc同步mysql多张表,初始化过程中,内存是如何释放的?用增量快照算法,指定的拆分主键,状态后端默认的,TM内存。存储在hashMap。
参考答案:
生产一般都不会用hashmap作为状态后端,都是rocksdb为主。不管是不是初始化,flink任务生产主要还是rocksdb作为状态后端。
关于本问题的更多回答可点击进行查看:
https://developer.aliyun.com/ask/599255
问题三:Flink CDC里你们有调试过全量快照读取+增量binlog的时候吗?
com.ververica.cdc.connectors.mysql.debezium.task.MySqlBinlogSplitReadTask#handleEvent。Flink CDC里你们有调试过全量快照读取+增量binlog的时候吗?在获取低水位到高水位的binlog时 获取到一两条binlog就finish了高水位的offset里取自SHOW MASTER STATUS命令 serverId也获取不到啊 ?
参考答案:
'感觉这里是个bug,不知道和mysql版本有没有关系。show master status的结果里没有server_id。可以在currentBinlogOffset的方法里把serverid查出来放进去。或者参考
关于本问题的更多回答可点击进行查看:
https://developer.aliyun.com/ask/599254
问题四:hudi connector用flink cdc的pipeline配置文件方式提交的话,要怎么改造?
hudi connector用flink cdc的pipeline配置文件方式提交的话,需要怎么改造?
参考答案:
要使用Flink CDC的pipeline配置文件方式提交Hudi连接器,你需要进行以下步骤:
- 定义Hudi Sink: 在Flink的
conf/flink-conf.yaml
文件中,添加Hudi的配置信息。这包括指定Hudi的存储类型(例如,COW或MOR),表名,以及其他相关配置。 - 创建源表和目标表: 使用Flink SQL DDL语句创建源表(从MySQL CDC捕获变更)和目标表(将变更写入到Hudi)。
- 编写SQL查询: 使用Flink SQL编写一个查询,该查询将从源表中读取变更,并将结果插入到目标表中。
- 创建pipeline配置文件: 创建一个Flink pipeline配置文件,该文件包含上述SQL查询以及所需的连接器配置。
- 提交作业: 使用Flink的客户端工具提交作业,指定pipeline配置文件作为参数。
请注意,虽然Flink CDC提供了对Hudi的支持,但是目前还没有直接继承Sink接口的Hudi连接器,因此可能需要自定义一个继承Sink接口的适配器类来实现适配。具体步骤可以参考Flink CDC的文档和示例代码。
关于本问题的更多回答可点击进行查看:
https://developer.aliyun.com/ask/599252
问题五:Flink CDC里整库同步支持字段映射吗?
Flink CDC里整库同步支持字段映射吗?类型是一方面,字段位置,个数的映射这方面的。
参考答案:
不能完全支持字段类型,有的是兼容性处理。字段位置不能动态调整,新增字段放在最后一位。
关于本问题的更多回答可点击进行查看: