回顧大資料的發展歷程,一句話概括就是海量資料的高效處理,在當今快節奏、不斷變化的市場環境下,優秀的開發效率已經成為企業數字化轉型的必備條件,
數堆疊離線開發BatchWorks 是一款專注離線資料ELT開發的產品,采用先進的大資料生態底層技術,具備高性能且功能豐富的大資料處理能力,對大資料離線計算、資料倉庫建設提供有效支撐,是企業建設資料中臺、資料倉庫,加速數字化轉型的基礎設施,
BatchWorks 經過6年多的打磨已經服務于包括金融、教育、政企、零售等多個行業在內的300+客戶,在開發效率提升方面發揮了巨大的價值,本文將從多個專案實施程序中遇到的6個典型場景來介紹一下離線開發BatchWorks 在開發效率提升上的一些解決方案,與大家共同探討,
場景一:大批量資料快速遷移
問:客戶數倉計劃從 Oracle 遷移到 Hadoop,初始化需要完成幾萬張表的資料同步,如何快速進行大批量 hive 表的創建并做資料抽取?
答:BatchWorks 支持連接資料源進行關系型資料庫到包括 Hive 在內的多目標資料庫之間的整庫同步,可一次性完成大批量表的自動創建和同步任務的生成,支持按日期增量和全量兩種資料同步方式,考慮到同一時間點啟動大量資料同步任務會造成資料庫壓力過大,還可支持任務并發數的配置,

場景二:SQL 邏輯的復用和批量管理
問:一條業務線上有20+產品,每個產品的資料分析由一個 SQL 任務完成,所有產品的任務邏輯完全一致且需要保持變更同步,而實際業務在快速變化,資料開發每次調整業務邏輯都需要每個 SQL 任務分別手動變更,經常出現調整錯漏的情況,如何解決?
答:增加“組件”功能,用戶可把在大量任務中通用的業務 SQL 邏輯抽象出來作為組件進行維護,不同的產品只需參考組件并配置輸入輸出表和字符引數,即可快速完成任務配置,當業務變更時只要調整組件的邏輯就能實作所有參考此組件任務的同步變更,
一個簡單例子:業務方需要對不同產品的用戶群體做年齡分層,可創建組件做年齡篩選,配置以下輸入輸出引數:
? 輸入引數:資料來源表
? 輸出引數:年齡層中的最大最小值(字串)、資料輸出表

實作從產品1中篩選出年齡為20-30的用戶資料,在創建任務時選擇上述組件配置年齡輸入引數和資料來源表,并指定寫入的結果表:

場景三:計算結果跨任務復用
問:任務存在上下游依賴時,下游任務可能需要直接使用上游部分任務的計算結果,同時用戶不希望建太多臨時表,或產生一些額外的重復計算,如何解決?
答:BatchWorks 支持了任務上下游引數傳遞功能,上游任務的計算結果可進行周期性存盤,直接被下游計算參考,
一個簡單例子:從業務庫完成銷售明細表資料采集清洗,按天匯總后將銷售金額最高的門店資料輸出 sales_1d 任務,從 sales_details 中通過輸入引數獲取日期資料,然后將當天最高銷售資料對應的門店通過輸出引數輸出傳遞至下游的同步任務,同步任務篩選此門店資料同步至 oceanbase,


場景四:任務依賴自動決議
問:當任務較多且依賴關系復雜時,依賴關系的配置會占用一定的作業量,尤其在對任務做了修改后,依賴關系可能會有更新不及時/漏更新的情況,發現問題時往往已經到了下游環節,如何解決?
答:BatchWorks 支持了上游任務依賴自動決議推薦/自動依賴功能,選擇此功能進行依賴任務配置時,平臺將對當前任務進行 SQL 決議,得到來源表和結果表,并尋找來源表的產出任務,用戶可從這些推薦任務里選擇全部或部分任務添加到上游依賴,也可直接選擇自動依賴,當 SQL 調整時自動進行上游依賴的更新,

場景五:任務例外快速排查
問:離線實體的運行流程涉及實體上游依賴檢查、到達計劃時間檢查、資源檢查、質量校驗等多個環節,運行程序出現例外時僅通過日志難以直觀地進行問題溯源,問題處理不及時直接影響下游業務,如何解決?
答:BatchWorks 支持實體診斷功能對實體的運行程序進行分析,將實體調度流程及每個流程當前的狀態、節點時間全部展示,用戶可直觀地看到當前實體的運行階段和例外原因,
比如在進行上游依賴例外檢查時,BatchWorks 將構建以當前實體為末位節點的例外依賴樹,尋找直接導致其未運行的根源任務組,快速直達阻塞點,此外針對 SparkSQL,可監控其指標健康狀況并給出調參建議,針對 HiveSQL 可觀測運行程序中資源使用變化情況,從而可進一步進行任務調優,


場景六:以用戶組為單位的用戶管理
問:某公司的資料開發團隊不定期會有一些人員調整,因業務量大、開發專案比較多,人員調整后開發平臺上的維護十分繁瑣,例如有新員工入職,需要將其添加到相關的多個開發專案中并賦予不同的角色,任務告警值班時需要添加進對應的告警規則中等等,增加管理員的用戶管理成本且容易缺漏,如何解決?
答:BatchWorks 的用戶中心支持以用戶組為單位的用戶管理,每個用戶可被添加進一個或多個用戶組,專案添加用戶、告警圈選用戶時均可以用戶組的方式進行配置,后續增刪用戶時僅需在用戶中心的用戶組內進行操作,即可完成人員->專案/角色等的快速調整,

《資料治理行業實踐白皮書》下載地址:https://fs80.cn/380a4b
想了解或咨詢更多有關袋鼠云大資料產品、行業解決方案、客戶案例的朋友,瀏覽袋鼠云官網:https://www.dtstack.com/?src=https://www.cnblogs.com/DTinsight/p/szbky
同時,歡迎對大資料開源專案有興趣的同學加入「袋鼠云開源框架釘釘技術qun」,交流最新開源技術資訊,qun號碼:30537511,專案地址:https://github.com/DTStack
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/549824.html
標籤:大數據
