房金彥,應忠德,羅 誠
(國網(wǎng)江西省電力有限公司,江西 南昌 330077)
電網(wǎng)調(diào)度在生產(chǎn)和各種業(yè)務運用中積攢了大量運行數(shù)據(jù),通過對這些運行數(shù)據(jù)的深入、全面分析,可以促進運營管理決策的科學性和提高企業(yè)經(jīng)濟效益。隨著數(shù)據(jù)應用需求增多,更多數(shù)據(jù)層面的問題被暴露出來,調(diào)度機構(gòu)內(nèi)部業(yè)務系統(tǒng)較多,管理相互獨立,數(shù)據(jù)存儲分散,取自于調(diào)度不同系統(tǒng)的數(shù)據(jù)雖然量大卻紛繁復雜,嚴重地阻礙了對數(shù)據(jù)價值的提取和挖掘,這就使得整合各系統(tǒng)數(shù)據(jù)成為調(diào)度機構(gòu)提升數(shù)字化水平的關鍵所在。
同時,公司其它部門對調(diào)度數(shù)據(jù)的需求也日益增多,迫切需要調(diào)度機構(gòu)建立統(tǒng)一的電網(wǎng)運行數(shù)據(jù)匯集系統(tǒng),匯集省地調(diào)度機構(gòu)電力生產(chǎn)數(shù)據(jù),面向公司各業(yè)務部門提供電網(wǎng)運行、在線分析、現(xiàn)貨交易、調(diào)度管理、調(diào)度計劃、新能源等多業(yè)務信息,面向政府、監(jiān)管部門、電力市場主體提供不同類型的信息服務。
調(diào)控云是適應電網(wǎng)一體化運行特征,以電網(wǎng)運行和調(diào)控管理業(yè)務為需求導向,依托云計算、大數(shù)據(jù)和移動互聯(lián)網(wǎng)等IT 技術,形成“資源虛擬化、數(shù)據(jù)標準化、應用服務化”的調(diào)控技術支撐體系[1-3]。通過虛擬機、容器、應用包等方式實現(xiàn)應用的快速部署,實現(xiàn)服務的智能管理、按需訪問。通過數(shù)據(jù)對象的標準化設計,實現(xiàn)數(shù)據(jù)存儲標準化,便于數(shù)據(jù)分布式維護和同步共享,通過規(guī)范通信協(xié)議、服務協(xié)議的方式,實現(xiàn)數(shù)據(jù)交互標準化,便于異構(gòu)系統(tǒng)互聯(lián),提高數(shù)據(jù)交互效率。
調(diào)控云面向服務的體系架構(gòu)(SOA)技術[4-5],采用的虛擬化、分布式資源管理和并行編程技術使運行數(shù)據(jù)匯集能夠靈活使用、調(diào)配需要的基礎資源,提升運維效率。運行數(shù)據(jù)匯集系統(tǒng)依托云計算的分布式處理、分布式數(shù)據(jù)庫和云存儲、虛擬化技術,利用調(diào)控云在資源共享、運維效率和業(yè)務連續(xù)性等方面的優(yōu)勢,對不同系統(tǒng)的海量數(shù)據(jù)進行分布式抽取,實現(xiàn)調(diào)度機構(gòu)各業(yè)務系統(tǒng)數(shù)據(jù)整合并提供給各業(yè)務部門使用。
依據(jù)《電力調(diào)度通用數(shù)據(jù)對象結(jié)構(gòu)化設計》,電網(wǎng)運行數(shù)據(jù)主要包括量測數(shù)據(jù)、運行事件、外部環(huán)境事件、計劃預測數(shù)據(jù)、特征數(shù)據(jù)等[2],這些數(shù)據(jù)都存儲在原有業(yè)務系統(tǒng)中。電網(wǎng)調(diào)度運行數(shù)據(jù)匯集通過數(shù)據(jù)接收、數(shù)據(jù)存儲、數(shù)據(jù)服務,實現(xiàn)各級調(diào)度機構(gòu)運行數(shù)據(jù)匯集和全面存儲,為各類應用提供可靠的運行數(shù)據(jù)服務。電網(wǎng)調(diào)度運行數(shù)據(jù)匯集架構(gòu)如圖1所示。

圖1 電網(wǎng)調(diào)度運行數(shù)據(jù)匯集架構(gòu)
調(diào)控云數(shù)據(jù)同步程序接收從各系統(tǒng)源數(shù)據(jù)端發(fā)送來的消息對象,并對消息對象解析,然后將源數(shù)據(jù)端變化數(shù)據(jù)更新至云端數(shù)據(jù)庫。數(shù)據(jù)接收功能包括數(shù)據(jù)映射、抽取轉(zhuǎn)換等。
1)數(shù)據(jù)映射
數(shù)據(jù)映射是在兩個數(shù)據(jù)模型之間建立起數(shù)據(jù)元素的對應關系,實現(xiàn)系統(tǒng)之間關系的建立,是很多數(shù)據(jù)匯集任務的第一步。運行數(shù)據(jù)匯集系統(tǒng)是從不同源端系統(tǒng)獲取數(shù)據(jù),這些系統(tǒng)各自獨立,必須通過設備ID 關系對照建立互聯(lián)。調(diào)控云運行數(shù)據(jù)匯集系統(tǒng)在抽取數(shù)據(jù)前先要將調(diào)控云設備ID 與抽取系統(tǒng)設備ID關系進行對照。
2)數(shù)據(jù)抽取轉(zhuǎn)換
數(shù)據(jù)抽取是從各個不同的數(shù)據(jù)源抽取到運行數(shù)據(jù)匯集系統(tǒng)。數(shù)據(jù)抽取的方法選取需要考慮提高抽取效率和對各業(yè)務系統(tǒng)數(shù)據(jù)庫的影響,同時要考慮增量抽取問題。運行數(shù)據(jù)匯集系統(tǒng)利用kettle 工具和SQL結(jié)合方式實現(xiàn)對源端系統(tǒng)數(shù)據(jù)抽取匯集,數(shù)據(jù)抽取遵循標準的消息報文。規(guī)范的消息報文包括:源數(shù)據(jù)端在線狀態(tài)匯報心跳消息報文定義、數(shù)據(jù)增量匯集消息報文定義、源數(shù)據(jù)端補召狀態(tài)匯報消息報文定義及數(shù)據(jù)補召命令與匯集消息報文定義。
數(shù)據(jù)采集模塊按預定周期從各系統(tǒng)數(shù)據(jù)庫中獲取運行數(shù)據(jù)后封裝成相應的運行數(shù)據(jù)傳輸報文,包括量測數(shù)據(jù)報文、告警數(shù)據(jù)報文等類型。量測類型數(shù)據(jù)報文由消息頭和消息主體兩個部分組成,如圖2所示。

圖2 量測類型數(shù)據(jù)消息報文
數(shù)據(jù)轉(zhuǎn)換的任務主要是進行不一致的數(shù)據(jù)轉(zhuǎn)換,這個過程是一個整合的過程,將運行數(shù)據(jù)匯集的不同業(yè)務系統(tǒng)相同類型的數(shù)據(jù)統(tǒng)一,比如源端EMS 系統(tǒng)ID 編碼是XX0001,而在匯集系統(tǒng)中編碼是YY0001,這樣在抽取過來之后統(tǒng)一轉(zhuǎn)換成一個編碼YY0001,數(shù)據(jù)按照匯集系統(tǒng)的設備編碼存儲。
3)數(shù)據(jù)傳輸
運行數(shù)據(jù)的匯集通過調(diào)控云平臺的消息總線集群進行[6]。消息總線提供基于訂閱/發(fā)布的消息傳輸方式,集群化部署,支持每秒十萬級的消息傳輸,支持JAVA/C 兩種編程語言,調(diào)控云消息總線的整體架構(gòu)圖如圖3所示。

圖3 調(diào)控云消息總線架構(gòu)圖
各調(diào)度機構(gòu)Ⅲ區(qū)的數(shù)據(jù)獲取服務通過消息總線發(fā)送接口將消息發(fā)送到云平臺消息總線集群中。部署于調(diào)控云平臺的運行數(shù)據(jù)存儲服務通過消息總線接口訂閱該主題消息并接收消息,解析收到的數(shù)據(jù),插入到數(shù)據(jù)庫中存儲。
調(diào)控云平臺的運行數(shù)據(jù)存儲分為關系數(shù)據(jù)庫存儲和列式數(shù)據(jù)庫存儲兩種存儲方式,在存儲不同類型的數(shù)據(jù)時,要選擇適合的存儲方式。通過對大量運行數(shù)據(jù)匯集至兩種數(shù)據(jù)庫的性能測試對比發(fā)現(xiàn),列式數(shù)據(jù)庫的讀寫速率和數(shù)據(jù)表查詢效率要明顯高于關系數(shù)據(jù)庫,因此江西運行數(shù)據(jù)匯集系統(tǒng)的存儲方式采用列式數(shù)據(jù)庫存儲,數(shù)據(jù)存儲邏輯如圖4所示。

圖4 運行數(shù)據(jù)匯集數(shù)據(jù)存儲
運行數(shù)據(jù)匯集系統(tǒng)接受省地調(diào)各業(yè)務系統(tǒng)數(shù)據(jù)和外部系統(tǒng)的其它數(shù)據(jù),以多種發(fā)布方式提供給公司數(shù)據(jù)中臺,供公司其它部門使用。同時接受來自公司數(shù)據(jù)中臺和其它系統(tǒng)的外部數(shù)據(jù),提供給調(diào)控機構(gòu)各業(yè)務系統(tǒng)使用,形成調(diào)控中心內(nèi)外業(yè)務系統(tǒng)數(shù)據(jù)交換樞紐。
調(diào)控云平臺的運行數(shù)據(jù)服務提供總線服務以及計算、交互和展示服務,應用于數(shù)據(jù)的查詢和分析。運行數(shù)據(jù)匯集系統(tǒng)所采用的調(diào)控云服務如表1所示。

表1 調(diào)控云基本服務列表
數(shù)據(jù)安全就是要保護數(shù)據(jù)免受威脅的影響,從而確保運行數(shù)據(jù)匯集系統(tǒng)的連續(xù)性,縮減業(yè)務平臺可能面臨的風險,保證數(shù)據(jù)信息的可用性、完整性、機密性。運行數(shù)據(jù)匯集系統(tǒng)提供對數(shù)據(jù)的安全管理功能,主要包括:備份管理、權(quán)限管理、痕跡管理。
2.4.1 備份管理
為規(guī)避系統(tǒng)破壞和使用過程中的風險,必須要對存儲的運行數(shù)據(jù)進行定期備份工作。
防止系統(tǒng)破壞進行的備份使運行數(shù)據(jù)系統(tǒng)硬件、軟件受到內(nèi)外部破壞后數(shù)據(jù)能夠得到盡快恢復。內(nèi)部破壞防范:當服務器配置更新變動以及服務器應用系統(tǒng)、軟件修改后均要在改動當天進行備份。外部破壞防范:為防止系統(tǒng)硬件破壞,通過異地建立調(diào)控云平臺站點,站點之間軟硬件部署相同,讀寫同步,實現(xiàn)硬件層面上數(shù)據(jù)安全;運行數(shù)據(jù)系統(tǒng)軟件部署在調(diào)控云平臺的虛擬機上,分布式存儲的三種備份方式可以實現(xiàn)軟件層面上運行數(shù)據(jù)的安全。
防止使用過程中數(shù)據(jù)風險進行的備份主要是針對數(shù)據(jù)刪除或不正確修改等操作。主要措施是定期對數(shù)據(jù)庫進行全量自動備份,一般是一周一次,每天定時對增量數(shù)據(jù)進行自動備份,備份要有明確的標識。備份的標識要注明備份時間、備份內(nèi)容、備份路徑等信息。自動備份失敗情況下設定短信通知,并采取手工備份或其它方式及時備份,定期對備份日志進行檢查,對重要數(shù)據(jù)實現(xiàn)異地備份。
2.4.2 權(quán)限管理
數(shù)據(jù)安全涉及的人員有擁有者、管理者、訪問者。擁有者是各源系統(tǒng)數(shù)據(jù)錄入者,擁有數(shù)據(jù)修改、刪除等權(quán)限;管理者負責數(shù)據(jù)的日常管理和維護;訪問者是在授權(quán)范圍內(nèi)訪問所需數(shù)據(jù),要確保訪問對象的完整性、機密性、可用性等。
運行數(shù)據(jù)匯集系統(tǒng)利用調(diào)控云平臺的權(quán)限服務規(guī)范數(shù)據(jù)的操作和使用權(quán)限,明確人員的錄入權(quán)限、訪問權(quán)限及維護權(quán)限,設置管理員用戶和數(shù)據(jù)查詢用戶的操作權(quán)限,加強用戶身份驗證管理等。通過權(quán)限管理功能,對運行數(shù)據(jù)的維護、驗證、訂閱、發(fā)布等功能進行權(quán)限控制,只有具備相應權(quán)限的用戶才能執(zhí)行相應的操作。
2.4.3 痕跡管理
痕跡管理就是要把數(shù)據(jù)及系統(tǒng)的維護使用過程中的每一個步驟和環(huán)節(jié)都留下印記,并加以整理和保存,通過痕跡的查證,可以有效復原已經(jīng)發(fā)生了的各項操作,保證數(shù)據(jù)及系統(tǒng)的各項操作可追溯、可還原、可追責。
運行數(shù)據(jù)匯集系統(tǒng)利用調(diào)控云平臺的日志管理服務功能實現(xiàn)對各項操作的痕跡管理。日志管理主要記錄各類人員的操作日志、系統(tǒng)的運行日志、業(yè)務和系統(tǒng)異常故障日志,提供日志的存儲、查詢等統(tǒng)一管理功能。
為保證數(shù)據(jù)質(zhì)量及系統(tǒng)的穩(wěn)定性,需要及時監(jiān)視數(shù)據(jù)匯集系統(tǒng)的工作狀態(tài),優(yōu)化系統(tǒng)數(shù)據(jù)抽取工具,提高數(shù)據(jù)匯集效率。
運行數(shù)據(jù)匯集系統(tǒng)具備設置數(shù)據(jù)抽取任務啟停、周期控制和策略控制功能,可控制任務啟停狀態(tài)以及數(shù)據(jù)源端與目標系統(tǒng)之間數(shù)據(jù)交互周期,并針對不同傳輸方式的傳輸速率大小、次數(shù)等進行控制。
由于業(yè)務系統(tǒng)、網(wǎng)絡等原因,會出現(xiàn)數(shù)據(jù)抽取過程中同步任務中斷,需要對數(shù)據(jù)中斷的監(jiān)視和中斷的數(shù)據(jù)重傳,重傳需要確保數(shù)據(jù)重復的問題、斷點續(xù)傳的問題。
1)網(wǎng)絡鏈接監(jiān)視。運行數(shù)據(jù)匯集系統(tǒng)對源系統(tǒng)數(shù)據(jù)網(wǎng)絡傳輸穩(wěn)定性監(jiān)視,定時通過網(wǎng)絡連接方式判斷源端系統(tǒng)是否離線,并且有告警信息發(fā)出或短信通知,精確提示哪套源端數(shù)據(jù)系統(tǒng)網(wǎng)絡鏈接問題,需要運維人員盡快處理。
2)數(shù)據(jù)傳輸監(jiān)視。運行數(shù)據(jù)匯集系統(tǒng)對源數(shù)據(jù)傳輸?shù)募皶r性以及是否漏傳具備判斷功能。通過計算數(shù)據(jù)大小進行判別,若某個時間段的數(shù)據(jù)量與以往同時間段對比出現(xiàn)異常,則判斷獲取數(shù)據(jù)異常,通過定時提醒方式提示運維人員盡快進行補傳。
3)數(shù)據(jù)補召。在運行數(shù)據(jù)匯集系統(tǒng)因某種故障原因(如數(shù)據(jù)庫故障)不能完成數(shù)據(jù)增量匯集,為保障運行數(shù)據(jù)完整性,系統(tǒng)通過下發(fā)數(shù)據(jù)補召命令消息報文,源數(shù)據(jù)端接收消息報文后進行數(shù)據(jù)抽取與發(fā)送,完成數(shù)據(jù)接收與存儲,實現(xiàn)異常情況下數(shù)據(jù)完整性保障。
在數(shù)據(jù)抽取過程中,各業(yè)務系統(tǒng)抽取的數(shù)據(jù)量不同,部分服務器需要抽取大量數(shù)據(jù),對系統(tǒng)的上傳速度和承載能力提出了挑戰(zhàn),系統(tǒng)面臨著傳輸速度慢以及存儲不足的困擾。而其它服務器由于抽取數(shù)據(jù)量小,服務器上傳速度和承載能力都較低。
源系統(tǒng)抽取的數(shù)據(jù)通過消息總線傳輸機制,被分塊加密并高效傳輸至數(shù)據(jù)匯集系統(tǒng)。利用調(diào)控云平臺的負載均衡調(diào)度服務器,將來自于不同源端的數(shù)據(jù)分攤到多個數(shù)據(jù)匯集服務器,然后這些服務器將數(shù)據(jù)寫入列式數(shù)據(jù)庫存儲,實現(xiàn)了數(shù)據(jù)的快速匯總和集中存儲。負載均衡邏輯結(jié)構(gòu)如圖5所示。

圖5 負載均衡邏輯結(jié)構(gòu)圖
為保證數(shù)據(jù)質(zhì)量及系統(tǒng)的穩(wěn)定性,需要及時監(jiān)視數(shù)據(jù)匯集系統(tǒng)的工作狀態(tài),將采集通信狀態(tài),數(shù)據(jù)匯集質(zhì)量,異常告警以圖形、列表等可視化形式展示。具備任務執(zhí)行情況監(jiān)視、運行情況監(jiān)視和異常告警功能,可對數(shù)據(jù)匯集過程中任務執(zhí)行進行實時監(jiān)視,可對歷史數(shù)據(jù)匯集情況進行統(tǒng)計分析,并提供異常告警服務。
調(diào)度運行數(shù)據(jù)匯集系統(tǒng)減輕了調(diào)度各業(yè)務系統(tǒng)對外提供數(shù)據(jù)的壓力,使各業(yè)務系統(tǒng)能更好地對調(diào)度機構(gòu)內(nèi)外系統(tǒng)提供完整、準確的數(shù)據(jù),解決了調(diào)度數(shù)據(jù)多出口問題,提升了調(diào)度專業(yè)的數(shù)字化水平。同時,調(diào)度運行數(shù)據(jù)匯集系統(tǒng)存儲的電網(wǎng)運行數(shù)據(jù)為應用提供的運行數(shù)據(jù)查詢統(tǒng)計以及電網(wǎng)長期運行規(guī)律的挖掘、分析等服務,提高了調(diào)度運行精益化管理水平。