顏 濤 蔡美芳 謝瀟睿 楊東寧 趙偉杰
(1.云南電網(wǎng)有限責任公司 2.南昌工學院人工智能學院)
相對于其他工程,電網(wǎng)工程項目更加繁雜,涉及的方面更多,工程結算審核系統(tǒng)面臨著巨大的壓力,如何提高結算審核系統(tǒng)對數(shù)據(jù)的處理能力,使其更符合實際需要成為當前研究的重點[1,2]。
當前結算審核系統(tǒng)之所以在面對大數(shù)據(jù)時表現(xiàn)較差,主要原因在于對大數(shù)據(jù)的處理上,即當前系統(tǒng)多采用集中式任務處理模式,因此單靠一個系統(tǒng)服務器的運算能力是無法處理過大的數(shù)據(jù)量的,最終造成系統(tǒng)響應能力變差,需要運行很長時間才能給出反饋結果。針對這一原因,有效安排計算任務,分散系統(tǒng)運算壓力成為改善當前結算審核系統(tǒng)處理性能的關鍵[3]。為此,設計了基于數(shù)據(jù)驅(qū)動的電網(wǎng)工程竣工結算自動審核系統(tǒng)。以期提升電網(wǎng)工程竣工結算審核效率,降低電網(wǎng)工程結算審核壓力,促進電網(wǎng)建設。
數(shù)據(jù)驅(qū)動的電網(wǎng)工程竣工結算自動審核系統(tǒng)在采集大量電網(wǎng)工程項目數(shù)據(jù)的基礎上,對項目數(shù)據(jù)進行分類整理,然后根據(jù)分類數(shù)目,在靠近結算審核系統(tǒng)中心服務器的邊緣布設邊緣網(wǎng)絡MEC服務器,將本身都屬于結算審核系統(tǒng)中心服務器業(yè)務分散給邊緣服務器,從而減輕系統(tǒng)中心服務器的計算負擔,在邊緣服務器完成結算審核后,將審核結果反饋給中心服務器,中心服務器再進行總結、歸納,最后將結算審核結果以報表或圖形的形式反饋給審核人員[4,5]。
電網(wǎng)工程竣工結算自動審核系統(tǒng)采用B/S三層架構,有效提高數(shù)據(jù)處理性能[6]。三層結構具體為采集層、處理層以及客戶端層。
1)采集層從工程竣工結算大數(shù)據(jù)源中提取、導入需要審核結果,從業(yè)務系統(tǒng)中集成支持審核結果的憑證數(shù)據(jù),將其存儲到數(shù)據(jù)庫中[7]。
2)處理層把預結算項目劃分為若干組,并將分組任務分給邊緣網(wǎng)絡MEC服務器。在邊緣網(wǎng)絡MEC服務器中對預結算進行審核,并將審核結果反饋給系統(tǒng)中心服務器。系統(tǒng)中心服務器綜合各個邊緣服務器審核結果,繪制審核報表,給出預結算結果是否準確的判斷,以及指出審核存在偏差的數(shù)據(jù),并給出原因分析。
3)客戶端層主要是系統(tǒng)與用戶交互層,將系統(tǒng)審核結果通過客戶端將結果顯示出來。
傳統(tǒng)集中式結算審核系統(tǒng)響應變慢,多業(yè)務處理需要很長時間才能給予客戶反饋,影響了系統(tǒng)服務質(zhì)量[8]。針對上述問題,本文系統(tǒng)在原有系統(tǒng)服務器部署的基礎上,在靠近結算審核系統(tǒng)中心服務器的邊緣布設邊緣網(wǎng)絡MEC服務器,將運算任務調(diào)度給邊緣網(wǎng)絡MEC服務器,以緩解中心服務器壓力?;赟DN控制架構設計移動邊緣服務器組網(wǎng)方案如圖1所示。
圖1 移動邊緣服務器組網(wǎng)方案
圖1a為底層物理網(wǎng)絡結構圖,包含了各種基礎硬件設施,為實現(xiàn)與系統(tǒng)中心服務器相連,提供了接入方式,主要選取OpenFlow交換機作為傳輸節(jié)點,光纖作為傳輸鏈路,以一跳的形式,實現(xiàn)MEC服務器與中心服務器的連接。圖1b為組網(wǎng)方案的控制編排平面設計圖,控制編排平面主要部署在MEC服務器上,主要作用為:一方面對底層網(wǎng)絡交換設備進行管理;另一方面根據(jù)需求靈活組建邊緣網(wǎng)絡拓撲,緩解網(wǎng)絡延遲。
1.3.1 數(shù)據(jù)采集模塊
工程竣工結算與審核都需要以相關大數(shù)據(jù)作為支撐,如合同條款、工程項目和數(shù)量表、約定計價表、各項費用計取表、洽商變更記錄、各種設計和施工圖紙等。審核需要對涉及結算金額的數(shù)據(jù)一項項核對,因此首要功能模塊就是數(shù)據(jù)采集模塊。數(shù)據(jù)采集模塊中主要使用數(shù)據(jù)倉庫的ETL工具來完成。ETL工具從不同數(shù)據(jù)庫系統(tǒng)當中抽取工程結算元數(shù)據(jù),然后集中到中間層,對其清洗、轉換、整理,最后加載到數(shù)據(jù)集市當中,作為后期結算審核的憑證數(shù)據(jù)[9]。
1.3.2 數(shù)據(jù)壓縮存儲模塊
采集到的結算審核相關數(shù)據(jù)規(guī)模十分龐大,而系統(tǒng)數(shù)據(jù)庫空間有限,因此需要對數(shù)據(jù)進行壓縮處理,以方便系統(tǒng)數(shù)據(jù)庫存儲,緩解存儲資源不足的問題。數(shù)據(jù)壓縮存儲流程如圖2所示。
圖2 數(shù)據(jù)采集模塊流程
1.3.3 項目分組模塊
step1:準備結算審核所需要的所有數(shù)據(jù);
step2:確定項目分組劃分標準。在這里基于電網(wǎng)全生命周期來進行劃分,按照工程前期準備階段費用結算審核、施工建設階段費用結算審核以及電網(wǎng)工程竣工費用結算審核;
step3:確定三個項目分組各種費用名稱;
step4:以各種費用類型名稱作為聚類中心,將采集到的數(shù)據(jù)進行聚類;
step5:根據(jù)聚類結果將數(shù)據(jù)劃分到不同的項目小組。
1.3.4 審核任務分配與調(diào)度模塊
將項目分組結果其打包分發(fā)到邊緣MEC服務器上,每個邊緣服務器上負責一部分的核算任務。審核任務分配與調(diào)度如圖3所示。
圖3 審核任務分配與調(diào)度模型
1)用戶通過系統(tǒng)窗口發(fā)布結算審核任務。
2)系統(tǒng)對結算審核任務進行分析,并對任務分解,分成若干個子任務,實現(xiàn)任務分布式化。
3)將子任務提供給任務調(diào)度器。
4)將子任務按照分配策略,將任務分配給邊緣MEC服務器。
1.3.5 結算審核模塊
在各個邊緣MEC服務器中對分配到的任務進行處理,實現(xiàn)一部分的結算審核,然后將結果反饋給中心服務器。中心服務器進行進一步的歸納和整理,完成結算審核確認。結流程如下:
step1:登錄系統(tǒng);
step2:是否是結算管理員;
step 3:結算數(shù)據(jù)與預結算結果錄入;
step 4:預結算結果是否準確?預結算結果準確,則進行結算審批確認。否則,進入下一步;
step5:結算偏差分析;
step6:修改原報金額;
step7:錄入核減內(nèi)容以及金額;
step8:審核后的金額錄入。
step9:判斷審核后結算金額小于預算金額,進行結算審批確認,并錄入日期與日志。否則,回到step5重復執(zhí)行。
通過審核,能準確判斷預結算是否準確,明確存在偏差的部分,以便進行核查和糾正,最終呈現(xiàn)一份較為精準的工程竣工結算表。
以某已經(jīng)竣工的電網(wǎng)工程為例,借助工具Loadrunner進行系統(tǒng)性能測試,并與集中式結算審核系統(tǒng)進行對比實驗,參數(shù)如表1所示。
表1 仿真測試參數(shù)設置表
將1280個審核任務分配給4個MEC服務器和1個中心服務器,分配結果如圖4所示。
圖4 審核任務分配圖
(1)響應延遲
響應延遲是指用戶從輸出操作指令到系統(tǒng)給出反饋之間的時間差值。其平均值計算公式如下:
式中,Δt代表平均響應延遲;T1代表操作指令輸出時間;T2代表系統(tǒng)反饋時間;n代表操作指令數(shù)量。
(2)吞吐量
吞吐量是指單位時間內(nèi)系統(tǒng)能夠處理的任務數(shù)量。
(3)并發(fā)數(shù)
并發(fā)數(shù)是指在一段時間內(nèi)允許用戶同時登錄的數(shù)量。
相同測試條件下,利用所設計的系統(tǒng)以及集中式結算審核系統(tǒng)進行結算審核,然后統(tǒng)計審核過程中平均響應延遲、吞吐量以及并發(fā)數(shù)。結果如表2所示。從表2可知,本文系統(tǒng)的響應延遲更短、吞吐量以及并發(fā)數(shù)更大,比集中式結算審核系統(tǒng)表現(xiàn)要好,說明通過將任務分散出去,能有效提升系統(tǒng)的運算能力,更適用于電網(wǎng)工程竣工結算自動審核工作。
表2 系統(tǒng)性能測試結果
綜上所述,為滿足各地用電需要,通過電網(wǎng)工程建設,可以使電網(wǎng)覆蓋面更廣泛。然而,電網(wǎng)工程項目繁雜,當工程竣工后,結算審核工作量巨大。為此,設計基于數(shù)據(jù)驅(qū)動的電網(wǎng)工程竣工結算自動審核系統(tǒng)。該系統(tǒng)通過采集到的大數(shù)據(jù)來驅(qū)動結算自動審核的完成。最后對系統(tǒng)進行實現(xiàn)與測試,測試結果證明本文系統(tǒng)的數(shù)據(jù)處理能力更強。然而,本系統(tǒng)測試中,僅是進行仿真測試,而現(xiàn)實情況下,數(shù)據(jù)量更是龐大,因此有待進一步實踐測試。