數據開發提效有秘訣!離線開發BatchWorks 六大典型場景拆解

来源:https://www.cnblogs.com/DTinsight/archive/2023/04/12/17308958.html
-Advertisement-
Play Games

回顧大數據的發展歷程,一句話概括就是海量數據的高效處理。在當今快節奏、不斷變化的市場環境下,優秀的開發效率已經成為企業數字化轉型的必備條件。 數棧離線開發BatchWorks 是一款專註離線數據ELT開發的產品,採用先進的大數據生態底層技術,具備高性能且功能豐富的大數據處理能力,對大數據離線計算、數 ...


回顧大數據的發展歷程,一句話概括就是海量數據的高效處理。在當今快節奏、不斷變化的市場環境下,優秀的開發效率已經成為企業數字化轉型的必備條件。

數棧離線開發BatchWorks 是一款專註離線數據ELT開發的產品,採用先進的大數據生態底層技術,具備高性能且功能豐富的大數據處理能力,對大數據離線計算、數據倉庫建設提供有效支撐,是企業建設數據中台、數據倉庫,加速數字化轉型的基礎設施。

BatchWorks 經過6年多的打磨已經服務於包括金融、教育、政企、零售等多個行業在內的300+客戶,在開發效率提升方面發揮了巨大的價值。本文將從多個項目實施過程中遇到的6個典型場景來介紹一下離線開發BatchWorks 在開發效率提升上的一些解決方案,與大家共同探討。

場景一:大批量數據快速遷移

問:客戶數倉計劃從 Oracle 遷移到 Hadoop,初始化需要完成幾萬張表的數據同步,如何快速進行大批量 hive 表的創建並做數據抽取?

答:BatchWorks 支持連接數據源進行關係型資料庫到包括 Hive 在內的多目標資料庫之間的整庫同步,可一次性完成大批量表的自動創建和同步任務的生成,支持按日期增量和全量兩種數據同步方式。考慮到同一時間點啟動大量數據同步任務會造成資料庫壓力過大,還可支持任務併發數的配置。

file

場景二:SQL 邏輯的復用和批量管理

問:一條業務線上有20+產品,每個產品的數據分析由一個 SQL 任務完成,所有產品的任務邏輯完全一致且需要保持變更同步,而實際業務在快速變化,數據開發每次調整業務邏輯都需要每個 SQL 任務分別手動變更,經常出現調整錯漏的情況,如何解決?

答:增加“組件”功能,用戶可把在大量任務中通用的業務 SQL 邏輯抽象出來作為組件進行維護,不同的產品只需引用組件並配置輸入輸出表和字元參數,即可快速完成任務配置。當業務變更時只要調整組件的邏輯就能實現所有引用此組件任務的同步變更

一個簡單例子:業務方需要對不同產品的用戶群體做年齡分層,可創建組件做年齡篩選,配置以下輸入輸出參數:

• 輸入參數:數據來源表

• 輸出參數:年齡層中的最大最小值(字元串)、數據輸出表

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

file

場景三:計算結果跨任務復用

問:任務存在上下游依賴時,下游任務可能需要直接使用上游部分任務的計算結果,同時用戶不希望建太多臨時表,或產生一些額外的重覆計算,如何解決?

答:BatchWorks 支持了任務上下游參數傳遞功能,上游任務的計算結果可進行周期性存儲,直接被下游計算引用。

一個簡單例子:從業務庫完成銷售明細表數據採集清洗,按天彙總後將銷售金額最高的門店數據輸出 sales_1d 任務,從 sales_details 中通過輸入參數獲取日期數據,然後將當天最高銷售數據對應的門店通過輸出參數輸出傳遞至下游的同步任務,同步任務篩選此門店數據同步至 oceanbase。

file
file

場景四:任務依賴自動解析

問:當任務較多且依賴關係複雜時,依賴關係的配置會占用一定的工作量,尤其在對任務做了修改後,依賴關係可能會有更新不及時/漏更新的情況,發現問題時往往已經到了下游環節,如何解決?

答:BatchWorks 支持了上游任務依賴自動解析推薦/自動依賴功能,選擇此功能進行依賴任務配置時,平臺將對當前任務進行 SQL 解析,得到來源表和結果表,並尋找來源表的產出任務,用戶可從這些推薦任務里選擇全部或部分任務添加到上游依賴,也可直接選擇自動依賴,當 SQL 調整時自動進行上游依賴的更新。

file

場景五:任務異常快速排查

問:離線實例的運行流程涉及實例上游依賴檢查、到達計劃時間檢查、資源檢查、質量校驗等多個環節,運行過程出現異常時僅通過日誌難以直觀地進行問題溯源,問題處理不及時直接影響下游業務,如何解決?

答:BatchWorks 支持實例診斷功能對實例的運行過程進行分析,將實例調度流程及每個流程當前的狀態、節點時間全部展示,用戶可直觀地看到當前實例的運行階段和異常原因。

比如在進行上游依賴異常檢查時,BatchWorks 將構建以當前實例為末位節點的異常依賴樹,尋找直接導致其未運行的根源任務組,快速直達阻塞點。此外針對 SparkSQL,可監控其指標健康狀況並給出調參建議,針對 HiveSQL 可觀測運行過程中資源使用變化情況,從而可進一步進行任務調優。

file
file

場景六:以用戶組為單位的用戶管理

問:某公司的數據開發團隊不定期會有一些人員調整,因業務量大、開發項目比較多,人員調整後開發平臺上的維護十分繁瑣。例如有新員工入職,需要將其添加到相關的多個開發項目中並賦予不同的角色,任務告警值班時需要添加進對應的告警規則中等等,增加管理員的用戶管理成本且容易缺漏,如何解決?

答:BatchWorks 的用戶中心支持以用戶組為單位的用戶管理,每個用戶可被添加進一個或多個用戶組。項目添加用戶、告警圈選用戶時均可以用戶組的方式進行配置。後續增刪用戶時僅需在用戶中心的用戶組內進行操作,即可完成人員->項目/角色等的快速調整。

file

《數據治理行業實踐白皮書》下載地址:https://fs80.cn/380a4b

想瞭解或咨詢更多有關袋鼠雲大數據產品、行業解決方案、客戶案例的朋友,瀏覽袋鼠雲官網:https://www.dtstack.com/?src=szbky

同時,歡迎對大數據開源項目有興趣的同學加入「袋鼠雲開源框架釘釘技術qun」,交流最新開源技術信息,qun號碼:30537511,項目地址:https://github.com/DTStack


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • DROP TABLE IF EXISTS qrtz_blob_triggers; DROP TABLE IF EXISTS qrtz_calendars; DROP TABLE IF EXISTS qrtz_cron_triggers; DROP TABLE IF EXISTS qrtz_fired ...
  • 鎖屏面試題百日百刷,每個工作日堅持更新面試題。請看到最後就能獲取你想要的,接下來的是今日的面試題: 1.解釋一下,在數據製作過程中,你如何能從Kafka得到準確的信息? 在數據中,為了精確地獲得Kafka的消息,你必須遵循兩件事: 在數據消耗期間避免重覆,在數據生產過程中避免重覆。 這裡有兩種方法, ...
  • 1. 背景 已知數據集為: 目的: 計算每個uid的連續活躍天數,並且每一段活躍期內的開始時間和結束時間 2. 步驟 第一步:處理數據集 處理數據集,使其滿足每個uid每個日期只有一條數據。 第二步:以uid為主鍵,按照日期進行排序,計算row_number. SELECT uid ,`徵信查詢日期 ...
  • 一、概述 XGBoost是一種基於決策樹的集成學習演算法,它在處理結構化數據方面表現優異。相比其他演算法,XGBoost能夠處理大量特征和樣本,並且支持通過正則化控制模型的複雜度。XGBoost也可以自動進行特征選擇並對缺失值進行處理。 二、代碼實現步驟 1、導入相關庫 import org.apach ...
  • 一、貝葉斯定理 貝葉斯定理是關於隨機事件A和B的條件概率,生活中,我們可能很容易知道P(A|B),但是我需要求解P(B|A),學習了貝葉斯定理,就可以解決這類問題,計算公式如下: P(A)是A的先驗概率 P(B)是B的先驗概率 P(A|B)是A的後驗概率(已經知道B發生過了) P(B|A)是B的後驗 ...
  • 數據開發基本都是從陌生到熟悉,但是寫多了就會發現各種好用的工具/函數,也會發現各種坑,本文分享了作者從拿到數據到數據開發到數據監控的一些實操經驗。 ...
  • 摘要:對於資料庫來說,性能一直被視為最關鍵的部分。GaussDB作為華為自主創新研發的分散式關係型資料庫,那麼華為雲資料庫GaussDB在提升資料庫性能方面都有哪些黑科技呢? 本文分享自華為雲社區《【雲圖說】第275期 雲資料庫GaussDB如何做到卓越性能》,作者:閱識風雲。 對於資料庫來說,性能 ...
  • ☞ 商品介面的定義 價格、庫存量、發貨地點等。此外,它還可以提供商品的詳細信息,包括商品的圖片、詳細描述、規格參數、售後服務等。這些信息可以幫助用戶更好地瞭解商品,從而更好地選擇商品。 其次,電商平臺商品詳情介面的實現原理是基於RESTful API。RESTful API是一種基於HTTP協議的A ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...