什么是資料中臺?
資料中臺就是利用大資料技術對海量資料進行采集,計算,加工,存盤并形成統一的標準和口徑,
資料中臺有什么用?
在業務快速發展的今天,利用資料中臺技術可以快速組合式創新業務,
資料中臺怎么用?
像阿里已經成型的產品dataworks,我們的離線開發平臺,都包含了:1.資料開發 2.任務調度 3.資料質量 4.資料地圖 5.資料生命周期
資料是資料中臺的基礎,調度是資料中臺的靈魂!
怎樣讓資料中臺快速可靠的運行變得尤為重要!那么從哪些部分做出針對性優化以提高資料中臺的性能呢?本篇文章就我們的離線開發平臺來講述任務執行鏈路中的各個優化點!
任務執行鏈路:
任務調度發送到執行引擎-->執行引擎將任務發送到大資料集群-->資料質量任務發送到執行引擎-->執行引擎將資料質量任務發送到大資料集群-->實體任務和資料質量任務完成后插跑批控制表
首先說一下任務調度,目前調度采用多執行緒輪詢機制,這種方案簡單,代碼易開發,但是調度會有空檔期,會產生大量日志,且對資料庫的壓力比較大,時間復雜度為O(n),如果任務鏈路特別長,極端情況下,最下游任務任務空檔時間為:單輪輪訓時長*鏈路層數,針對這些痛點,觸發機制可以有效的解決這些問題,但是,采用觸發機制,難點在于需要我們對任務的所有觸發條件的場景都充分考慮在內,且代碼量會相應的增加,比如起批時間條件,可以采用redis的延遲佇列機制觸發,表級依賴,任務依賴可以采用kafka訊息佇列機制,消費端可以多節點,多執行緒消費,充分利用服務器資源,觸發機制幾乎就是實時的,時間復雜度為O(1),完美的解決這些痛點,
在一個就是大資料集群的算力,目前采用的Guass冷熱溫集群,算力方面還是可以的
最后就是插跑批控制表,目前采用quarz定時任務,這種方案還是有時間空檔期,可以采用kafka訊息佇列機制解決,
把這些點優化之后,做一個關于時間在各個階段等待時間的報表,針對報表結果再做相應的優化,
目前這些就是關于離線開發平臺的一些優化思路,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/277484.html
標籤:其他
上一篇:萌新篇 —從零開始搭建自己的大資料環境-----hive篇
下一篇:碼哥小趙上線了
