汪爭(zhēng)賢 吳建琳 陳胡嶸 夏禹晨
摘 ? 要:數(shù)據(jù)中臺(tái)是以企業(yè)多類型大數(shù)據(jù)量的匯聚為基礎(chǔ),以統(tǒng)一數(shù)據(jù)模型為標(biāo)準(zhǔn),通過豐富的數(shù)據(jù)標(biāo)簽,為前端應(yīng)用提供敏捷的統(tǒng)一數(shù)據(jù)服務(wù)?;诖耍槍?duì)電力企業(yè)財(cái)務(wù)管理對(duì)“企業(yè)資源實(shí)時(shí)掌握、經(jīng)營活動(dòng)動(dòng)態(tài)反映”的要求,結(jié)合存儲(chǔ)在ERP、財(cái)務(wù)管控系統(tǒng)、MDM平臺(tái)、PMS系統(tǒng)中的基礎(chǔ)業(yè)務(wù)數(shù)據(jù),研究通過數(shù)據(jù)中臺(tái)實(shí)現(xiàn)數(shù)據(jù)可視化分析的整個(gè)過程,對(duì)相關(guān)企業(yè)解決數(shù)據(jù)孤島問題,實(shí)現(xiàn)數(shù)據(jù)融合有一定參考意義。
關(guān)鍵詞:電力企業(yè);數(shù)據(jù)中臺(tái);財(cái)務(wù)大數(shù)據(jù);可視化
中圖分類號(hào):F23 ? ? ? 文獻(xiàn)標(biāo)志碼:A ? 文章編號(hào):1673-291X(2021)20-0128-03
一、財(cái)務(wù)大數(shù)據(jù)可視化實(shí)現(xiàn)目標(biāo)
基于數(shù)據(jù)中臺(tái)的財(cái)務(wù)大數(shù)據(jù)可視化分析,是以各業(yè)務(wù)系統(tǒng)數(shù)據(jù)為基礎(chǔ),實(shí)現(xiàn)多維數(shù)據(jù)分析與展示,重點(diǎn)聚焦在數(shù)據(jù)分析服務(wù)化、數(shù)據(jù)應(yīng)用工具化的能力上,圍繞“會(huì)計(jì)信息實(shí)時(shí)反映、預(yù)算全鏈條管理、工程全過程管控、資產(chǎn)全壽命管理、電價(jià)電費(fèi)全環(huán)節(jié)管控、資金全方位管理、風(fēng)險(xiǎn)在線監(jiān)控”等專業(yè)管理模塊,實(shí)現(xiàn)精益管理的需求。
系統(tǒng)實(shí)現(xiàn)上,通過數(shù)據(jù)中臺(tái)總體架構(gòu),全面支持財(cái)務(wù)數(shù)據(jù)的接入、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)計(jì)算、數(shù)據(jù)服務(wù)、展示分析。同時(shí),結(jié)合省公司專業(yè)處室、基層單位新增業(yè)務(wù)、板塊、應(yīng)用場(chǎng)景需求,繼續(xù)開展數(shù)據(jù)溯源、模型搭建、輸出設(shè)計(jì)、數(shù)據(jù)分析與應(yīng)用場(chǎng)景建設(shè)。整體上在充分利用現(xiàn)有各財(cái)務(wù)系統(tǒng)的建設(shè)成果基礎(chǔ)上,通過技術(shù)整合、功能整合、數(shù)據(jù)整合、模式整合、業(yè)務(wù)整合等技術(shù)手段,將各個(gè)分離的信息數(shù)據(jù)集成實(shí)現(xiàn)共享,并能夠以數(shù)據(jù)服務(wù)方式對(duì)外分享,使資源達(dá)到充分共享,結(jié)果將有效節(jié)省建設(shè)的投資,提升系統(tǒng)建設(shè)的經(jīng)濟(jì)效益。
二、總體構(gòu)架
(一)總體架構(gòu)
總體架構(gòu)分為數(shù)據(jù)匯聚與服務(wù)層、數(shù)據(jù)可視化分析層?;诎⒗顳ataWorks平臺(tái)實(shí)現(xiàn)的數(shù)據(jù)匯聚與服務(wù)層,能夠?qū)崿F(xiàn)數(shù)據(jù)集成、開發(fā)、治理、服務(wù)、質(zhì)量和安全等全套數(shù)據(jù)研發(fā)工作。數(shù)據(jù)可視化分析層,基于國家電網(wǎng)公司統(tǒng)一應(yīng)用開發(fā)平臺(tái),通過集成可視化框架(WebGL、VUEX、ECharts、Mapbox、Three.js等),以采用B/S架構(gòu)的方式對(duì)外提供服務(wù)。
(二)數(shù)據(jù)匯聚與服務(wù)層架構(gòu)
數(shù)據(jù)匯聚與服務(wù)實(shí)現(xiàn)流程如下:
1.通過數(shù)據(jù)集成同步業(yè)務(wù)數(shù)據(jù)和日志數(shù)據(jù)至MaxCompute。
2.通過MaxCompute、DataWorks對(duì)數(shù)據(jù)進(jìn)行ETL處理。
3.同步分析后的結(jié)果數(shù)據(jù)同步至分析庫。
4.通過Quick BI、ECharts可視化建立用戶畫像。
基于數(shù)據(jù)中臺(tái)的大數(shù)據(jù)分析總體數(shù)據(jù)流向,如圖1所示。
貼源層使用分布式數(shù)據(jù)倉庫MaxCompute,源業(yè)務(wù)系統(tǒng)數(shù)據(jù)通過DataWorks DI、DTS、DataHub組件接入MaxCompute全量表和增量表;共享層使用分布式數(shù)據(jù)倉庫MaxCompute,通過DataWorks-DI組件完成貼源層數(shù)據(jù)表到共享層基于模型的數(shù)據(jù)表和標(biāo)準(zhǔn)表轉(zhuǎn)化;分析層利用MaxCompute、RDS、ADB等計(jì)算平臺(tái)與分析庫,通過DataWorks組件基于業(yè)務(wù)邏輯完成業(yè)務(wù)分析,保存計(jì)算后的結(jié)果表開發(fā)。計(jì)算結(jié)果可以封裝為數(shù)據(jù)服務(wù)API,發(fā)布注冊(cè)至API網(wǎng)關(guān)后,供外部報(bào)表工具調(diào)用進(jìn)行可視化展示,或者以SDK方式共外部報(bào)表工具或應(yīng)用進(jìn)行調(diào)用。最后利用QuickBI、ECharts等報(bào)表組件或界面開發(fā)的方式進(jìn)行可視化展示分析應(yīng)用。
(三)數(shù)據(jù)可視化分析層架構(gòu)
數(shù)據(jù)可視化分析層基于國網(wǎng)公司SG-UAP開發(fā)平臺(tái)構(gòu)建,其好處是遵守國家電網(wǎng)公司統(tǒng)一的開發(fā)標(biāo)準(zhǔn),與統(tǒng)一權(quán)限系統(tǒng)等已實(shí)現(xiàn)標(biāo)準(zhǔn)的集成,運(yùn)行平穩(wěn),降低了開發(fā)成本。詳見圖2。
由于SG-UAP平臺(tái)集成開發(fā)工具是基于Eclipse工具實(shí)現(xiàn)的,符合業(yè)界主流開發(fā)標(biāo)準(zhǔn),展現(xiàn)層能夠很容易地與VUEX、ECharts等多種可視化框架集成,能夠?qū)崿F(xiàn)海量的可視化效果。
三、實(shí)現(xiàn)過程
(一)數(shù)據(jù)接入
將各業(yè)務(wù)系統(tǒng)數(shù)據(jù)進(jìn)行匯聚整合,保留全量業(yè)務(wù)原始數(shù)據(jù),形成貼源層,也稱ODS層。源業(yè)務(wù)系統(tǒng)數(shù)據(jù)通過Datawork DI、DTS、DataHub組件接入MaxCompute貼源層全量表和增量表。該層只對(duì)各個(gè)來源的數(shù)據(jù)做匯聚、整合,并沒有做過多的加工處理,數(shù)據(jù)基本還是原始結(jié)構(gòu)。貼源層不做業(yè)務(wù)的解釋,更不適合數(shù)據(jù)的分析、挖掘。
1.全量數(shù)據(jù)接入
針對(duì)數(shù)據(jù)量較?。ㄐ∮?0M),全量數(shù)據(jù)抽取對(duì)源端系統(tǒng)影響小。使用DataWorks-DI定時(shí)做全量抽取。每天全量保存在MaxCompute一個(gè)新的分區(qū)里面,按需開展數(shù)據(jù)更新。
新的分區(qū),指的是通過設(shè)置分區(qū)字段,設(shè)置表為分區(qū)表。當(dāng)使用分區(qū)字段對(duì)表進(jìn)行分區(qū)時(shí),新增分區(qū)、更新分區(qū)內(nèi)數(shù)據(jù)和讀取分區(qū)數(shù)據(jù)均不需要做全表掃描,可提高處理效率。
2.增量數(shù)據(jù)接入
(1)增量定時(shí)抽取
針對(duì)源端表只存在數(shù)據(jù)新增操作,且數(shù)據(jù)表具備增量標(biāo)識(shí)字段,如日志類、訪問流量類信息,可采取增量定時(shí)抽取策略。存量數(shù)據(jù)一次性通過DataWorks-DI從源端數(shù)據(jù)庫表全量抽取,數(shù)據(jù)寫入(INSERT OVERWRITE)MaxCompute貼源層的全量表。全量表按天分區(qū),不設(shè)置生命周期。
增量數(shù)據(jù)每日根據(jù)增量標(biāo)識(shí)使用DataWorks-DI做增量數(shù)據(jù)同步,數(shù)據(jù)直接存入MaxCompute全量表相應(yīng)分區(qū)內(nèi)。每天定時(shí)通過腳本將當(dāng)天增量數(shù)據(jù)同步(INSERT)至MaxCompute全量表當(dāng)日分區(qū)。
(2)增量實(shí)時(shí)同步
針對(duì)數(shù)據(jù)量較大并且源端數(shù)據(jù)存在增刪改的情況,在數(shù)據(jù)接入中,存量數(shù)據(jù)一次性通過DataWorks-DI從源端數(shù)據(jù)庫表全量抽取,數(shù)據(jù)寫入(INSERT OVERWRITE)MaxCompute貼源層的全量表當(dāng)日分區(qū),全量數(shù)據(jù)按天分區(qū)保留全量切片數(shù)據(jù),為節(jié)省空間僅保留兩天分區(qū)數(shù)據(jù)。