字節跳動數據集成引擎BitSail開源架構演進和實踐.pdf

編號:147831 PDF 32頁 3.96MB 下載積分:VIP專享
下載報告請您先登錄!

字節跳動數據集成引擎BitSail開源架構演進和實踐.pdf

1、DataFunSummit#2023字節跳動數據集成引擎BitSail開源架構演進和實踐李暢 字節跳動大數據工程師l 16年加入字節跳動開發套件團隊,從0到1設計、研發了面向字節各業務線的數據集成服務l 專注大規模數據的分布式計算和傳輸領域,提供高效、可靠的數據集成解決方案l 開源社區愛好者,BitSail開源項目負責人之一個人簡介01BitSail 背景介紹02BitSail 新功能介紹03BitSail CDC解決方案04未來展望目錄CONTENT未來展望DataFunSummit#202301BitSail 背景介紹在數據建設過程中,通常需要把數據從A系統導入到B系統數據集成是數據建設的

2、基礎,主要解決異構數據源間數據傳輸、加工和處理BitSail 背景介紹BitSail,又可稱為“比特航行”BitSail 是字節跳動開源的分布式、高性能數據集成引擎,支持多種異構數據源間的數據同步,并提供離線、實時、增量場景下全域數據集成解決方案BitSail 目前已被廣泛使用,并服務于字節內部幾乎所有業務線,包括抖音、今日頭條等,每天同步數百萬億條數據,同時在火山引擎云原生環境、本地私有云環境等多種場景下得到驗證BitSail 背景介紹20182019202020212022-now無統一框架M*N,每個通道各自實現如MR/Spark等等覆蓋流式場景覆蓋流式場景,完成流、批架構統一通用能力輸

3、出BitSail 開源云原生引擎覆蓋CDC場景,湖倉一體基于Flink+Hudi實現數據準實時入湖統一架構,覆蓋批式場景基于Flink引擎,完成批式場景統一BitSail 演進歷程DataFunSummit#202302BitSail 新功能介紹架構Connector層、框架層、引擎層每一層都采取可插拔的設計,靈活性較好框架層豐富基礎能力,比如數據源類型轉換、臟數據處理、流控、自動并發度推斷、運行監控等場景覆蓋離線、實時、增量數據同步場景BitSail 數據同步架構RootConnectorEngine AdapterComponentsBitSail 數據同步架構 代碼結構問題Flink 深

4、度綁定,依賴較重,場景受限制Flink 定位通用計算引擎,數據集成場景存在資源浪費解決思路引擎基于可插拔設計,支持輕量化的分布式計算引擎Connector 提供引擎無關的讀寫接口框架層與引擎解耦多引擎架構Source API數據讀取組件的生命周期管理類,主要負責和框架的交互,它不參與作業真正的執行 Split數據分片,大數據處理框架的核心目的就是將大規模的數據拆分成為多個合理的Split Split Coordinator創建、管理Split,并將Split分發給Source Reader Source Reader真正負責數據讀取的組件,在接收到Split后會對其進行數據讀取,然后將數據傳輸

5、給下一個算子多引擎架構 Source APISink API數據寫入組件生命周期的管理類,主要負責和框架進行交互,它不參與作業真正的執行 Writer主要負責將接收到的數據寫到外部存儲 Writer Committer(可選)用于對數據進行提交操作,基于兩階段提交,實現Exactly-Once的語義多引擎架構 Sink API DelegateXXX 基于引擎接口實現 DelegateXXX 實現Source/Sink API 接口和引擎接口轉換多引擎架構 API 接口轉換BitSail EtLT架構 Source、Sink間引入Transform模塊 流批一體,支持輕量級數據處理EtLT架構

6、數據處理架構 ETL-ELT-EtLT 現代數據棧、實時性背景Fat 包缺點,產物包太大,并且包沖突較為嚴重Connector 獨立打包,并支持運行時動態加載問題Connector 動態加載時,存在潛在的包沖突問題解決思路構建 Connector 自由組合自動化測試引擎打通 CICD 流程,避免 Connector 包沖突問題自動化測試引擎基本原理單數據源測試用例構建M*N 自由組合測試任務生成分布式調度和執行結果通知多引擎架構測試用例與引擎無關測試任務可復用到不同引擎流批一體框架兼容離線以及實時場景自動化測試引擎DataFunSummit#202303BitSail CDC解決方案CDC(C

7、hange data capture):通過捕獲數據變更日志(Binlog)的方式,將更新數據同步到外部數據源相比于批式變更同步,CDC 變更同步有著延遲更低,對線上數據影響更小的優點CDC 背景介紹離線數據分析:離線數倉建設,離線報表MySQL-Hive/ClickHouse準實時數據分析:實時看板建設,實時數據分析MySQL-Doris/StarRocks搜索數據分析:在線搜索MySQL-ElasticSearchCDC 同步使用場景痛點延遲高:MySQL 數據 T+1 導入 Hive,實時性較差運維成本高:需要維護多張表與表之間的映射關系和多個同步任務分庫分表場景:分庫分表只能分別入倉,

8、入倉后再進行合并一致性問題:同步鏈路長,亂序導致數據不一致問題離線整庫同步解決方案CDC 整庫同步解決方案離線整庫同步-延遲高MySQL 數據 T+1 導入 Hive,實時性較差CDC 整庫同步全量數據批式導入增量數據實時消費 Binlog 寫入,根據場景需求調整寫入延遲以 Doris/StarRocks 為例延遲可以做到秒級CDC 整庫同步解決方案離線整庫同步-運維成本高需要維護多張表之間的映射關系和多個同步任務CDC 整庫同步自動建表:自動根據上游表的字段創建下游表全量任務:自動調度單次全量批任務,其中每個批任務實現單表同步增量任務:一個任務寫入到多張下游表中CDC 整庫同步解決方案離線整

9、庫同步-分庫分表分庫分表只能分別入倉,入倉后再進行合并CDC 整庫同步全量任務:單個任務讀取多個數據源,寫入到單張下游表中增量任務:增量任務直連多個數據源拉取Binlog,寫入到單張下游表中CDC 整庫同步解決方案離線整庫同步-一致性問題同步鏈路長,亂序導致數據不一致CDC 整庫同步基于嚴格有序的字段,保證新數據不被舊數據覆蓋Binlog 原生字段,例如 Binlog Position業務自定義排序字段,例如 Hudi 的 precombine 字段,Doris 的 sequence字段CDC 整庫同步解決方案CDC 整庫同步解決方案 運行流程CDC 整庫同步解決方案 運行頁面DataFunSummit#202304未來展望基礎能力建設 Connector生態建設,提供更多的讀寫數據源 多引擎架構,提供更輕量的分布式計算引擎CDC 同步能力增強自動 DDL 同步,支持自動 Create Table 和 Add ColumnCDC 生態建設,支持更多的上下游數據源,復用 CDC 框架能力端到端數據一致性校驗能力構建未來展望BitSail技術交流群最新進展社區活動干貨分享BitSail代碼倉庫https:/

友情提示

1、下載報告失敗解決辦法
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站報告下載后的文檔和圖紙-無水印,預覽文檔經過壓縮,下載后原文更清晰。

本文(字節跳動數據集成引擎BitSail開源架構演進和實踐.pdf)為本站 (2200) 主動上傳,三個皮匠報告文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知三個皮匠報告文庫(點擊聯系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。
客服
商務合作
小程序
服務號
折疊
午夜网日韩中文字幕,日韩Av中文字幕久久,亚洲中文字幕在线一区二区,最新中文字幕在线视频网站