萬嬋, 江疆, 吳穹
(1.廣東電網(wǎng)有限責任公司, 廣東,廣州 510000;2.廣東電力信息科技有限公司, 廣東,廣州 510000)
隨著計算機技術(shù)的飛速發(fā)展,電力企業(yè)也逐步實現(xiàn)了信息化,而電網(wǎng)系統(tǒng)內(nèi)部產(chǎn)生的數(shù)據(jù)信息也在急劇增長[1-2]。當前現(xiàn)有系統(tǒng)未創(chuàng)建完備的索引功能,為了提高電網(wǎng)系統(tǒng)的運行效率,設(shè)計電網(wǎng)數(shù)據(jù)集市海量信息索引系統(tǒng)具有重要的意義[3]。
文獻[4]采用序貫貝葉斯搜索,通過調(diào)查噪聲容限,優(yōu)化目標函數(shù),查找相關(guān)文檔以進行技術(shù)輔助檢索,完成高召回信息檢索。但該系統(tǒng)查全率和效率較低,不能被廣泛使用。文獻[5]利用Agent實現(xiàn)信息在系統(tǒng)中的交互,分析信息索引等模塊主要功能,通過查詢機制實現(xiàn)電網(wǎng)數(shù)據(jù)信息檢索,完成索引系統(tǒng)設(shè)計。但該系統(tǒng)未建立數(shù)據(jù)信息排序列表,導(dǎo)致系統(tǒng)在檢索數(shù)據(jù)信息時穩(wěn)定性較差。
因此,提出考慮哈希索引的電網(wǎng)數(shù)據(jù)集市海量信息索引系統(tǒng)設(shè)計方法。聚類融合處理數(shù)據(jù)信息進行提取與檢索,提高系統(tǒng)查全率,結(jié)合哈希算法排序融合電網(wǎng)數(shù)據(jù)信息,提高系統(tǒng)檢索效率,利用三個層次的B/S體系結(jié)構(gòu),以此增強系統(tǒng)的安全性,并設(shè)計系統(tǒng)主要功能模塊,完成考慮哈希索引的電網(wǎng)數(shù)據(jù)集市海量信息索引系統(tǒng)設(shè)計。
為了提高電網(wǎng)數(shù)據(jù)集市海量信息索引系統(tǒng)的查全率,在系統(tǒng)設(shè)計之前,需要對其數(shù)據(jù)信息進行聚類融合處理。如果數(shù)據(jù)信息檢索輸出的關(guān)聯(lián)規(guī)則系數(shù)滿足0<α<2,電網(wǎng)數(shù)據(jù)信息的控制變量滿足1<μ<2,那么數(shù)據(jù)信息檢索的信息融合度為
E(x)=μ
(1)
如果電網(wǎng)上的數(shù)據(jù)信息分布符合1<μ<2,那么所檢索的狀態(tài)估計值X就是正向的,并且必須滿足數(shù)據(jù)信息檢索的輸出標準誤差:
(2)
電網(wǎng)數(shù)據(jù)信息檢索的關(guān)聯(lián)規(guī)則屬性集為
(3)
在對電網(wǎng)數(shù)據(jù)信息進行聚類融合處理的基礎(chǔ)上,能有效地進行數(shù)據(jù)的抽取與檢索,提升了系統(tǒng)的檢索查全率。設(shè)電網(wǎng)數(shù)據(jù)信息的聚類融合尺度為
(4)
引入模糊特征分組檢測方法,獲取電網(wǎng)底層的數(shù)據(jù)信息,設(shè)J(Wi)為數(shù)據(jù)信息分組檢測的統(tǒng)計變量,將其進行簡化為
(5)
根據(jù)差分進化方法,通過自適應(yīng)調(diào)節(jié)電網(wǎng)數(shù)據(jù)信息的檢索輸入控制參數(shù),線性迭代檢索過程。如果i≠j、j=1,…,m被滿足,則單一的檢索節(jié)點i的匹配函數(shù)是:
(6)
劃分電網(wǎng)數(shù)據(jù)信息的高維區(qū)域,所產(chǎn)生的數(shù)據(jù)信息檢索結(jié)果的子序列如下:
(7)
利用模糊分組聚類算法對不同屬性的電網(wǎng)數(shù)據(jù)信息進行了分組檢測,得到了以下結(jié)果:
(8)
檢索控制約束變量為
JI(nTB)=Acos(n*2πΔTB)-Bsin(n*2πΔTB)
(9)
通過提取的關(guān)聯(lián)規(guī)則量[6],得到數(shù)據(jù)信息檢索的關(guān)聯(lián)量為:
(10)
利用哈希算法對所檢索的數(shù)據(jù)信息進行排序融合,從而提高了系統(tǒng)檢索的效率?;诠K惴ǖ呐判蛄斜?,建立了以查詢數(shù)據(jù)為中心的加權(quán)無向圖:
G=(V,E,W)
(11)
式中,G中有邊的兩個節(jié)點是最接近的k個相鄰點。將V作為節(jié)點集,其產(chǎn)生的具體步驟如下:
(1) 在集合V中放置所有侯選和查詢數(shù)據(jù)信息q;
(2) 在集合V中合并該集合所有元素都是k的鄰近;
(3) 將集合V1中全部元素替換成與集合V1中的所有元素的k相鄰關(guān)系;
(4) 將集合V1中的所有元素并入V中;
(5) 重復(fù)步驟(3)、步驟(4),直到集合為空集合。
G中兩個節(jié)點之間的相似性與衰減因子之積,其權(quán)重為
(12)
式中,δ(q,i)是在節(jié)點i和q間最短的路徑,τ是衰減基數(shù),而Nk(i)是節(jié)點i的k鄰近?;诠K惴ǖ呐判蛄斜斫Y(jié)構(gòu)如圖1所示。
圖1 基于哈希排序列表的加權(quán)無向圖
圖1中的衰減系數(shù)幅度用最接近查詢數(shù)據(jù)信息的節(jié)點的尺寸來表示,重要性越高。
為了方便系統(tǒng)以后的升級與擴展,該系統(tǒng)在設(shè)計時將經(jīng)過排序后的電網(wǎng)數(shù)據(jù)信息和所有的運行程序安裝在Web服務(wù)器上,使客戶端實現(xiàn)真正的“0”配置,而且采用這種配置也十分有利于用戶的維修和使用,電網(wǎng)數(shù)據(jù)集市海量信息索引系統(tǒng)的創(chuàng)建環(huán)境如表1所示。
表1 電網(wǎng)數(shù)據(jù)集市海量信息索引系統(tǒng)環(huán)境參數(shù)
電網(wǎng)數(shù)據(jù)集市海量信息索引系統(tǒng)采用B/S三層體系結(jié)構(gòu)[7],系統(tǒng)的總體結(jié)構(gòu)如圖2所示。
圖2 系統(tǒng)概念模型與物理結(jié)構(gòu)
利用B/S三層體系結(jié)構(gòu),把整個系統(tǒng)分為三個不同的單元,即表示層、功能層和數(shù)據(jù)層,以防止客戶機直接控制電網(wǎng)數(shù)據(jù)信息庫,提高系統(tǒng)的安全系數(shù),防止非法入侵,加強系統(tǒng)在檢索時的穩(wěn)定性。
(1) 表示層
表示層是包含系統(tǒng)顯示邏輯的網(wǎng)頁瀏覽器,其主要任務(wù)是接收用戶的訪問和請求。通過網(wǎng)絡(luò)服務(wù)器驗證后,通過HTTP協(xié)議把所需的網(wǎng)頁發(fā)送給客戶端,然后在網(wǎng)絡(luò)瀏覽器上顯示出來。
(2) 功能層
功能層是包含了系統(tǒng)業(yè)務(wù)邏輯的Web服務(wù)器,具有應(yīng)用擴展的能力。主要的工作是從用戶方接受請求[8]。將一個擴展的應(yīng)用程序與一個系統(tǒng)數(shù)據(jù)庫相連,通過SQL來處理數(shù)據(jù),然后經(jīng)由數(shù)據(jù)庫服務(wù)器呈遞至Web服務(wù)器,然后傳回至客戶端。
(3) 數(shù)據(jù)層
數(shù)據(jù)層是指以上提到的數(shù)據(jù)庫服務(wù)器,包含了能夠處理數(shù)據(jù)的系統(tǒng)邏輯。其主要任務(wù)是接收數(shù)據(jù)庫的操作,完成查詢、刪除、修改等功能,并向服務(wù)器發(fā)送操作結(jié)果。
系統(tǒng)功能模塊設(shè)計如圖3所示。
圖3 系統(tǒng)功能模塊
(1) 身份驗證模塊
身份驗證模塊是一個用戶登錄的模塊,主要作用是通過用戶的IP地址、數(shù)據(jù)庫訪問權(quán)限、頁面跳轉(zhuǎn)等來進行身份認證。身份驗證模塊流程如圖4所示。
圖4 身份驗證模塊流程圖
從圖4中可以看出,利用用戶主機IP,在通過數(shù)據(jù)庫訪問進行頁面跳轉(zhuǎn),驗證用戶身份是否符合,若身份驗證符合,則進入檢索系統(tǒng)開始使用;若身份不符合,則需返回數(shù)據(jù)庫訪問步驟進行重新驗證。
(2) 賬戶管理模塊
建立賬戶管理模塊主要是為了保證數(shù)據(jù)庫的安全與正確性。帳號管理模塊主要是由系統(tǒng)的管理員來設(shè)定和管理帳號與權(quán)限組成,并對用戶登錄后的數(shù)據(jù)庫進行管理。
(3) 編碼維護模塊
編碼維護模塊的主要功能是建立電網(wǎng)數(shù)據(jù)信息的分類,實現(xiàn)數(shù)據(jù)信息的編碼管理,提高數(shù)據(jù)信息采集和數(shù)據(jù)信息檢索的效率,便于數(shù)據(jù)庫的維護。編碼維護模塊流程如圖5所示。
圖5 編碼維護模塊流程圖
根據(jù)圖5可知,提取后臺數(shù)據(jù)庫,對電網(wǎng)數(shù)據(jù)信息進行分類后,編碼電網(wǎng)數(shù)據(jù)信息,實現(xiàn)數(shù)據(jù)庫維護,提高信息采集和檢索效率。
(4) 數(shù)據(jù)信息采集模塊
數(shù)據(jù)信息采集模塊首先添加了數(shù)據(jù)信息采集,對所檢索的信息進行歸類,對有無重復(fù)的信息進行檢查,如果有,那么進行修改、刪除或保存;如果沒有,那么增加新的信息。數(shù)據(jù)信息采集模塊流程如圖6所示。
圖6 數(shù)據(jù)信息采集模塊流程圖
根據(jù)圖6可知,通過增加數(shù)據(jù)信息采集,檢索出信息所屬分類,驗證數(shù)據(jù)信息是否重復(fù),若信息重復(fù),則進行修改與刪除;若信息不重復(fù),則重新添加數(shù)據(jù)信息采集。
(5) 修改與刪除模塊
修改與刪除模塊的主要功能是實現(xiàn)電網(wǎng)數(shù)據(jù)信息的成批修改、刪除等功能,或者進行某一處或者某幾處的特定數(shù)據(jù)信息修改與刪除。
(6) 數(shù)據(jù)信息檢索模塊
數(shù)據(jù)信息檢索模塊的主要作用是把檢索到的數(shù)據(jù)信息轉(zhuǎn)換為編程語言,連接數(shù)據(jù)庫進行提交、檢索,分頁顯示,最終按需要檢索和顯示有關(guān)的所有信息。數(shù)據(jù)信息檢索模塊流程如圖7所示。
根據(jù)圖7可知,將數(shù)據(jù)信息翻譯為檢索系統(tǒng)程序語言,并提交至數(shù)據(jù)庫進行檢索,若檢索結(jié)果為空,則輸出空結(jié)果;若檢索結(jié)果不為空,則顯示檢索信息。
圖7 數(shù)據(jù)信息檢索模塊流程圖
為驗證所提方法是否有效,實驗對文獻[4]方法、文獻[5]方法和所提方法進行檢索效率、查全率和穩(wěn)定性對比測試。基于Lucene實現(xiàn)系統(tǒng)主要功能模塊關(guān)鍵代碼如下:
public static void main(String[] args) throws IOException { String indexDir="C:UsersasusDesktopjavainformation-retrieval-systemindex";BufferedReader br = new BufferedReader(new InputStream-Reader(System.in));String str = null;System.out.println("Please enter the keywords you want to search:");try { str = br.readLine(); System.out.println();} catch (IOException e1) {e1.printStackTrace();} String temp = str;String[] suggestions = checkWord(str);if (suggestions != null && suggestions.length != 0){ System.out.println("What you may want to enter is:"); for(int i = 0; i < suggestions.length; i++){ System.out.println((i+1) + " : " + suggestions[i]);} System.out.println("Please select one of the correct key-words above (enter 1 ^ 5), or continue to search with the original word (enter 0)"); str = br.readLine(); System.out.println(); if (str != "0"){ str = suggestions[str.charAt(0) - '1']; } else{ str = temp; }}try { search(indexDir,str);} catch (Exception e) { e.printStackTrace();}}
實驗背景如表2所示。
表2 實驗環(huán)境與各項參數(shù)
文獻[4]方法、文獻[5]方法和所提方法的檢索效率對比結(jié)果如圖8所示。
圖8 不同方法的檢索效率對比結(jié)果
從圖8可以看出,與文獻[4]方法和文獻[5]方法相比,所提方法具有較高的檢索效率。因為該系統(tǒng)利用哈希算法排序融合電網(wǎng)數(shù)據(jù)信息,減少了存儲空間,從而提高了系統(tǒng)檢索的效率。
查全率是一個重要的指標,它反映了一個系統(tǒng)對與用戶有關(guān)的數(shù)據(jù)信息的檢索能力。公式為
(17)
文獻[4]方法、文獻[5]方法和所提方法的查全率對比結(jié)果如圖9所示。
圖9 不同方法的查全率對比結(jié)果
由圖9可知,相比于文獻[4]方法和文獻[5]方法,所提方法的查全率較高。由于該系統(tǒng)利用數(shù)據(jù)挖掘中的關(guān)聯(lián)規(guī)則,對電網(wǎng)的數(shù)據(jù)進行抽取和檢索,保證了檢索的準確率,因此系統(tǒng)查全率也最高。
文獻[4]方法、文獻[5]方法和所提方法的穩(wěn)定性對比結(jié)果如圖10所示。
由圖10可知,所提方法在檢索數(shù)據(jù)信息的過程中是最穩(wěn)定的。因為本系統(tǒng)采用了B/S三層結(jié)構(gòu),把整個系統(tǒng)分為表示層、功能層和數(shù)據(jù)層,從而避免了客戶端直接控制電網(wǎng)的數(shù)據(jù),提高了系統(tǒng)的安全性,有效地阻止了非法用戶的侵入,因此系統(tǒng)在檢索時能夠更加穩(wěn)定。
圖10 不同系統(tǒng)的穩(wěn)定性對比結(jié)果
針對當前索引系統(tǒng)在設(shè)計時存在檢索效率差、查全率低、穩(wěn)定性差的問題,設(shè)計考慮哈希索引的電網(wǎng)數(shù)據(jù)集市海量信息索引系統(tǒng),在系統(tǒng)設(shè)計前,采用關(guān)聯(lián)規(guī)則的挖掘結(jié)果對數(shù)據(jù)進行提取與檢索,并利用哈希算法對電網(wǎng)數(shù)據(jù)信息進行了排序融合,通過B/S三層體系設(shè)計系統(tǒng)架構(gòu)和各功能模塊,該系統(tǒng)設(shè)計方法的檢索效率更高、查全率更高、穩(wěn)定性更好。