王建璽,岳 圓
(1.平頂山學(xué)院 計(jì)算機(jī)學(xué)院,河南 平頂山 467000;2.中國人民解放軍61267部隊(duì),北京 101114)
電力設(shè)備的老化損壞是停電事故的主要原因,為了能夠及時(shí)發(fā)現(xiàn)電力設(shè)備的故障和問題,對(duì)供電系統(tǒng)的供電監(jiān)控?cái)?shù)據(jù)進(jìn)行合適的壓縮存取就非常重要。通過對(duì)供電監(jiān)控?cái)?shù)據(jù)的壓縮存取,可以及時(shí)獲得供電系統(tǒng)的全部信息[1]。
為了得到有價(jià)值并能反應(yīng)供電系統(tǒng)狀態(tài)的特征,需要從格式多樣、規(guī)模巨大及價(jià)值密度低的大數(shù)據(jù)中提取有用的數(shù)據(jù)并進(jìn)行分析。云計(jì)算技術(shù)能夠有效提高供電系統(tǒng)狀態(tài)評(píng)估水平,顯著減少停電等電網(wǎng)安全事故發(fā)生率。
Spark云計(jì)算技術(shù)由數(shù)據(jù)存儲(chǔ)、API及資源管理等3個(gè)主要組件構(gòu)成[2]。Spark云計(jì)算技術(shù)最具有特點(diǎn)的一個(gè)概念就是基于彈性分布的供電監(jiān)控?cái)?shù)據(jù)集?;趶椥苑植嫉墓╇姳O(jiān)控?cái)?shù)據(jù)集是一個(gè)供電監(jiān)控?cái)?shù)據(jù)的集合,可以看做是Spark云計(jì)算技術(shù)一個(gè)特殊的定義類,Spark云計(jì)算技術(shù)主要的操作是圍繞基于彈性分布的供電監(jiān)控?cái)?shù)據(jù)集來進(jìn)行的[3]。從原文件中獲取需要的供電監(jiān)控?cái)?shù)據(jù)來創(chuàng)建基于彈性分布的供電監(jiān)控?cái)?shù)據(jù)集,并將供電監(jiān)控?cái)?shù)據(jù)存儲(chǔ)到其中,可以通過對(duì)Spark云計(jì)算技術(shù)進(jìn)行轉(zhuǎn)換操作獲得基于彈性分布的供電監(jiān)控?cái)?shù)據(jù)集。
基于Spark云計(jì)算的聚類方法根據(jù)供電監(jiān)控?cái)?shù)據(jù)集在供電系統(tǒng)中分布的稠密程度進(jìn)行聚類,聚類開始前,數(shù)據(jù)集中的供電監(jiān)控?cái)?shù)據(jù)不需要設(shè)定簇的數(shù)量,因此適合對(duì)云計(jì)算下的供電監(jiān)控?cái)?shù)據(jù)進(jìn)行壓縮和存取。其中DBSCAN算法是基于Spark云計(jì)算的聚類算法中具有代表性的聚類算法,DBSCAN算法操作步驟如下。
輸入為供電監(jiān)控?cái)?shù)據(jù)集D,參數(shù)選擇MinPts,ε輸出為簇集合。將供電監(jiān)控?cái)?shù)據(jù)集中的所有數(shù)據(jù)對(duì)象都標(biāo)記成為unvisited;從供電監(jiān)控?cái)?shù)據(jù)集中隨機(jī)選取一個(gè)從未被訪問的供電監(jiān)控?cái)?shù)據(jù)對(duì)象p,將供電監(jiān)控?cái)?shù)據(jù)對(duì)象p標(biāo)記成已經(jīng)被訪問過的數(shù)據(jù)對(duì)象;如果被檢測的對(duì)象屬于供電監(jiān)控?cái)?shù)據(jù)對(duì)象p的ε鄰域,且供電監(jiān)控?cái)?shù)據(jù)點(diǎn)在ε鄰域內(nèi)的個(gè)數(shù)大于等于MinPts個(gè);創(chuàng)建新的供電監(jiān)控?cái)?shù)據(jù)聚類簇A,并把供電監(jiān)控?cái)?shù)據(jù)對(duì)象p添加到其中;令N是供電監(jiān)控?cái)?shù)據(jù)對(duì)象p的ε鄰域中所有供電監(jiān)控?cái)?shù)據(jù)的集合;將N中供電監(jiān)控?cái)?shù)據(jù)點(diǎn)標(biāo)記為pi;如果供電監(jiān)控?cái)?shù)據(jù)點(diǎn)pi沒有被劃分成為聚類簇,將供電監(jiān)控?cái)?shù)據(jù)點(diǎn)pi添加到另一個(gè)聚類簇C中,并輸出;將供電監(jiān)控?cái)?shù)據(jù)對(duì)象p標(biāo)記為噪聲數(shù)據(jù),Untill供電監(jiān)控?cái)?shù)據(jù)集D中不包含未被訪問過的供電監(jiān)控?cái)?shù)據(jù)對(duì)象。
傳統(tǒng)關(guān)系型數(shù)據(jù)庫中的供電監(jiān)控?cái)?shù)據(jù)壓縮存儲(chǔ)格式也是多種多樣的。供電監(jiān)控?cái)?shù)據(jù)檢索速率和檢索方式與數(shù)據(jù)的壓縮存取格式關(guān)系密切。實(shí)際的數(shù)據(jù)存儲(chǔ)檢索需求是存取格式的設(shè)計(jì)根據(jù),對(duì)一段連續(xù)時(shí)間內(nèi)的供電監(jiān)控?cái)?shù)進(jìn)行查詢是供電監(jiān)控?cái)?shù)據(jù)查詢的特點(diǎn),其包括查詢某段時(shí)間的平均值、最大值及最小值,或者是在一段時(shí)間內(nèi)符合查詢要求的數(shù)據(jù)。例如,查詢某一月某人的網(wǎng)上銀行消費(fèi)記錄,就是對(duì)單點(diǎn)數(shù)據(jù)的連續(xù)調(diào)查。還有一種情況是對(duì)多個(gè)對(duì)象同一時(shí)間段的數(shù)據(jù)查詢,如對(duì)3個(gè)人1個(gè)月業(yè)績的對(duì)比查詢,可以得到想要的數(shù)據(jù)。
圖1 云計(jì)算下供電監(jiān)控?cái)?shù)據(jù)壓縮存取流程圖
根據(jù)供電監(jiān)控?cái)?shù)據(jù)壓縮存取格式的確定,選擇一種適合云計(jì)算下的供電監(jiān)控?cái)?shù)據(jù)壓縮存取格式,基于Spark云計(jì)算技術(shù)的引入,構(gòu)建基于Spark云計(jì)算的聚類算法,實(shí)現(xiàn)云計(jì)算下供電監(jiān)控?cái)?shù)據(jù)壓縮存取。云計(jì)算下供電監(jiān)控?cái)?shù)據(jù)壓縮存取流程如圖1所示。
為了驗(yàn)證本文方法的可靠性,與傳統(tǒng)壓縮存取方法進(jìn)行對(duì)比實(shí)驗(yàn)。
為了保證本次實(shí)驗(yàn)結(jié)果具有鮮明的對(duì)比性,實(shí)驗(yàn)過程中,選擇同一種供電監(jiān)控?cái)?shù)據(jù)壓縮存取格式,保證供電監(jiān)控?cái)?shù)據(jù)的完整性,實(shí)驗(yàn)的具體操作步驟如下。選擇一套供電系統(tǒng),在供電系統(tǒng)中選取10組供電監(jiān)控?cái)?shù)據(jù),實(shí)驗(yàn)開始前檢查供電系統(tǒng)的運(yùn)行是否穩(wěn)定;為了提高本次對(duì)比實(shí)驗(yàn)的精準(zhǔn)度,引入供電監(jiān)控?cái)?shù)據(jù)壓縮存取效率作為本次實(shí)驗(yàn)的對(duì)比指標(biāo);將10組供電監(jiān)控?cái)?shù)據(jù)分別以兩種方法進(jìn)行對(duì)比;記錄實(shí)驗(yàn)結(jié)果并繪制供電監(jiān)控?cái)?shù)據(jù)壓縮存取效率曲線,如圖2所示。
圖2 供電監(jiān)控?cái)?shù)據(jù)壓縮存取效率曲線
由圖2可知,兩種壓縮存取方法的供電監(jiān)控?cái)?shù)據(jù)壓縮存取能力有很大差別,本文方法對(duì)于供電監(jiān)控?cái)?shù)據(jù)具有較高的壓縮存取能力,平均壓縮存取效率為87.35%,而傳統(tǒng)壓縮存取方法的壓縮存取能力明顯低于本文設(shè)計(jì)的壓縮存取方法。
本文對(duì)云計(jì)算下供電監(jiān)控?cái)?shù)據(jù)壓縮存取方法進(jìn)行了研究,通過引入Spark云計(jì)算技術(shù),構(gòu)建聚類算法,實(shí)現(xiàn)云計(jì)算下供電監(jiān)控?cái)?shù)據(jù)的壓縮存取。經(jīng)對(duì)比驗(yàn)證,本文方法在壓縮存取方面優(yōu)于傳統(tǒng)方法。