问题一:Flink CDC是不是可以用外表或者其他工具先把全量灌进去?
Flink CDC是不是可以用外表或者其他工具先把全量灌进去?
参考回答:
是的,除了使用 Flink CDC 直接从源头读取全量数据外,也可以先使用其他工具将全量数据灌入数据库,然后再通过 Flink CDC 接收增量数据。
常见的工具包括 Apache Kafka、MySQL binlog、Apache NiFi 和 Apache Nifi Kafka Source 等。其中,Apache Kafka 和 MySQL binlog 可以实现实时增量数据的发送和接收,而 Apache NiFi 和 Apache Nifi Kafka Source 可以实现批量全量数据的传输。
如果您想使用其他工具将全量数据灌入数据库,建议您首先确定源数据表的格式和结构,然后选择合适的工具进行传输。例如,如果源数据表为 CSV 格式,可以考虑使用 Apache NiFi 或 Apache Nifi Kafka Source 进行传输。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/567033
问题二:有人用过flink-SQL-cdc吗?
有人用过flink-SQL-cdc吗?读取数据库的存量数据如:20亿的数据,存了个80G ,难道需要设置100G的内存将存量数据读取进来吗?是有什么配置可以一次不要读取那么多,少读一点。有大佬知道吗?你是说,存量数据使用高并发大内存,增量数据根据检查点重新配置并行度和内存在继续处理是吗?
参考回答:
用flinkcdc的断点续传可以实现吧,是这个意思,我记得并行度不能直接调吧在flinksql里面,调完checkpoint恢复不了,内存大小应该可以调.完全不用,最多是JM多点内存分片元数据,TM内存搞小点,慢慢来就行了,比如JM 8G,TM每个slot 8G,通常tm slot数和全量同步成正比,你搞成1个slot也行,就是慢点,搞成64个slot也行,那差不多有60倍吞吐
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/567032
问题三:Flink CDC进到这个里面然后怎么测呢?
Flink CDC进到这个里面然后怎么测呢?
参考回答:
写个sql表的ddl,然后select 一下看看有没有数据
那你用de的这个编码才对 decoderbufs
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/567029
问题四:flink1.18支持sql-gateway每次提交生成一个yarn application吗?
flink1.18支持sql-gateway每次提交生成一个yarn application吗?
参考回答:
Apache Flink 1.18 版本已经支持将每个 SQL 请求作为一个独立的 YARN Application 进行提交的功能,这就是所谓的 "YARN per Job" 模式。在这种模式下,每次 SQL 请求都会创建一个新的 YARN Application 来执行相应的任务。
要启用这种模式,您需要在 YARN 配置文件中设置以下选项:
yarn.application.classpath=${HADOOP_CONF_DIR},${HADOOP_COMMON_HOME}/share/hadoop/common/*, ${HADOOP_COMMON_HOME}/share/hadoop/common/lib/*, ${HADOOP_HDFS_HOME}/share/hadoop/hdfs/*, ${HADOOP_HDFS_HOME}/share/hadoop/hdfs/lib/*, ${HADOOP_YARN_HOME}/share/hadoop/yarn/*, ${HADOOP_YARN_HOME}/share/hadoop/yarn/lib/*
此外,您还需要在 Flink 配置文件中设置 execution.runtime-mode
参数为 cluster
,并将 yarn-session.target-application-num
设置为 1,以确保每次请求都启动一个新的 YARN Application。
注意,Flink SQL Gateway 本身并不直接支持这种模式,但它可以通过与 Flink 运行时之间的交互来实现这种功能。因此,在实际使用过程中,您需要确保 Flink SQL Gateway 和 Flink 运行时之间能够正常通信,并且它们都已正确配置为使用 "YARN per Job" 模式。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/566836
问题五:Flink CDC oracle 的 number 类型做主键,这个问题大家遇到没?
Flink CDC oracle 的 number 类型做主键,oracleCDC 可以捕获变更,但是不能解析主键值,导致后面输出源,不能更新,这个问题大家遇到没?
参考回答:
如果 Oracle CDC 可以捕获到 number 类型作为主键的变更事件,但是无法解析主键值,则可能是由于 Oracle 数据类型转换的原因。为了确保 Oracle CDC 正确解析 number 类型作为主键值,请确保如下事项:
- 验证源数据库中的 number 类型是否支持转换为 Bigint 类型。
- 确保您的 Oracle CDC 源连接器配置正确,以正确识别 number 类型作为主键。
- 如果有必要,可尝试更改您的业务逻辑以适应 Oracle CDC 的限制。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/567025