深度解析GaussDB(DWS)+Flink如何增強湖倉增量數據在不同數據模型層之間的實時流動能力,如何為消息數據流提供高性能通用入庫能力,又如何構建極致的端到端實時數倉解決方案。 ...
本文分享自華為雲社區《GaussDB(DWS)基於Flink的實時數倉構建》,作者:胡辣湯。
大數據時代,廠商對實時數據分析的訴求越來越強烈,數據分析時效從T+1時效趨向於T+0時效,為了給客戶提供極速分析查詢能力,華為雲數倉GaussDB(DWS)基於流處理框架Flink實現了實時數倉構建。在本期《GaussDB(DWS)基於Flink的實時數倉構建》的主題直播中,華為雲數倉GaussDB(DWS)解決方案專家Eric老師,為您深度解析GaussDB(DWS)+Flink如何增強湖倉增量數據在不同數據模型層之間的實時流動能力,如何為消息數據流提供高性能通用入庫能力,又如何構建極致的端到端實時數倉解決方案。
1、增量計算的背景
隨著數智化時代的到來,數據量不斷增長,為了充分挖掘數據價值,實時獲取數據動態,GaussDB(DWS)通過與流引擎Flink結合,優化ETL Pipeline,從而數據分析時效實現T+0。
Flink是一款開源的流處理框架,它能夠實時處理大規模數據流,並具有高可靠性和高性能的特點。Flink支持流式數據處理、批處理和圖形處理等多種計算模式,並提供了豐富的API和工具,可以方便地進行數據處理和分析。GaussDB(DWS)與Flink結合構建下一代Stream Warehouse,實現增量計算,可以為用戶提供更加全面、高效的數據處理和分析能力。
為什麼需要增量計算能力?增量計算能力解決了哪些場景的痛點問題?
- 高性能場景
一些需要高性能的典型場景如下:
(1)增量數據的實時ETL並更新物化視圖,秒級更新;
(2)數據在倉湖之間實時流動能力;
(3)實時流數據不落盤,直達實時大屏。
- 數據入庫場景
Kafka的數據直接入湖
2、GaussDB(DWS)+Flink實現增量計算的架構設計
GaussDB(DWS)與流引擎結合,實現企業數倉模型的分層、增量化加工,統一批流處理邏輯,一站式支持批、流、互動式、點查等多種場景,簡化數據生產線架構複雜度,構建新一代實時增量數倉,滿足企業日趨便捷化的數據生產線場景。
三大實時能力 |
GaussDB(DWS) |
Flink |
實時入出倉 |
提升入庫性能,支持Binlog表CDC功能,實現 “流表一體” |
GaussDB(DWS)對接Flink元數據,GaussDB(DWS)可以作為Flink的源表、結果表 |
實時增量加工 |
支持基於數據流表達的增量加工 |
複雜SQL下推GaussDB(DWS),流表關聯,多流關聯等 |
實時查詢 |
支持數據高效點查 |
GaussDB(DWS)對接Flink元數據,GaussDB(DWS)可以作為Flink的維表,支持維表點查 |
如下圖,增量數據可以被流引擎實時地感知捕獲到,並運行預置的增量計算任務,然後再寫回到數倉的下一層模型裡面。通過幾次流引擎的迭代,使得貼源層的增量數據能迅速的反映到明細層以及最終的集市層,來支撐實時的BI報表分析、互動式分析等業務場景。
3、 GaussDB(DWS)+Flink增量計算能力圖介紹
GaussDB(DWS)結合Flink的能力構建,涵蓋以下四大功能:
Catalog
打通Flink元數據與湖倉元數據。
Source
倉內表通過Binlog將增量數據暴露出來讓Flink及時感知,從而驅動實時增量數據運算任務的開始。Source connector運算元,可以將一些條件下推至倉中完成點查任務。
Sink
Sink connector運算元可以將job中的數據寫回數倉中。
流維
流維運算元提供了流數據關聯維表的能力。
GaussDB(DWS)結合Flink的非功能性構建:
- CKPT建設
每個運算元implements flink的指定介面,將計算中間結果持久化下去,並做到功能冪等,即可接入flink災難恢復處理能力,做到job的端到端數據exactly once。
4、 生態工具streamer介紹
為了便於用戶一鍵操作數據入庫,GaussDB(DWS)研發了streamer生態工具,用戶不再需要自己寫SQL,只需要在IDE中進行操作。
操作步驟如下:
第一步:配置kafka及數倉表。
第二步:創建POJO類分別對應kafka消息體及數倉表行數據。
第三步:編寫自定義運算元,實現自定義Mapping功能。系統提供預設1對1 Mapping運算元,可直接使用。
本期分享到此結束,更多關於GaussDB(DWS)產品技術解析、數倉產品新特性的介紹,請關註GaussDB(DWS)開發者平臺,GaussDB(DWS)開發者平臺為開發者們提供最新、最全的信息咨詢,包括精品技術文章、最佳實踐、直播集錦、熱門活動、海量案例、智能機器人。讓您學+練+玩一站式體驗GaussDB(DWS)。
GaussDB(DWS)開發者平臺鏈接:https://bbs.huaweicloud.com/contents/dws/learning.html