摘 要:隨著用電采集范圍的逐步擴(kuò)大,以采集系統(tǒng)全覆蓋為支撐,深入挖掘采集系統(tǒng)數(shù)據(jù),深化應(yīng)用采集系統(tǒng)功能,利用基于實時數(shù)據(jù)庫、云計算一體相融合技術(shù)應(yīng)運(yùn)而生,即實現(xiàn)由傳統(tǒng)的“集中分析->集中處理->統(tǒng)一展示”到“分布式分析->分布式處理->統(tǒng)一展示”的過度,用電采集信息數(shù)據(jù)入庫采用實時數(shù)據(jù)流處理技術(shù),底層數(shù)據(jù)管理采用DataCube分布式基礎(chǔ)架構(gòu),基于云存儲文件系統(tǒng),以實現(xiàn)類關(guān)系型數(shù)據(jù)庫的復(fù)雜關(guān)聯(lián)查詢。主要研究內(nèi)容:(1)研究基于用電信息采集系統(tǒng)的數(shù)據(jù)實時處理支撐技術(shù),解決用電信息實時高效存儲、實時分析、實時計算等時效性比較高的一系列需求;(2)設(shè)計通用的數(shù)據(jù)接口,為配電生產(chǎn)指揮平臺、營銷業(yè)務(wù)應(yīng)用系統(tǒng)、營銷GIS系統(tǒng)等提供數(shù)據(jù)分析及數(shù)據(jù)處理支持;(3)研究針對海量數(shù)據(jù)實時在線分析挖掘和統(tǒng)計的功能,為有序用電智能決策分析提供強(qiáng)有力的依據(jù)。
關(guān)鍵詞:用電采集;實時數(shù)據(jù)庫;分布式存儲與計算;海量數(shù)據(jù);云計算;云存儲
1 理論基礎(chǔ)
云實時數(shù)據(jù)庫在用電信息采集系統(tǒng)的提出是以在互聯(lián)網(wǎng)、智慧城市、智慧交通和智能視頻監(jiān)控領(lǐng)域已經(jīng)商業(yè)化應(yīng)用的云計算技術(shù),作為對用電信息采集系統(tǒng)海量數(shù)據(jù)處理性能提升的主要技術(shù)手段,采用松耦合的數(shù)據(jù)分流的方式構(gòu)建新型用采主站數(shù)據(jù)共享平臺,實現(xiàn)對海量數(shù)據(jù)處理性能的提升。
采用云計算的分布式文件存儲與關(guān)系型數(shù)據(jù)庫共存的模式,采用實時分布式存儲技術(shù)和當(dāng)前關(guān)系型數(shù)據(jù)庫結(jié)合的方式,借助云計算和關(guān)系型數(shù)據(jù)庫的優(yōu)勢互補(bǔ),實現(xiàn)系統(tǒng)性能提升。
2 設(shè)計原理
2.1 優(yōu)化存儲策略
云實時存儲平臺采用分布式的存儲機(jī)制,將數(shù)據(jù)分散存儲在多臺獨(dú)立的存儲服務(wù)器上,在每個服務(wù)器節(jié)點(diǎn)上運(yùn)行云實時存儲平臺相應(yīng)的軟件服務(wù)程序模塊。
由一對元數(shù)據(jù)服務(wù)器及其管理的存儲服務(wù)器節(jié)點(diǎn)所提供的存儲空間稱為一個卷空間,不同的卷空間由卷管理服務(wù)器虛擬化統(tǒng)一管理,對外可提供統(tǒng)一的海量存儲空間。管理監(jiān)控中心提供統(tǒng)一易用的WEB配置管理監(jiān)控平臺,提供設(shè)備監(jiān)控、空間監(jiān)控、文件監(jiān)控、服務(wù)監(jiān)控、用戶認(rèn)證管理、配額管理、故障告警及預(yù)警等功能,實現(xiàn)智能化管理。
2.2 分布式文件存儲系統(tǒng)
分布式文件系統(tǒng)包括卷管理、元數(shù)據(jù)管理、塊數(shù)據(jù)管理服務(wù)。元數(shù)據(jù)是指文件的名稱、屬性、數(shù)據(jù)塊位置信息等,元數(shù)據(jù)管理通過元數(shù)據(jù)服務(wù)程序完成。
實現(xiàn)元數(shù)據(jù)服務(wù)器主備雙機(jī)高可用,確保7*24小時不間斷服務(wù)。通過元數(shù)據(jù)遠(yuǎn)程多機(jī)冗余備份功能,實現(xiàn)在多臺其它機(jī)器上備份元數(shù)據(jù),當(dāng)元數(shù)據(jù)服務(wù)器損壞,可以通過備份的元數(shù)據(jù)重新恢復(fù)服務(wù),確保數(shù)據(jù)可以完整找回。架構(gòu)實現(xiàn)了統(tǒng)一調(diào)度,負(fù)載均衡和流量自動分擔(dān)功能,多個存儲節(jié)點(diǎn)同時對外提供數(shù)據(jù)流服務(wù),系統(tǒng)根據(jù)磁盤空間使用比例進(jìn)行資源優(yōu)化配置。分布式文件系統(tǒng)具有自動冗余重建功能,確保損壞的數(shù)據(jù)塊能夠被解碼或編碼后存儲到在線的正常的存儲服務(wù)器節(jié)點(diǎn)上。
2.3 存儲訪問接口
分布式文件系統(tǒng)提供符合POSIX規(guī)范的文件系統(tǒng)訪問接口。支持Linux、Windows、MaxOS X等操作系統(tǒng)平臺??蓪⒃茖崟r存儲平臺提供的存儲空間掛接為本地目錄或本地盤符來使用。用戶操作云實時存儲平臺空間和操作本地文件相同。云實時存儲平臺為采集系統(tǒng)提供API函數(shù)、JDBC、ODBC、SQL等方式實現(xiàn)數(shù)據(jù)的存儲和查詢管理;為其他系統(tǒng)提供API函數(shù)、JDBC、ODBC、Web Service服務(wù)等接口形式,滿足數(shù)據(jù)的共享查詢和數(shù)據(jù)挖掘。云實時存儲平臺系統(tǒng)采用分布式的方式,把原先計算密集型復(fù)雜任務(wù),進(jìn)行原子性分解,分配到不同的任務(wù)處理節(jié)點(diǎn)上,進(jìn)行并發(fā)同步處理,提高數(shù)據(jù)處理效率和數(shù)據(jù)處理容量,保證數(shù)據(jù)處理性能。由于云實時存儲平臺系統(tǒng)的高效IO訪問能力,保證數(shù)據(jù)抽取寫入的效率,在任務(wù)處理過程中大量節(jié)約了時間。提高了數(shù)據(jù)計算任務(wù)處理的效率。
2.4 分級動態(tài)存儲方式
云實時存儲平臺采用了分級技術(shù),把存儲信息根據(jù)信息的重要性、訪問頻率等對信息進(jìn)行了分級存儲,將文件的元數(shù)據(jù)等訪問頻繁的重要信息時刻保持在線存儲,開機(jī)后保存在內(nèi)存中,可以隨時讀取和修改,以滿足前端應(yīng)用服務(wù)器或數(shù)據(jù)庫對數(shù)據(jù)訪問的速度要求。將其他備份數(shù)據(jù)、冗余容錯的數(shù)據(jù)等訪問量小的數(shù)據(jù)等采用廉價的SATA硬盤存儲。對于訪問量小的數(shù)據(jù)采用離線存儲,一旦需要訪問這些數(shù)據(jù)可以使用相應(yīng)的喚醒策略來實現(xiàn)將離線轉(zhuǎn)為在線。
3 技術(shù)分析與數(shù)據(jù)處理
3.1 高速并發(fā)訪問技術(shù)
客戶端首先訪問主服務(wù)器節(jié)點(diǎn),獲取將要與之進(jìn)行交互的塊服務(wù)器信息,通過訪問塊服務(wù)器完成數(shù)據(jù)的存取。有效解決了控制流和數(shù)據(jù)流的分離,客戶端與主服務(wù)器間只有控制流,沒有數(shù)據(jù)流,自然就降低了主服務(wù)器的負(fù)載,有效解決了系統(tǒng)性能的一個瓶頸。而客戶端與塊服務(wù)器間直傳輸數(shù)據(jù)流,文件被分成多個塊進(jìn)行分布式存儲,客戶端可同時訪問多個塊服務(wù)器,系統(tǒng)的整個I/O高度并行,整體并發(fā)訪問能力得到提高。
3.2 高可用技術(shù)
系統(tǒng)中的所有服務(wù)節(jié)點(diǎn)均是通過網(wǎng)絡(luò)連接在一起,由于采用了高可靠的容錯機(jī)制,系統(tǒng)增減節(jié)點(diǎn)不必停止服務(wù),可在線增減存儲節(jié)點(diǎn),存儲節(jié)點(diǎn)和元數(shù)據(jù)節(jié)點(diǎn)間通過注冊管理機(jī)制自適應(yīng)管理,實現(xiàn)自動伸縮。元數(shù)據(jù)服務(wù)器以及各個應(yīng)用采用主備雙機(jī)熱備技術(shù),主機(jī)故障,備機(jī)自動接替其工作,對外服務(wù)不停止。
3.3 云分布式調(diào)度引擎
云分布式調(diào)度引擎是建立于虛擬化資源層之上,統(tǒng)一調(diào)度,統(tǒng)一配置的管理平臺,用于對集群中任務(wù)實時的處理調(diào)度,實時結(jié)果集的反饋,集群的負(fù)載均衡,失敗調(diào)度,集中管理,集中配置的平臺。用來保證整個集群的超低人員干預(yù)。同時,提供完善的集群伸縮機(jī)制為整個服務(wù)提供更高的可靠性。云分布式調(diào)度引擎調(diào)度平臺是由一組管理節(jié)點(diǎn)(Master Node)和一組處理節(jié)點(diǎn)(Task Node)組成,管理節(jié)點(diǎn)組是一組基于Webserver的RPC服務(wù)器,保證每個管理節(jié)點(diǎn)中的鏡像信息的實時同步。處理節(jié)點(diǎn)組提供了簡單高效的自動化部署方案,當(dāng)新服務(wù)器加入處理集群后,會主動的與管理節(jié)點(diǎn)組同步心跳信息,從同一配置服務(wù)器ZooKeeper上獲取相關(guān)配置信息,通過WebServer服務(wù)獲取任務(wù)列表,開始執(zhí)行數(shù)據(jù)處理工作。
3.4 基于Hadoop的數(shù)據(jù)并行處理技術(shù)
Hadoop架構(gòu)主要包含數(shù)據(jù)管理存儲、任務(wù)管理、任務(wù)執(zhí)行數(shù)據(jù)存儲幾個角色,數(shù)據(jù)管理存儲文件系統(tǒng)的元數(shù)據(jù)和編輯日志。任務(wù)管理在大多數(shù)情況下,這個任務(wù)會被放在不同的節(jié)點(diǎn)上。任務(wù)執(zhí)行節(jié)點(diǎn)與任務(wù)管理節(jié)點(diǎn)分工協(xié)作負(fù)責(zé)存儲數(shù)據(jù),獨(dú)立管理各自的任務(wù),并與任務(wù)管理交互。數(shù)據(jù)存儲根據(jù)需要存儲并檢索數(shù)據(jù)塊,并定期向數(shù)據(jù)管理發(fā)送它們所存儲的塊的列表。數(shù)據(jù)倉庫Hive基于HDFS,將存儲在HDFS中的結(jié)構(gòu)化數(shù)據(jù)文件映射為數(shù)據(jù)表,并提供類SQL的語言HiveQL對數(shù)據(jù)表進(jìn)行操作。Hive能夠?qū)iveQL解析成MapReduce可執(zhí)行計劃,并按照該計劃生成MapReduce任務(wù)后,提交到Hadoop集群處理,極大的提高了Hadoop架構(gòu)的處理能力。
4 應(yīng)用工作原理
(1)在原系統(tǒng)的基礎(chǔ)上添加關(guān)系數(shù)據(jù)庫與云實時存儲平臺及云實時數(shù)據(jù)庫計算平臺系統(tǒng),解決海量數(shù)據(jù)存儲與處理面臨的性能問題;(2)前置機(jī)集群將所有采集數(shù)據(jù)寫入云實時存儲平臺,將費(fèi)控、參數(shù)下發(fā)等實時交易類數(shù)據(jù)、告警數(shù)據(jù)寫入關(guān)系數(shù)據(jù)庫,提高實時業(yè)務(wù)處理性能;(3)過渡階段前置機(jī)集群同時向原系統(tǒng)數(shù)據(jù)庫寫入采集數(shù)據(jù),保持原系統(tǒng)業(yè)務(wù)流程,避免改造應(yīng)用可能帶來的問題影響原系統(tǒng)的運(yùn)行;(4)云實時存儲平臺可提供API、ODBC、JDBC、SQL語句、Web Service等接口方式,實現(xiàn)云端的數(shù)據(jù)訪問。
5 應(yīng)用實施結(jié)論
面向用電信息采集系統(tǒng)的云實時數(shù)據(jù)庫分析設(shè)計采用平臺化的理念,整合云計算和電力業(yè)務(wù)應(yīng)用技術(shù),利用云計算和關(guān)系數(shù)據(jù)庫互補(bǔ)的策略,以云計算技術(shù)為核心,構(gòu)建電力智能用電私有云,實現(xiàn)用電信息采集系統(tǒng)海量用電數(shù)據(jù)存儲、計算和處理,提高用電數(shù)據(jù)挖掘和利用效率,為智能用電互動化服務(wù)和國家節(jié)能減排提供數(shù)據(jù)服務(wù)和技術(shù)支撐。