《徐榜江--基于 Flink CDC 打造海量数据实时集成方案.pdf》由会员分享,可在线阅读,更多相关《徐榜江--基于 Flink CDC 打造海量数据实时集成方案.pdf(46页珍藏版)》请在三个皮匠报告上搜索。
1、基于 Flink CDC 打造海量数据实时集成方案徐榜江(雪尽)阿里云 Flink 数据通道负责人Apache Flink Committer&PMC member徐榜江(雪尽)阿里云 Flink 数据通道负责人本硕毕业于北京理工大学,2016年校招毕业加入阿里云2016-2019年,网络实时监控研发,参与骨干网秒级监控,P1P2故障减半等重点项目2019-2022年,Flink SQL 引擎研发,Apache Flink Committer,Flink PMC member2022-至今,阿里云 Flink 数据通道负责人,Flink CDC 项目社区负责人 CONTENTS目录1.Flin
2、k CDC 简介2.为什么设计 YAML API3.YAML 核心设计及其应用4.开源社区与未来规划Flink CDC 简介CDC 技术数据备份、系统容灾一对多分发下游数据湖/数仓 ETL数据同步数据分发数据集成CDC(Change Data Capture)是用户捕获数据变更的技术,通常我们说的 CDC 技术主要面向数据库的变更,是用于捕获数据库中实时数据变更的技术。CDC 技术基于查询的 CDC 技术基于日志的 CDC 技术55 离线调度查询作业,批处理 无法保障数据一致性 不保障实时性 实时消费日志,流处理 保障数据一致性 提供实时数据传统 CDC 数据集成方案DataX/Sqoop全量
3、数据同步Debezium/Canal增量数据同步定期合并结果表增量表全量表基础设施数据一致性数据新鲜度技术栈DBCDC 数据集成的技术挑战分析4545历史数据规模大数据库的历史数据规模大,100T+规模也算常见增量数据实时性要求高数据库的增量数据业务价值高,且价值随时间递减,需要实时处理数据的保序性CDC 数据的加工结果通常需要强一致性语义,通常需要处理工具支持全局保序表结构动态变化增量数据随时间增长,数据对应的表结构会不断演进Flink CDC 技术Flink CDC 是基于数据库的日志的 CDC 技术,实现了全增量一体化读取的数据集成框架。配合 Flink 优秀的管道能力和丰富的上下游生态
4、,Flink CDC可以高效实现海量数据的实时集成。Flink CDC实时一致性快照全量数据增量数据Flink CDC 技术TiDBHologresClickHouseIcebergHudiTiDBApsaraDB MySQLSELECTWHEREJOINTop-NFlink SQL APIGROUP BYINSERTmapfilterjoinFlink DataStream APIkeyByflatMapSchema EvolutionSchema SyncSELECTFilterCDC YAML APIFull DB SyncUDFaggregate基于 Flink CDC 的数据集成方案
5、Canal/Debezium增量数据同步DataX/Sqoop全量数据同步实时一致性快照CDC SourceSinkCustom Logics定期合并结果表增量表全量表Unified SyncExactly-OnceLow LatencyOne Flink Job基于 Flink CDC 的数据集成方案优势4545分布式读取框架支持水平扩容,轻松处理海量数据无锁读取避免对线上数据库加锁,对业务无侵入全增量一体化全量和增量自动衔接,无需人工介入生态支持原生支持 Flink 现有生态,用户开发部署成本低为什么设计 YAML APIFlink CDC 1.x:Flink 的一组 CDC 连接器2)S
6、can Snapshot Data of table4)Append Changelog of tableJDBC connectionBinlog connectionDB1)Lock table for data consistency3)Release table lock after scanFlink CDC 1.x:简化 Flink ETL 作业Transform(T)Load(L)Extraction(E)FlinkFlinkDebeziumTiDBClickHouseIcebergHudiPaimonTiDBClickHouseIcebergHudiPaimonMySQL CD