國網(wǎng)信息通信產(chǎn)業(yè)集團(tuán)有限公司 劉才華 稂龍亞 國網(wǎng)湖北送變電工程有限公司 王思奇 國網(wǎng)湖南輸電檢修公司 姜 勝
近些年來,隨著大數(shù)據(jù)的不斷發(fā)展,實(shí)時(shí)計(jì)算已經(jīng)成為各個(gè)行業(yè)發(fā)展中重點(diǎn)關(guān)注的問題?;诖髷?shù)據(jù)背景下,各個(gè)行業(yè)每天都在產(chǎn)生海量的數(shù)據(jù),但海量的數(shù)據(jù)在處理方面也有一定的難度,特別對于電網(wǎng)輸電設(shè)備來說,由于每天所產(chǎn)生的數(shù)據(jù)可能會達(dá)到上千萬條,為加強(qiáng)對電力大數(shù)據(jù)的處理,有必要加強(qiáng)多數(shù)據(jù)流實(shí)時(shí)處理技術(shù)的深入研究,并發(fā)揮出多數(shù)據(jù)流實(shí)時(shí)處理技術(shù)的優(yōu)勢,全面提升數(shù)據(jù)處理的效率,進(jìn)而有效的解決電力數(shù)據(jù)處理緩慢與存儲困難等問題,以便更好的促進(jìn)電力行業(yè)的良好發(fā)展。
電力大數(shù)據(jù)流計(jì)算服務(wù)體系的主要目的就是對分布式多數(shù)據(jù)流處理的底層技術(shù)細(xì)節(jié)進(jìn)行屏蔽,并利用性能較高的數(shù)據(jù)流計(jì)算能力、在線分析能力、關(guān)聯(lián)分析能力等進(jìn)行封裝,并結(jié)合應(yīng)用請求以及用戶行為,設(shè)計(jì)與提供不同的流計(jì)算服務(wù),以便打造基于不同用戶的高層次概念模型。
從電力業(yè)務(wù)的應(yīng)用特征出發(fā),常見的數(shù)據(jù)流典型處理問題大多分為以下幾種,分別是異常檢測、時(shí)間窗口統(tǒng)計(jì)、在線轉(zhuǎn)換清洗以及模型訓(xùn)練等等。而在電力系統(tǒng)的運(yùn)行性,電力業(yè)務(wù)工作人員需要主動承擔(dān)系統(tǒng)的相關(guān)系列任務(wù),來實(shí)現(xiàn)數(shù)據(jù)流的有序、有效處理,借助相關(guān)的服務(wù)接口,將數(shù)據(jù)處理需求傳達(dá)到計(jì)算、分析、資源監(jiān)控等不同的層面,讓廣大的用戶可以使用完成封裝的處理模型,并進(jìn)行相關(guān)的應(yīng)用部署[1]。
數(shù)據(jù)分析是電力大數(shù)據(jù)處理中的重點(diǎn),借助相關(guān)的運(yùn)算可以圍繞數(shù)據(jù)進(jìn)行算法計(jì)算、模型評估以及系統(tǒng)管理等,借此來實(shí)現(xiàn)數(shù)據(jù)的處理。其中分析算法主要包含兩部分內(nèi)容,分別是單數(shù)據(jù)流以及多數(shù)據(jù)流的算法分析;模型構(gòu)建評估則指的是經(jīng)過訓(xùn)練獲取數(shù)據(jù)挖掘模型,而模型評估能夠加強(qiáng)數(shù)據(jù)挖掘模型準(zhǔn)確度的深入分析,廣大的用戶也可以根據(jù)評估的結(jié)果對有關(guān)參數(shù)進(jìn)行優(yōu)化配置;模型流程發(fā)布,指的是發(fā)布數(shù)據(jù)挖掘模型的流程,從而為電力業(yè)務(wù)系統(tǒng)提供流式數(shù)據(jù)實(shí)時(shí)處理的功能;模型流程管理則主要包括版本管理、停用預(yù)測等,其主要目的就是對數(shù)據(jù)挖掘模型流程服務(wù)進(jìn)行管理。
在大數(shù)據(jù)處理方面,電力開發(fā)方面的工作人員需進(jìn)行編程處理,通過為其提供多種編程接口,如分布式消息隊(duì)列輸入、流處理初始化、數(shù)據(jù)轉(zhuǎn)化等編程接口,開發(fā)人員結(jié)合實(shí)際應(yīng)用,在相應(yīng)的編程接口,對相應(yīng)的電力業(yè)務(wù)實(shí)時(shí)邏輯進(jìn)行編寫,并利用參數(shù)調(diào)整,如計(jì)算模式、監(jiān)聽源地址等,將編寫的程序等發(fā)送到電力數(shù)據(jù)實(shí)時(shí)流計(jì)算處理平臺中,以便促使計(jì)算任務(wù)實(shí)現(xiàn)全面的部署。
電力大數(shù)據(jù)實(shí)時(shí)流計(jì)算處理平臺,可以統(tǒng)一提供實(shí)時(shí)監(jiān)督方面的服務(wù),同時(shí)還能將有關(guān)的信息反饋定期的反饋到分級資源管理器,如數(shù)據(jù)規(guī)模、處理進(jìn)度、資源占用等信息,然后分級資源管理器將監(jiān)控信息反饋給中心資源管理器,實(shí)現(xiàn)分支信息與主干信息的有機(jī)聯(lián)系,并以圖、表等方式將流式計(jì)算任務(wù)的層級處理狀態(tài)展示給電力運(yùn)維管理人員。
電力大數(shù)據(jù)流計(jì)算服務(wù)體系,需對先進(jìn)技術(shù)進(jìn)行綜合應(yīng)用,借此構(gòu)建電力大數(shù)據(jù)實(shí)時(shí)流計(jì)算處理的平臺,該平臺的核心功能主要分為三個(gè)部分:數(shù)據(jù)即時(shí)采集、數(shù)據(jù)實(shí)時(shí)計(jì)算以及數(shù)據(jù)高效存儲。
電力大數(shù)據(jù)分析計(jì)算的重要前提就是數(shù)據(jù)采集,數(shù)據(jù)的實(shí)時(shí)采集能夠?yàn)閿?shù)據(jù)處理、建立模型提供良好的基礎(chǔ),但是數(shù)據(jù)采集與處理之間在同步方面還存在一定的問題,無法保證可以二者可以實(shí)現(xiàn)同步,這樣一來就會產(chǎn)生一定的誤差。對此,就需要建立數(shù)據(jù)緩存區(qū),來加強(qiáng)對數(shù)據(jù)的處理,一般來說緩存區(qū)建立的方法有兩種,分別是內(nèi)存緩存、文件緩存,而二者的結(jié)合應(yīng)用,可以有效的對性能以及數(shù)據(jù)安全問題進(jìn)行科學(xué)的處理,從而保證了數(shù)據(jù)處理的安全和效率。
處理采集到的數(shù)據(jù),是電力大數(shù)據(jù)實(shí)時(shí)流計(jì)算處理平臺中的重要環(huán)節(jié),而數(shù)據(jù)的有效處理需要借助計(jì)算平臺,利用滑動窗口的方式輸入多電網(wǎng)數(shù)據(jù)流,并借助多數(shù)據(jù)流協(xié)同計(jì)算的方法,對數(shù)據(jù)流進(jìn)行異步優(yōu)化,從而有效的加強(qiáng)對多數(shù)據(jù)流的實(shí)時(shí)處理[2]。
一般來說,當(dāng)計(jì)算將結(jié)果與存儲數(shù)據(jù)比較大的情況下,這時(shí)候就需要進(jìn)行數(shù)據(jù)分流處理,當(dāng)多數(shù)據(jù)處理結(jié)果比較小,且重要性不高時(shí),可以將其存儲到分布式列式數(shù)據(jù)庫;但使用該方法進(jìn)行存儲,也有一定的缺點(diǎn),即數(shù)據(jù)存儲的穩(wěn)定性不足,甚至可能會出現(xiàn)數(shù)據(jù)丟失問題。相反,當(dāng)多數(shù)據(jù)處理結(jié)果比較大且重要性比較高,這時(shí)候可以選擇分布式消息隊(duì)列Kafka,然后將其存儲到分布式列式數(shù)據(jù)庫內(nèi),該方式發(fā)揮了Kafka 緩存機(jī)制的優(yōu)勢,保證了數(shù)據(jù)的穩(wěn)定性,還能避免數(shù)據(jù)的不安全。
通過對多個(gè)廠站不同時(shí)間點(diǎn)的設(shè)備進(jìn)行數(shù)據(jù)監(jiān)測,并對其進(jìn)行分析,在此基礎(chǔ)上提出有效的改進(jìn)措施。借助這樣的方式,電力系統(tǒng)能夠采集到相關(guān)的大數(shù)據(jù)流,借助監(jiān)測功能,能夠確定工作狀態(tài)等重要參數(shù),每秒都可以對1min 內(nèi)的數(shù)據(jù)實(shí)時(shí)采集和監(jiān)測,但是由于監(jiān)測的數(shù)據(jù)流比較大,會占用較大的存儲空間,這就需要對使用空間進(jìn)行壓縮,使用滑動窗口來對電力大數(shù)據(jù)流處理步驟進(jìn)行設(shè)計(jì)。如果滑動窗口的時(shí)間是1s,這時(shí)滑動窗口可以分為60個(gè)基本滑動小窗口,并對其閾值進(jìn)行分析,借此對數(shù)據(jù)進(jìn)行并行判斷,在計(jì)算完基本視窗,并將60個(gè)基本視窗的離群值進(jìn)行計(jì)算,而計(jì)算出的離群值就是需要挖掘的數(shù)據(jù)流[3]。
為保證可以得到更準(zhǔn)確的多數(shù)據(jù)流系數(shù),可先設(shè)置a 條數(shù)據(jù)流,并將相關(guān)的數(shù)據(jù)流組成,使其成為矩陣,在此基礎(chǔ)上得到a 陣階數(shù)。而所得到的任意數(shù)據(jù)流的相關(guān)系數(shù)為,其中λa指的是滑動窗口數(shù)據(jù)的內(nèi)積;Wa 指的是相關(guān)系數(shù)方陣的空間轉(zhuǎn)換系數(shù),λa的計(jì)算開銷是最大的,從而可以起到促使存儲空間的擴(kuò)展,將a 陣階數(shù)抽象到計(jì)算網(wǎng)絡(luò)內(nèi),并為其配置相關(guān)的系數(shù),來獲得特定滑動窗口。并設(shè)置線程塊索引方式,對數(shù)據(jù)流相關(guān)系數(shù)進(jìn)行方陣索引,在所有的線程塊中,使用2×104個(gè)線程進(jìn)行并行計(jì)算,而其對應(yīng)窗口中的2×105個(gè)數(shù)據(jù)位積,則使用協(xié)議算對其位積之和進(jìn)行計(jì)算,并進(jìn)行分段累加,如此得到λa,根據(jù)任意數(shù)據(jù)流中的有關(guān)系數(shù)來獲取最終的數(shù)值。當(dāng)行索引≤列索引時(shí),線程塊將不在下三角數(shù)組中。
滑動窗模型的最突出優(yōu)勢就是對不同粒度的時(shí)間單元進(jìn)行了定義,即數(shù)據(jù)采集以及基本窗口滑動,在此基礎(chǔ)上正式提出跨總線四層時(shí)序空間模型:第一層時(shí)序,該層的主要目的就是緩沖IO 數(shù)據(jù),保證任意數(shù)據(jù)在采樣時(shí)間內(nèi)具有相同的安全標(biāo)識符,并將所有的標(biāo)識符相加,判斷是否達(dá)到了相關(guān)的數(shù)據(jù),如果沒有達(dá)到,這時(shí)候可以選擇使用線性插值的方法進(jìn)行處理;第二層時(shí)序,該層設(shè)置了緩沖層,可以有效的減少設(shè)備間的數(shù)據(jù)交換次數(shù),并縮短交換時(shí)間,從而提高數(shù)據(jù)并行計(jì)算的密度。數(shù)據(jù)緩沖層是大規(guī)模數(shù)據(jù)流并行處理方式中的最小單元,可以起到緩沖普通子窗口并更新其他窗口,促進(jìn)緩沖層內(nèi)部數(shù)據(jù)的實(shí)時(shí)更新;第三層時(shí)序,主要任務(wù)就是借助緩沖層將新的滑動窗口交換到GPU 設(shè)備存儲器內(nèi),對數(shù)據(jù)流增量進(jìn)行維護(hù),匯總后將其傳輸?shù)叫畔熘?;第四層時(shí)序,可以存儲截面矩陣的數(shù)據(jù),并對復(fù)雜數(shù)據(jù)流進(jìn)行挖掘。
使用數(shù)據(jù)處理器對跨總線四層時(shí)序空間模型進(jìn)行復(fù)雜度降載,設(shè)置存放計(jì)算結(jié)果的數(shù)組容量為a(a-1)/2,但由于多數(shù)據(jù)流相關(guān)系數(shù)的所處環(huán)境比較復(fù)雜,直接影響了計(jì)算效率,所以在處理相關(guān)問題的過程中,需要降低空間維度,從而提高大數(shù)據(jù)的處理效率[4]。
多數(shù)據(jù)流協(xié)同計(jì)算,通過利用體系以及并行處理算法,并借助數(shù)據(jù)緩存層來進(jìn)行任務(wù)的分析與合并,具體步驟如下:第一,建立數(shù)據(jù)流協(xié)同計(jì)算模型;第二,構(gòu)建全部函數(shù);第三,結(jié)合Worker 建立本地函數(shù)。通過全局更新,并建立和實(shí)施多數(shù)據(jù)流處理方案,可以將廣域分布的讀數(shù)據(jù)流,劃分成若干數(shù)據(jù)塊,并塊數(shù)據(jù)塊分別設(shè)置一名工作人員。而業(yè)務(wù)人員、分析人員、開發(fā)人員以及管理人員在具體的操作中會涉及到較多種類的服務(wù)器,主要就是對模型進(jìn)行負(fù)責(zé),而且模型的參數(shù)也分別存儲在多個(gè)主服務(wù)器上,并根據(jù)水平進(jìn)行劃分。
以某省份地區(qū)為例,電力大數(shù)據(jù)量包含所有居民的實(shí)際用電情況,數(shù)據(jù)采集時(shí)間的間隔為一天,一天內(nèi)居民用電數(shù)據(jù)大多是十幾億項(xiàng),從中選取部分?jǐn)?shù)據(jù)進(jìn)行仿真試驗(yàn),對所提方法的性能進(jìn)行驗(yàn)證。使用三臺配置相同的PC 主機(jī)展開試驗(yàn)。以110kV 變壓器為例,并從繞組光纖測溫屬性數(shù)據(jù)中選擇部分試驗(yàn)數(shù)據(jù),并將滑動窗口時(shí)間設(shè)置為1min,對不同集群環(huán)境中的平均處理延時(shí)集群節(jié)點(diǎn)進(jìn)行分析[5]。
設(shè)置不同的數(shù)據(jù)量,測試處理延時(shí)。設(shè)置4個(gè)全局工作流,并對簇節(jié)點(diǎn)數(shù)以及滑動窗口處理的結(jié)果進(jìn)行觀察,對接收到處理的元組平均處理延遲進(jìn)行統(tǒng)計(jì)。根據(jù)結(jié)果可知,數(shù)據(jù)量越少,數(shù)據(jù)處理的時(shí)間也越短,如當(dāng)數(shù)據(jù)量在250GB 時(shí),但由于群集的擴(kuò)展,任務(wù)分配以及數(shù)據(jù)傳輸也會消耗一定的資源與時(shí)間,在拓?fù)淠P吞幚頂?shù)據(jù)時(shí)也會有一定的延遲,但隨著資料規(guī)模的增大,系統(tǒng)處理能力也會逐漸顯現(xiàn),自然平均處理延時(shí)也會減少。
為驗(yàn)證所提方法的空間壓縮能力,可以結(jié)合CPU 占用量來進(jìn)行分析,在系統(tǒng)內(nèi)上傳75-85MB大小的電力數(shù)據(jù)文件,并對所提技術(shù)應(yīng)用后的耗能進(jìn)行檢驗(yàn),結(jié)果顯示應(yīng)用后文件大小上升了,而CPU 占比也由5%下降到0.5%,可見在壓縮數(shù)據(jù)的同時(shí),大大的提高了系統(tǒng)的實(shí)際運(yùn)行效率[6]。
綜上所述,如今電力大數(shù)據(jù)已經(jīng)得到了廣泛應(yīng)用,為保證可以更好的滿足大數(shù)據(jù)實(shí)時(shí)處理方面的需求,就需要加強(qiáng)多數(shù)據(jù)流實(shí)時(shí)處理技術(shù)的分析和應(yīng)用。通過構(gòu)建真實(shí)的環(huán)境進(jìn)行試驗(yàn),發(fā)現(xiàn)使用數(shù)據(jù)處理器可以大大的提升數(shù)據(jù)流的信息數(shù)據(jù)處理,同時(shí)也能有效的減少計(jì)算量,可以更快速、實(shí)時(shí)的對數(shù)據(jù)流進(jìn)行有效的處理,讓電力數(shù)據(jù)處理緩慢以及存儲難的問題有效的得到解決。