《基于 Flink CDC 打造 企業級實時數據集成方案.pdf》由會員分享,可在線閱讀,更多相關《基于 Flink CDC 打造 企業級實時數據集成方案.pdf(26頁珍藏版)》請在三個皮匠報告上搜索。
1、 Flink CDC Flink Flink CDC Flink PMC Member&CommitterContents01CDC 02Flink CDC 03 Flink CDC CDC 01數據備份、系統容災一對多分發下游數據湖/數倉 ETLCDC 技術CDC(Change Data Capture)是用戶捕獲數據變更的技術,通常我們說的 CDC 技術主要面向數據庫的變更,是用于捕獲數據庫中數據變更的技術?;诓樵兊?CDC 技術基于日志的 CDC 技術CDC 實現機制!離線調度查詢作業,批處理無法保障數據一致性不保障實時性實時消費日志,流處理保障數據一致性提供實時數據CDC 數據集成趨
2、勢DataX/Sqoop全量同步增量表全量表Canal/Debezium增量同步結果表全增量一體化同步結果表Flink CDC/InLong!歷史數據規模大數據庫的歷史數據規模大,100T+規模也算常見增量數據實時性要求高數據庫的增量數據業務價值高,且價值隨時間遞減,需要實時處理數據的保序性CDC 數據的加工結果通常需要強一致性語義,通常需要處理工具支持全局保序表結構動態變化增量數據隨時間增長,數據對應的表結構會不斷演進CDC 數據集成的技術挑戰CDC 數據集成常見開源技術方案Flink CDCDebeziumCanalSqoopKettleCDC 機制日志日志日志查詢查詢增量同步斷點續傳全量
3、同步全增量一體化架構分布式單機單機分布式分布式轉換生態Flink CDC 02Flink CDCFlink CDC 是基于數據庫的日志的 CDC 技術,實現了全增量一體化讀取的數據集成框架。配合 Flink 優秀的管道能力和豐富的上下游生態,Flink CDC可以高效實現海量數據的實時集成。#$%&()*)實時一致性快照全量數據增量數據Flink CDC 核心設計:增量快照框架chunk1chunk2chunk3chunk1chunk2chunk3chunk1chunk2chunk3無鎖一致性切換Task1Task2Task3Task3Task1Task2全量階段增量階段全增量自動切換資源自動
4、釋放并行讀取ApsaraDB MySQL更多數據源接入中Flink CDC 核心設計:原生對接 Flink 生態SELECTWHEREJOINTop-NSQL APIGROUP BYINSERTmapfilteraggregatejoinDataStream APIkeyByflatMapTiDBHologresClickHouseIcebergpaimonTiDBApsaraDB MySQL!Flink CDC 技術優勢并行讀取支持分布式讀取,框架支持水平擴容無鎖讀取避免對線上數據庫加鎖,對業務無侵入全增量一體化全量和增量自動銜接,無需人工介入生態支持原生支持 Flink 現有生態,用戶開發
5、部署成本低Flink CDC 開源社區Contributor100+Fork1500+Star4500+第一個 Commit Kick Off發布 1.5 版本,支持MySQL、Postgres發布 2.0 版本MySQL CDC 增量快照算法發布 2.4 版本數據源持續擴展,增量快照覆蓋主流連接器發布 2.3 版本提供增量快照框架2023.062022.112021.082020.072021.05*GitHub Flink CDC 03主要業務場景:CDC 數據實時入湖入倉HologresPaimon表結構變更自動同步動態加表表結構自動發現整庫同步HologresPaimon阿里云基于 F
6、link CDC 的入湖入倉方案實時計算 Flink 版HologresExtract&LoadWarehouseSourceTransformAnalysis&Output+,-.(#$%&(/+,-.(#$%&(/報表分析 實時大屏 數據應用ApsaraDB MySQLIceberg#$%&ApplicationQuick BI*0102345678(090(/678(090(/paimon阿里云基于 Flink CDC 的入湖入倉方案#$%&!#$%#&$%$($)#&*+&,-%.*)%)&/012345367&$)&$%$($)#&2879:5;/?*,&$&%$(#)AMySQ
7、L 的 tpc_ds 庫同步至 Paimon 的 ods 庫!#$%#&%$(#&*+&,-%.*)%)&/0123453675B7CD7&$)&%$(#&2879:5EB7CD=6FGHIJKLE5EB7CDGHIJKLEAMySQL 的 user 分庫分表合并至 Paimon 的 ods 庫的 users 表中 CDAS整庫同步CTAS表級同步阿里云實時計算 Flink 版實時計算 Flink 版:一行 SQL,一個 Job+,-.(#$%&(/實時計算 Flink 版:一行 SQL,一個 Job阿里云基于 Flink CDC 的實時數據集成方案實時計算 Flink 版:全增量一體化同
8、步阿里云基于 Flink CDC 的實時數據集成方案CREATE TABLE AS!#$%&!()CDCDDLFlink Streaming JobMySQLpaimonCDC:snapshot+log實時計算 Flink 版:表結構變更自動同步阿里云基于 Flink CDC 的實時數據集成方案CREATE TABLE AS!#$%&!()CDCDDLCDCDDLFlink Streaming JobMySQLpaimon實時計算 Flink 版:整庫同步阿里云基于 Flink CDC 的實時數據集成方案!#$%&!()CDCDDLCDCDDLFlink Streaming Job!()!()paimonCREATE DATABASE AS實時計算 Flink 版:同步作業動態加表阿里云基于 Flink CDC 的實時數據集成方案CREATE DATABASE AS!#$%&!()CDCDDLCDCDDLFlink Streaming Job!()!()paimon!()video:阿里云基于 Flink CDC 的實時數據集成方案DemoTHANKS