翼支付云原生數(shù)據(jù)開(kāi)發(fā)與治理平臺(tái)實(shí)踐
本次分享分為四大部分,第一部分總體介紹翼支付公司概況和業(yè)務(wù),在數(shù)據(jù)治理過(guò)程面臨的場(chǎng)景、目標(biāo)、挑戰(zhàn);第二部分介紹數(shù)據(jù)開(kāi)發(fā)與治理平臺(tái),其中涉及到的任務(wù)開(kāi)發(fā)與雙環(huán)境部署運(yùn)行;第三部分介紹數(shù)據(jù)平臺(tái)的架構(gòu),分享在系統(tǒng)架構(gòu)、調(diào)度引擎選型、數(shù)據(jù)總線、質(zhì)量監(jiān)控與資源隔離、計(jì)算優(yōu)化等實(shí)踐經(jīng)驗(yàn);第四部分與大家共同探討未來(lái)面臨的問(wèn)題和可以優(yōu)化的方面,展望更優(yōu)的平臺(tái)目標(biāo)。
一、翼支付公司與業(yè)務(wù)介紹
?天翼電子商務(wù)有限公司(以下簡(jiǎn)稱“翼支付”)是中國(guó)電信集團(tuán)有限公司的成員企業(yè),是國(guó)資委雙百改革和發(fā)改委第四批混改“雙試點(diǎn)”企業(yè),也是“雙試點(diǎn)”企業(yè)中唯一的金融科技公司。公司以翼支付 APP 為載體,面向 7000 萬(wàn)月活用戶,提供民生繳費(fèi)、消費(fèi)購(gòu)物、金融理財(cái)?shù)确?wù)內(nèi)容,依托區(qū)塊鏈、云計(jì)算、大數(shù)據(jù)、人工智能等技術(shù),賦能超 1000 萬(wàn)家線下商戶門(mén)店及 170 余家線上知名電商。秉持“響應(yīng)監(jiān)管、服務(wù)民生、資源共享、合作多贏”的理念,聚焦“開(kāi)放、安全、便捷”的核心產(chǎn)品力,翼支付堅(jiān)持通過(guò)服務(wù)投入與產(chǎn)品升級(jí),構(gòu)建貼合需求的管理與業(yè)務(wù)體系,以交流融合的業(yè)務(wù)實(shí)踐,推動(dòng)產(chǎn)業(yè)各方實(shí)現(xiàn)數(shù)字化轉(zhuǎn)型。
構(gòu)建數(shù)據(jù)開(kāi)發(fā)與治理平臺(tái)的業(yè)務(wù)場(chǎng)景:滿足數(shù)倉(cāng)、各業(yè)務(wù)部門(mén)快速開(kāi)發(fā)、離線計(jì)算、數(shù)據(jù)集成、實(shí)時(shí)數(shù)據(jù)開(kāi)發(fā)、數(shù)據(jù)服務(wù)等功能,提升數(shù)據(jù)開(kāi)發(fā)與治理效率。
我們的目標(biāo):構(gòu)建先樞-數(shù)據(jù)開(kāi)發(fā)與治理平臺(tái),集成數(shù)據(jù)集成、離線計(jì)算、實(shí)時(shí)計(jì)算、數(shù)據(jù)服務(wù),提供一個(gè)一體的集成化開(kāi)發(fā)平臺(tái),一站式滿足數(shù)據(jù)開(kāi)發(fā)人員研發(fā)訴求。
我們所面對(duì)的挑戰(zhàn):海量數(shù)據(jù)處理、高并發(fā)請(qǐng)求、低延遲時(shí)效性?、業(yè)務(wù)多樣性、場(chǎng)景復(fù)雜性。
二、數(shù)據(jù)開(kāi)發(fā)與治理平臺(tái)介紹
1、任務(wù)開(kāi)發(fā)流程
任務(wù)開(kāi)發(fā)首先需要?jiǎng)?chuàng)建業(yè)務(wù)流程,這里的業(yè)務(wù)流程(Flow)用來(lái)管理一組任務(wù),任務(wù)主要是數(shù)倉(cāng)的離線調(diào)度,涉及到數(shù)據(jù)集成、發(fā)布以及 SparkSQL 的離線任務(wù)。在開(kāi)發(fā)完任務(wù)腳本之后,再進(jìn)行任務(wù)核心參數(shù)的設(shè)置,比如運(yùn)行的優(yōu)先級(jí)隊(duì)列、任務(wù)的相互依賴關(guān)系、運(yùn)行參數(shù),在配置完參數(shù)后,接著對(duì)任務(wù)可以測(cè)試執(zhí)行,測(cè)試運(yùn)行通過(guò)后可以對(duì)任務(wù)進(jìn)行上線。這里任務(wù)以業(yè)務(wù)流程(Flow)為單位進(jìn)行上線,上線完成后,交給管理員的任務(wù)審核,審核主要檢查任務(wù)消耗資源、并行度、開(kāi)發(fā)規(guī)范等,審核通過(guò)后發(fā)布到生產(chǎn)環(huán)境中。發(fā)布到生產(chǎn)環(huán)境后,通過(guò)提交到調(diào)度引擎進(jìn)行日常定時(shí)調(diào)度工作。
數(shù)據(jù)開(kāi)發(fā)中包含了一些功能,在畫(huà)布中新建業(yè)務(wù)流程,拖拽相關(guān)任務(wù)節(jié)點(diǎn)到畫(huà)布上,進(jìn)行任務(wù)節(jié)點(diǎn)依賴配置。根據(jù)業(yè)務(wù)分類,提供了一系列任務(wù)開(kāi)發(fā)功能,包含了五種任務(wù)類型:
① 數(shù)據(jù)同步:包含像 Oracle、OceanBase、Mysql、SFTP、Hbase 的數(shù)據(jù)接入與發(fā)布;
② Spark任務(wù):SparkSQL 的離線計(jì)算;
③ 機(jī)器學(xué)習(xí):AI 模型任務(wù);
④ Kylin 任務(wù):調(diào)度 Kylin 數(shù)倉(cāng) job;
⑤ 觸發(fā)型任務(wù):滿足外部平臺(tái)的接口觸發(fā)數(shù)據(jù)治理平臺(tái)啟動(dòng)數(shù)據(jù)任務(wù),比如外部系統(tǒng)進(jìn)行人群圈選數(shù)據(jù)推送、其他數(shù)據(jù)加工相關(guān)工作。
SparkSQL 任務(wù)開(kāi)發(fā)編輯器頁(yè)面,包含的功能有:
① 新建 SparkSQL 任務(wù):通過(guò)拖拽建立 SparkSQL 任務(wù)節(jié)點(diǎn)并編寫(xiě)腳本,完成編輯后,可通過(guò)語(yǔ)法校驗(yàn),提示 SQL 編寫(xiě)報(bào)錯(cuò)問(wèn)題;
② 單次執(zhí)行:Spark 任務(wù)提交到集群運(yùn)行,測(cè)試通過(guò)后,可以進(jìn)行提交,最終保存,經(jīng)過(guò)任務(wù)審核后,即可部署到生產(chǎn)進(jìn)行運(yùn)行;
③ 自動(dòng)任務(wù)依賴配置:系統(tǒng)會(huì)自動(dòng)通過(guò) SQL 語(yǔ)法解析到任務(wù)來(lái)源表,數(shù)倉(cāng)按照統(tǒng)一開(kāi)發(fā)規(guī)范,每一個(gè)任務(wù)有唯一的去向表,做到任務(wù)之間最細(xì)粒度統(tǒng)一,便于管理,來(lái)源表可以有多個(gè),通過(guò) SQL 解析拿到對(duì)應(yīng)源表,通過(guò)任務(wù)解析,找到上下游節(jié)點(diǎn),自動(dòng)生成邊關(guān)系;
④ 手動(dòng)添加依賴:通過(guò)手動(dòng)搜索任務(wù),添加任務(wù)到依賴上;
⑤ SparkSQL 權(quán)限解析:根據(jù)從元數(shù)據(jù)配置的用戶相關(guān)權(quán)限,進(jìn)行用戶對(duì)應(yīng)數(shù)據(jù)庫(kù)表的操作權(quán)限;
⑥ 血緣關(guān)系:如圖展示一個(gè)任務(wù)流程 Flow 下面的所有任務(wù)跨 Flow 血緣關(guān)系。
早期數(shù)據(jù)開(kāi)發(fā)與治理平臺(tái)是單環(huán)境架構(gòu),但在平臺(tái)任務(wù)上線時(shí),會(huì)遇到一些偶發(fā)問(wèn)題,比如線上任務(wù)緊急修復(fù)上線時(shí),SQL 腳本未經(jīng)過(guò)審核,導(dǎo)致任務(wù)會(huì)占用過(guò)多資源,還有 SQL 相關(guān)代碼不規(guī)范等問(wèn)題,因此使用了雙環(huán)境上線流程解決腳本流程規(guī)范。
所有的 Flow 在開(kāi)發(fā)和生產(chǎn)各有一份,通過(guò)鏡像的操作,每個(gè) Flow 和 Task 有相關(guān)的 code 標(biāo)識(shí)一一對(duì)應(yīng),唯一區(qū)別是開(kāi)發(fā)環(huán)境的 Flow 的 code 有 dev 前綴,比如開(kāi)發(fā)環(huán)境任務(wù) code 為 dev0001,那么生產(chǎn)環(huán)境的任務(wù) code 對(duì)應(yīng)為 0001,方便系統(tǒng)和用戶區(qū)分。
在調(diào)度層面,這樣的區(qū)分方式可以避免底層調(diào)度引擎、數(shù)倉(cāng)層感受到上層的變化,比如 dev 環(huán)境的 Flow 有相關(guān)任務(wù)在運(yùn)行,而其對(duì)應(yīng)的生產(chǎn)任務(wù)也在運(yùn)行,但是通過(guò)唯一的任務(wù) code 進(jìn)行區(qū)分,能使這些任務(wù)同時(shí)運(yùn)行在兩個(gè)環(huán)境,生產(chǎn)正常調(diào)度,開(kāi)發(fā)環(huán)境并行開(kāi)發(fā)。
在底層設(shè)計(jì)層面,開(kāi)發(fā)環(huán)境去掉前綴,即可映射到生產(chǎn)環(huán)境任務(wù),同時(shí)在應(yīng)用層可以統(tǒng)一存儲(chǔ),也就是生產(chǎn)環(huán)境和開(kāi)發(fā)環(huán)境的 Flow 和 Task,可以分別在一張 Flow 表和 Task 表中進(jìn)行存儲(chǔ),簡(jiǎn)化設(shè)計(jì),令底層數(shù)倉(cāng)和調(diào)度層無(wú)感知。
版本管理為了滿足數(shù)倉(cāng)開(kāi)發(fā)腳本的、任務(wù)之間依賴、業(yè)務(wù)流程配置、調(diào)度更改的版本回溯的需求,針對(duì)所有 Task 和 Flow 進(jìn)行版本管理,再發(fā)布到生產(chǎn),生產(chǎn)同步到開(kāi)發(fā)環(huán)境,都可選擇任意版本進(jìn)行發(fā)布和回滾。
三、平臺(tái)技術(shù)架構(gòu)實(shí)踐
1、整體架構(gòu)概述
上圖展示了整體系統(tǒng)架構(gòu):上面模塊是應(yīng)用層,下面是調(diào)度層。
配置管理:包含業(yè)務(wù)空間管理、成員管理和庫(kù)映射管理??臻g、成員管理是對(duì)應(yīng)部門(mén)人員之間的資源、數(shù)據(jù)權(quán)限隔離;庫(kù)映射管理,適用于解決來(lái)源庫(kù)與去向庫(kù)映射關(guān)系,比如數(shù)據(jù)接入時(shí),落到哪些倉(cāng)庫(kù),可以通過(guò)配置進(jìn)行管理;
數(shù)據(jù)開(kāi)發(fā):包含數(shù)據(jù)集成、離線開(kāi)發(fā)、數(shù)據(jù)發(fā)布、實(shí)時(shí)作業(yè)和 FlinkSQL 指標(biāo)開(kāi)發(fā)。
任務(wù)管理:包含業(yè)務(wù)流程管理、任務(wù)上下線、任務(wù)重跑補(bǔ)數(shù)操作以及任務(wù)的血緣依賴管理。
外部服務(wù):元數(shù)據(jù)功能,主要用于在用戶創(chuàng)建表后,對(duì)表詳情進(jìn)行查看,以及從中獲取所有表、庫(kù)、權(quán)限;用戶中心功能,主要用于配置相關(guān)平臺(tái)用戶賬戶管理和各子平臺(tái)的權(quán)限管理;AI 服務(wù)功能,主要用于管理機(jī)器學(xué)習(xí)模型任務(wù),通過(guò)接口調(diào)用該機(jī)器學(xué)習(xí)服務(wù);質(zhì)量作業(yè)功能,主要用于在數(shù)據(jù)任務(wù)開(kāi)發(fā)完成后,核驗(yàn)數(shù)據(jù)的質(zhì)量。
調(diào)度層:Airflow 是調(diào)度的核心模塊,橙色部分為圍繞 Airflow 擴(kuò)展開(kāi)發(fā)的組件,包括任務(wù)管理,自定義 Operator(支持 SparkSQL 和數(shù)據(jù)交換相關(guān)的任務(wù)提交)。
2、調(diào)度引擎
關(guān)于調(diào)度引擎,最初對(duì)比的有 Zeus、Airflow、Azkaban。Zeus 支持分布式調(diào)度,但對(duì) Hadoop、Spark、數(shù)據(jù)交換調(diào)度不完善,社區(qū)活躍度下降;Airflow 的 Python 擴(kuò)展方便,功能完善穩(wěn)定,2.X 支持多 Master 分布式調(diào)度,社區(qū)活躍;Azkaban,由 Java 開(kāi)發(fā),但調(diào)度任務(wù)功能相對(duì)簡(jiǎn)單;最終選擇 Airflow1.10(技術(shù)選型時(shí) 2.x 版本還未穩(wěn)定)作為生產(chǎn)離線調(diào)度引擎。
Airflow 目前僅提供一些 Web 界面上的管理操作,沒(méi)有提供相關(guān) Rest 接口,用戶將 Airflow 的 DAG 文件放在 DAG Directory,Scheduler 進(jìn)行掃描,會(huì)把對(duì)應(yīng)的 DAG 的元數(shù)據(jù)存儲(chǔ)到 MetaData 的 DataBase,DAG 對(duì)應(yīng)上層應(yīng)用的業(yè)務(wù)流程 Flow,管理了一組任務(wù)。Workers 支持?jǐn)U展,分布式部署多節(jié)點(diǎn)。在生產(chǎn)環(huán)境中 Airflow 主要適合使用 CalaryExector 部署,本地環(huán)境使用 LocalExector 進(jìn)行任務(wù)的調(diào)度。在翼支付生產(chǎn)中使用 Redis 作為 Celery 任務(wù)緩存隊(duì)列,來(lái)加速任務(wù)調(diào)度性能。
Airflow 1.10 提供的 WebApi 比較少,在原生功能中使用 Git 或 Ceph 進(jìn)行 DAG 文件存儲(chǔ),用戶需要自己生成 DAG 文件放到集群節(jié)點(diǎn),從流程來(lái)看引入對(duì)應(yīng)組件,復(fù)雜性會(huì)提高,用戶側(cè)需要涉及生成對(duì)應(yīng)的 DAG,上層應(yīng)用生成 DAG 及業(yè)務(wù)流程管理工作。為了解決這些問(wèn)題,通過(guò)擴(kuò)展開(kāi)發(fā) Rest 接口功能,管理 DAG 的生成和 DAG 任務(wù)元數(shù)據(jù),上面應(yīng)用層通過(guò) Rest 參數(shù)傳遞,幫助屏蔽底層調(diào)度引擎相關(guān)工作。DAG 文件上傳到對(duì)應(yīng) Scheduler 和 Worker 節(jié)點(diǎn)后,Scheduler 會(huì)以 5 分鐘為周期掃描,掃描到任務(wù) DAG,才能完成任務(wù)的上線,之后進(jìn)行 Dag 上線的回調(diào)動(dòng)作,通過(guò)底層完成上線回調(diào)上層應(yīng)用,避免了上層應(yīng)用對(duì)上線的任務(wù)定期輪詢狀態(tài),DagWorker 等待 DAG 上線成功進(jìn)行回調(diào)完成任務(wù)的上線。
對(duì)于 DAG 文件的生成如上圖所示。
external_task:對(duì)應(yīng)外部任務(wù),task >> task2,表示任務(wù) 2 依賴任務(wù) 1,同時(shí)也依賴了外部任務(wù) ExternalTask1。整個(gè) Python 文件就是 Airflow 調(diào)度的 DAG,AirFlow 內(nèi)部會(huì)解析其中的 DAG 及其依賴關(guān)系,生成調(diào)度的元數(shù)據(jù)。
3、數(shù)據(jù)總線
我們使用 Datax 作為數(shù)據(jù)總線的核心模塊,基于以上模板文件來(lái)執(zhí)行任務(wù),其調(diào)度是單機(jī)運(yùn)行,但是 Datax 擴(kuò)展性很好,并且預(yù)留了任務(wù)調(diào)度器接口,擴(kuò)展 Source、Sink 以及數(shù)據(jù)轉(zhuǎn)換邏輯、過(guò)濾開(kāi)發(fā),基于 Datax 封裝了數(shù)據(jù)總線的任務(wù)管理功能。用戶在頁(yè)面輸入?yún)?shù),通過(guò) Reader、Writer 插件來(lái)渲染生成 Datax 模板文件,Datahub 模塊將文件通過(guò) Yarn api 提交給對(duì)應(yīng)的 Yarn 集群,之所以選用 Yarn 調(diào)度,是因?yàn)?Datax 是單機(jī)運(yùn)行,不能做好多節(jié)點(diǎn)任務(wù)的調(diào)度。對(duì)比了 YarnCluster 與 K8S,暫時(shí)離線計(jì)算任務(wù)沒(méi)有完全 K8S 容器化,采用 Yarn 的統(tǒng)一大數(shù)據(jù)離線調(diào)度任務(wù)提交到 Yarn 集群離線計(jì)算。
4、資源隔離、計(jì)算優(yōu)化
資源隔離主要是對(duì)實(shí)時(shí)離線、不同任務(wù)之間集群隔離,比如數(shù)倉(cāng)之間的業(yè)務(wù)轉(zhuǎn)換、推數(shù)、任務(wù)分發(fā)不同類型作業(yè)。
數(shù)倉(cāng)核心任務(wù)置于一級(jí)隊(duì)列,其他部門(mén)基于其上,劃分了子任務(wù)隊(duì)列,有核心、重要、普通,三級(jí)優(yōu)先級(jí)隊(duì)列的資源隔離。
動(dòng)態(tài)限流低優(yōu)先級(jí)任務(wù)保障核心任務(wù)并發(fā),當(dāng)任務(wù)隊(duì)列滿了,先不提交普通任務(wù),普通任務(wù)大多凌晨調(diào)度,新任務(wù)的限流可以保障普通任務(wù)的并發(fā)限制,避免普通任務(wù)優(yōu)先調(diào)度,占用資源,核心任務(wù)需要等待計(jì)算資源。
在凌晨之前做普通任務(wù)的監(jiān)控,避免普通任務(wù)調(diào)度之前被其他日常任務(wù)運(yùn)行資源占滿。
Spark 任務(wù)的優(yōu)化包括:小文件治理,任務(wù)優(yōu)化主要是資源優(yōu)化、數(shù)據(jù)傾斜、Join 優(yōu)化,以及任務(wù)拆分。
5、數(shù)據(jù)質(zhì)量監(jiān)控
質(zhì)量監(jiān)控主要在五大方面:及時(shí)性、準(zhǔn)確性、完整性、一致性以及數(shù)據(jù)有效性進(jìn)行分析改進(jìn)。
數(shù)據(jù)質(zhì)量監(jiān)控的架構(gòu)如上圖所示,上面會(huì)配置相關(guān)的質(zhì)量監(jiān)控規(guī)則以及監(jiān)控任務(wù),質(zhì)量規(guī)則分為強(qiáng)規(guī)則和弱規(guī)則,針對(duì)強(qiáng)規(guī)則進(jìn)行任務(wù)熔斷,對(duì)于弱規(guī)則進(jìn)行事后分析改進(jìn)。規(guī)則通過(guò) SQL 對(duì)任務(wù)的數(shù)據(jù)一致性校驗(yàn),整個(gè)規(guī)則任務(wù)以 SparkSQL 作業(yè)提交上進(jìn)行計(jì)算生成規(guī)則報(bào)告,最后進(jìn)行分析改進(jìn)任務(wù)。
上面是作業(yè)的運(yùn)行詳情,質(zhì)量作業(yè)通過(guò) SQL 模板生成任務(wù)、作業(yè)名稱,每條模板生成一條規(guī)則與記錄,針對(duì)單個(gè)表會(huì)啟動(dòng)多個(gè)規(guī)則進(jìn)行校驗(yàn),單表的多字段校驗(yàn),輸出規(guī)則。若針對(duì)一張表有十個(gè)規(guī)則,第一個(gè)優(yōu)先規(guī)則不滿足,就會(huì)中斷校驗(yàn),直接返回流程。
6、云原生實(shí)踐
數(shù)據(jù)開(kāi)發(fā)平臺(tái)流程涉及到實(shí)時(shí)、離線、數(shù)據(jù)總線、質(zhì)量作業(yè)、監(jiān)控、先覺(jué) AI 模型,平臺(tái)服務(wù)基于微服務(wù)架構(gòu)進(jìn)行拆分到不同子服務(wù),滿足業(yè)務(wù)快速迭代,從開(kāi)發(fā)初期一直到最后上線經(jīng)過(guò)多版本開(kāi)發(fā),模塊變動(dòng)對(duì)其他服務(wù)影響比較大,傳統(tǒng)的大后端服務(wù)開(kāi)發(fā)模式進(jìn)行開(kāi)發(fā),模塊的耦合影響重,通過(guò)對(duì)各個(gè)服務(wù)的拆分很好的解決了這些問(wèn)題。
通過(guò)公司 KCS 的 CI/CD 平臺(tái)提供服務(wù)的快速測(cè)試,迭代,部署上線。基礎(chǔ)設(shè)施配有統(tǒng)一監(jiān)控告警功能及自動(dòng)擴(kuò)容能力,提升服務(wù)穩(wěn)定性。
整個(gè)開(kāi)發(fā)平臺(tái)迭代中,也伴隨著數(shù)據(jù)治理流程,工作成效比較顯著。整體計(jì)算成本降低 87%,模型特征計(jì)算時(shí)效提前 7.5 小時(shí),看板數(shù)據(jù)查詢時(shí)效提升 40 倍。
四、未來(lái)展望
數(shù)據(jù)開(kāi)發(fā)與治理平臺(tái)拆分的服務(wù)較多,與離線調(diào)度緊密相關(guān),需要更好的性能與擴(kuò)展。
可觀測(cè)性:可以及時(shí)發(fā)現(xiàn)服務(wù)的不穩(wěn)定性問(wèn)題。比如當(dāng)任務(wù)越來(lái)越多,任務(wù)之間狀態(tài)會(huì)有并發(fā)沖突,帶來(lái)的性能問(wèn)題需要及時(shí)解決。
計(jì)算效率:目前有比較多的 SparkSQL 作業(yè),需要根據(jù)專家經(jīng)驗(yàn)和實(shí)際場(chǎng)景針不斷優(yōu)化離線 SQL。
異地容災(zāi):現(xiàn)在的大數(shù)據(jù)集群部署在同一個(gè)機(jī)房,包括離線、實(shí)時(shí)計(jì)算。單機(jī)房會(huì)有異地備份訴求,需要多機(jī)房進(jìn)行數(shù)據(jù)災(zāi)備,以及實(shí)時(shí)計(jì)算跨集群、在線數(shù)據(jù)服務(wù)應(yīng)用實(shí)現(xiàn)跨機(jī)房容災(zāi)。
五、問(wèn)答環(huán)節(jié)
Q1:數(shù)據(jù)權(quán)限是怎樣管控和實(shí)現(xiàn)的?
A1:數(shù)據(jù)權(quán)限分為兩塊,用戶在平臺(tái)所屬組織的權(quán)限與空間管理的那塊進(jìn)行了部分綁定,用戶所屬部門(mén)的操作權(quán)限限定了平臺(tái)的數(shù)據(jù)權(quán)限;在元數(shù)據(jù)模塊有設(shè)置用戶對(duì)庫(kù)表的相關(guān)權(quán)限,UDF 的需要加解密的敏感數(shù)據(jù)也會(huì)關(guān)聯(lián)到用戶,用戶新建任務(wù),其 SQL 解析后會(huì)涉及相關(guān)的表,與相關(guān)表的操作權(quán)限進(jìn)行校驗(yàn)綁定。
Q2:數(shù)據(jù)治理是怎樣做的,如何提升效果?
A2:早期的煙囪式的開(kāi)發(fā),計(jì)算成本相對(duì)高,計(jì)算性能較低,數(shù)倉(cāng)針對(duì)其任務(wù),伴隨著數(shù)倉(cāng)數(shù)據(jù)治理過(guò)程的需求,平臺(tái)迭代研發(fā)滿足數(shù)倉(cāng)的開(kāi)發(fā)作業(yè)的流程,平臺(tái)針對(duì)調(diào)度任務(wù)的性能以及計(jì)算任務(wù)的性能優(yōu)化作了相關(guān)支持,整體計(jì)算資源可以達(dá)到更好的效果。