![file](https://img2023.cnblogs.com/other/2685289/202309/2685289-20230906105454530-376816477.jpg) > 導讀:國內某頭部理財服務提供商成立於 2019 年,是股份制銀行中首批獲准籌建、首家獲准開業、首家成 ...
導讀:國內某頭部理財服務提供商成立於 2019 年,是股份制銀行中首批獲准籌建、首家獲准開業、首家成立的銀行理財子公司。自 2004 年推出國內首支人民幣理財產品以來,通過投資模式的不斷創新和投資管理能力的持續提升,引領國內銀行業理財市場。該企業每天處理的任務量達 1W,內部系統眾多,當務之急是需要一個統一的調度和監控平臺,支持不同理財業務場景下的需求。
2023 年之前,該企業使用開源版本的大數據調度平臺 Apache DolphinScheduler 能基本上滿足業務需求,但隨著業務量增大和個性化需求的增長,在經過周密的調研之後,決定將所有調度任務遷移到商業版本白鯨調度系統之上。
採用白鯨調度系統讓該企業實現了統一調度和監控運維,調度性能大幅提高。本文將詳細描述白鯨調度系統為該企業提供的解決方案和相關應用實踐。
業務需求
國內某頭部理財服務提供商所處的金融行業屬於數據密集型行業,隨著這個行業的不斷發展和技術的不斷進步,金融數據的數據量不斷增加,數據來源也越來越多樣化,其需要對數據質量進行嚴格的把控,並需要具備高效的數據處理和分析能力。此外,金融市場變化快速,風險控制需要實時響應,這對其數據處理和分析能力提出了更高的要求。同時,保護客戶的隱私和機密信息,防範網路攻擊和數據泄露等安全問題,都對該企業提出重要的挑戰。
具體來說,該企業的產銷、投資、風險評估、運營投資等團隊都有自己的數據集市(數倉),每個團隊都從需要的貼源層獲取到自己需要的數據,經過各自團隊的ETL 流程,將統計數據輸出到各自的集市中,再把自己的集市數據分享給其他人。
由於每個團隊都有各自的調度平臺,這導致平臺的維護成本非常高,運維管理也很不方便,另一方面也不能集中統計和管理所有團隊的任務。
因此,統一調度系統的建設在該企業是當務之急。 在建設數據體系過程中,其需要基於信創環境下建設具有高性能、可靠性高、易擴展的調度系統,以滿足該企業在數據體系建設中各類數據處理任務的統一調度和監控需求,實現統一調度和監控運維,支持不同場景下實現各自個性化的需求,保障數據體系的基礎建設。
接到商業調度需求時,該企業當時的調度集群由 3 台 40C*256G 的機器組成,由兩台 API 、3 個 Master 、3 個 Worker組成,每天處理 1 萬量級的任務,將來可能到 3 萬+/天。
具體到業務線上,該企業對建設調度系統有著如下需求:
- 要支持各部門使用統一的調度系統,使用許可權將各部門的資源進行隔離,保證系統運轉的隔離性和安全性。
- 要有豐富的監控和統計功能,支持統一的數據監控、運維服務的需求;
- 調度系統要支持多種觸發類型,比如事件、自定義日曆、依賴調度等方式觸發作業,支持用戶靈活配置作業及組合工作流,實現在不同場景的調度需求;
- 需要能結合該企業自身需求,支持信創組件、擴展性的任務類型、數據源類型、告警組件及其他擴展需求;
- 支持分散式的架構及資源控制等方法,實現一個高可靠性,高處理性能的調度系統;
- 支持定製化需求,比如和該企業的自身用戶系統對接用戶及許可權數據,對接客戶的統一登錄平臺,以及其他數據處理平臺和告警平臺。
基於白鯨調度系統的一站式解決方案
白鯨調度系統國產信創化調度平臺,就是為了支持客戶在數據體系建設中不同場景的任務調度需求,針對企業級用戶對系統的穩定性、可靠性、合規性、高性能、支持信創環境等要求而開發出的商業化版本,定位於企業級統一調度平臺,為企業的批處理任務制定統一的開發規範、運維方法,對各系統的批量任務進行統一管理、調度和監控。
白鯨調度系統繼承了大數據調度平臺 Apache DolphinScheduler強大的功能與易用性,同時增加了多項企業級功能以滿足實際行業用戶需求,讓企業可以部署一套調度系統,減少維護成本,擁有強大的調度能力。
在明確需求後,白鯨開源自信白鯨調度系統能夠滿足客戶的全部需求,著手分步驟、分階段進行解決方案的實施部署。經過了一系列測試後,白鯨開源啟動了實施方案,並幫助客戶解決了部署前、部署中和部署後的一系列問題,為其交付了完整的解決方案。
整體技術方案
白鯨調度系統主要使用無中心架構的設計思想,通過註冊中心發現服務,服務之間可以互為備份,保證了系統的可靠性的同時,也可以做到水平擴展服務數量,能夠很好地支持企業千萬級別的任務數量,完全滿足金融業務場景數據處理量大的需求。
白鯨調度系統主要服務包括 UI 用戶界面、介面層 API 服務,MasterServer、WorkerServer、AlertServer 五個模塊,其中任務處理服務 MasterServer 和 WorkerServer 是典型的無中心架構,通過註冊中心自動發現服務的啟動和關閉,能有效支持任務數量激增和減少的場景,同時可以保證任務處理的可擴展性和高性能。
系統所有服務均採用分散式部署,支持高穩定性、高性能和高容錯性,保證提供可持續使用的服務,即使客戶的數據中心散步在全國各地,白鯨調度系統也能輕鬆應對來自客戶不同部門數據系統的處理需求。
針對客戶的需求,白鯨調度系統提供的解決方案讓每個團隊都擁有了自己的任務執行集群,調度系統是單獨的集群,免密登錄各自團隊的集群,各團隊都在調度上使用 shell 任務 的 ssh remote 'shell command' 來執行各自集群上的任務。
具體解決方案包括(由於保密需求,只透露部分信息):
多日曆管理方便多個市場交易日、工作日、自然日管理
針對企業設計多種日曆,支持調度日曆、業務數據日曆分開,並支持不同時區、日曆導入等功能:
- 支持多種日曆管理:交易日、工作日、自然日等
- 支持日曆 Excel 模板導入
- 支持調度日曆與業務日曆分開
- 支持多時區設置
- 支持日切時間設置
強大的業務數據日期功能更好滿足金融行業需求
針對客戶調度當中的業務數據日期單獨進行設計,更好地滿足金融行業需求:
- 多次調度使用同一業務數據日期(例,最後一個交易日,如果不翻牌,數據指針停止在這一天,例如 ,9.30 不跑 10.1 七天 10.6日開始跑,依然跑的是 9.30 日)
- 強大的業務翻牌任務
- 支持前後自定義翻牌
- 支持自定義腳本直接生成業務日期數值
- 支持定時翻牌和任務結束翻牌
- 配合日曆,支持多種複雜函數用於數據處理
- 前後 n 日、月(工作日、交易日、自然日)
- 當前牌所在月、年(工作日、交易日、自然日)
事件驅動滿足文件、Kafka、資料庫級別靈活觸發調度
除了日期時間觸發之外,增加事件觸發機制,滿足企業多系統之間交互的需要:
- 文件觸發
- 不同文件介面,根據滿足特殊定義文件自動觸發
- 可以設置掃描頻次與超時報警
- 資料庫觸發
- 滿足特殊數據定義之後,自動觸發任務
- Kafka 觸發
- 發現符合定義消息息自動觸發工作流
專業的許可權設置與 Token 管理滿足企業級別許可權需要
針對企業設置用戶、角色、許可權為不同部門提供不同功能許可權:
- 企業用戶管理
- 獨立企業用戶賬號,可以對接現有企業用戶
- 項目角色管理
- 管理員角色、不同項目開發人員角色功能分開
- 結合項目角色控制資源許可權
- Token 管理可以幫助企業設定 API 調用許可權
詳細的審計日誌滿足企業回溯用戶行為審計功能
- 審計日誌記錄用戶詳細操作對象以及時間:
- 審計日誌詳細記錄用戶的操作行為
- 可以設置日誌保留時間
- 支持Excel導出以及用戶操作查詢
高可擴展能力支持組件擴展
- 系統高可靠、易擴展
- 滿足定製化需求,比如打通用戶許可權系統、和其他業務系統對接,擴展新的任務組件、數據源組件、告警組件,並支持對接客戶自定義開發的血緣分析功能等。
支持信創環境
白鯨調度系統 在信創合規部署支持方面做到了完全的國產化:
支持國產伺服器,國產 CPU、記憶體、主板、硬碟等,如鯤鵬伺服器。
- 支持國產操作系統,如中標麒麟、銀河麒麟、紅旗 Linux。
- 支持國產資料庫,如 達夢資料庫、GaussDB、TiDB。
- 支持對系統部署所涉及到的伺服器、操作系統、中間件、資料庫進行信創化改造,滿足信創環境下系統遷移和原有任務調度的需求。
統一監控告警、運維
實現統一的監控和運維是客戶統一調度最重要的目標之一,白鯨調度系統 可以提供統一監控告警,統一監控指標,提供豐富的API介面,滿足用戶定製化監控需求;統一監控告警平臺、運維平臺,極大減少維護成本;多種監控指標,根據許可權智能統計指標,滿足不同角色的監控需求;統一告警服務,提供豐富的告警插件,支持多種告警方式同時發送;集中監控工作流、任務運行情況和批量操作,統一管理告警列表、事件列表等。
客戶收益
當前,該企業基於白鯨調度系統搭建了統一調度平臺,助力管理後臺實現了:
- 為客戶提供了統一調度平臺,提高了數據處理效率,支撐了客戶的技術部產銷、投資、風險評估、運營投資各個團隊的業務,後續將接入更多業務;
- 降低了運維難度,降低非技術人員門檻
- 提高交付效率
- 快速調度
- 靈活的數據分析
客戶簡介
國內某頭部理財服務提供商,為投資者提供了豐富的投資產品,為客戶創造了豐厚的投資回報。
本文由 白鯨開源 提供發佈支持!