文獻(xiàn)標(biāo)識碼:A
DOI: 10.19358/j.issn.2096-5133.2018.12.003
引用格式:張偉.電力企業(yè)云百科系統(tǒng)的架構(gòu)設(shè)計[J].信息技術(shù)與網(wǎng)絡(luò)安全,2018,37(12):11-13.
0 引言
隨著云計算服務(wù)在電力行業(yè)里廣泛的應(yīng)用,用戶對電力云平臺的搜索能力要求越來越高。云計算將原本分散的資源聚集起來,再以服務(wù)的形式提供給受眾,實(shí)現(xiàn)集團(tuán)化運(yùn)作、精益化管理、標(biāo)準(zhǔn)化建設(shè)。
電力云平臺系統(tǒng)基于電力系統(tǒng)數(shù)據(jù)庫中通過云搜索引擎的快速搜索,檢索到相應(yīng)的共享知識內(nèi)容,系統(tǒng)功能界面簡潔,用戶操作便捷。
1 系統(tǒng)簡介
電力云百科系統(tǒng)是部署在云上的一套系統(tǒng),此系統(tǒng)是電力系統(tǒng)內(nèi)部的一套維基百科,主要應(yīng)用于電力系統(tǒng)內(nèi)部的電力知識的共享以及共享知識的不斷更新。
電力云百科主要包括搜索引擎和百科知識編輯處理兩個業(yè)務(wù)模塊。整個業(yè)務(wù)系統(tǒng)運(yùn)行在云平臺之上。當(dāng)客戶從海量數(shù)據(jù)中查找到所需的知識點(diǎn)時,可以首先對搜索到的知識點(diǎn)進(jìn)行閱讀瀏覽,之后如果需要對知識點(diǎn)進(jìn)行補(bǔ)充修改時,可以對此詞條進(jìn)行評論,然后在前端進(jìn)行修改,完成知識點(diǎn)的編輯,通過管理員的權(quán)限控制、審核,最終完成詞條的修改。
2 架構(gòu)設(shè)計
電力云操作平臺由分布式云文件系統(tǒng)(DataCell FS)、數(shù)據(jù)庫同步系統(tǒng)(DataCell Echo)、電力云搜索引擎三部分組成,為云百科提供了應(yīng)用基礎(chǔ)。電力云平臺系統(tǒng)架構(gòu)如圖1所示。
圖1電力云平臺系統(tǒng)架構(gòu)圖
2.1 分布式云文件系統(tǒng)
分布式云文件系統(tǒng)(DataCell FS)是完全自主開發(fā)具有自由知識產(chǎn)權(quán)的文件系統(tǒng),該系統(tǒng)為分布式計算存儲提供底層支持。分布式云文件系統(tǒng)架構(gòu)如圖2所示。
由此DataCellFS具備以下特點(diǎn):
(1)對于整個集群有統(tǒng)一的命名空間。
(2)數(shù)據(jù)一致性。適合一次寫入、多次讀取的模型,客戶端在文件沒有被成功創(chuàng)建之前無法看到文件存在。
(3)文件會被分割成多個文件塊,每個文件塊被分配存儲到數(shù)據(jù)節(jié)點(diǎn)上,而且根據(jù)配置會由復(fù)制文件塊來保證數(shù)據(jù)的安全性。
分布式文件系統(tǒng)DataCellFS是用于構(gòu)建企業(yè)級非結(jié)構(gòu)化數(shù)據(jù)平臺的云存儲軟件產(chǎn)品,具備高可擴(kuò)展性的特點(diǎn),可幫助企業(yè)實(shí)現(xiàn)高效的非結(jié)構(gòu)化數(shù)據(jù)存儲和管理功能[1]。平臺采取全新的分布式體系架構(gòu),利用先進(jìn)的虛擬化技術(shù)靈活地將網(wǎng)絡(luò)上眾多獨(dú)立的存儲節(jié)點(diǎn)粘合起來,隱藏底層的負(fù)載均衡、冗余復(fù)制等細(xì)節(jié),對上層程序提供統(tǒng)一的文件調(diào)用接口,并按照每個客戶端實(shí)際使用量隨時動態(tài)地分配物理空間,實(shí)現(xiàn)建立在現(xiàn)有硬件設(shè)備或其他廉價硬件設(shè)備上的網(wǎng)絡(luò)虛擬存儲功能。同時,DataCell FS還結(jié)合高效數(shù)據(jù)總線的傳輸能力,在文件傳輸、存儲和訪問的過程中采用主動檢測和自動處理失敗情況等多種機(jī)制來提高整個系統(tǒng)的容錯性和可靠性,從而能最大程度地利用網(wǎng)絡(luò)帶寬和保證可靠的文件傳輸,并較好地滿足跨區(qū)域、多節(jié)點(diǎn)、復(fù)雜網(wǎng)絡(luò)環(huán)境的文件存儲和共享需求[2]。
2.2 關(guān)系型數(shù)據(jù)庫集群軟件
關(guān)系型數(shù)據(jù)庫集群軟件是電力云操作系統(tǒng)的重要組成部分之一,可以解決跨區(qū)域、異構(gòu)分布式數(shù)據(jù)庫的統(tǒng)一訪問和實(shí)時數(shù)據(jù)同步問題,可以同時處理同一系統(tǒng)內(nèi)的多個異構(gòu)數(shù)據(jù)庫系統(tǒng)之間的數(shù)據(jù)交換和同步。通過對各個數(shù)據(jù)庫系統(tǒng)內(nèi)數(shù)據(jù)的動態(tài)劃分和管理,跨域數(shù)據(jù)庫訪問和同步分發(fā)系統(tǒng)還可在一個或多個數(shù)據(jù)庫中支持多個主/從并存[3]。在放寬對數(shù)據(jù)一致性要求的前提下,它可以繞過普通關(guān)系數(shù)據(jù)庫的性能瓶頸,大大提高大型應(yīng)用系統(tǒng)中數(shù)據(jù)庫的響應(yīng)速度和數(shù)據(jù)容量。關(guān)系型數(shù)據(jù)庫集群軟件架構(gòu)如圖3所示。
圖3關(guān)系型數(shù)據(jù)庫集群軟件架構(gòu)圖
另外,數(shù)據(jù)同步訪問接口為業(yè)務(wù)系統(tǒng)、管理系統(tǒng)以及各種其他系統(tǒng)提供一致的數(shù)據(jù)同步和訪問接口,將外部系統(tǒng)所提交的數(shù)據(jù)請求分發(fā)到相應(yīng)的控制模塊,并負(fù)責(zé)將必要的數(shù)據(jù)操作結(jié)果通知并返回給外部系統(tǒng)??刂颇K負(fù)責(zé)將接收到的數(shù)據(jù)請求提交給主數(shù)據(jù)庫,并且在主數(shù)據(jù)庫操作提交成功后將數(shù)據(jù)請求通過控制總線組播給所有此次需要同步的虛擬數(shù)據(jù)庫的同步模塊。根據(jù)用戶所選擇的策略,控制模塊會選擇等待虛擬數(shù)據(jù)庫節(jié)點(diǎn)完成或者不等待,并將結(jié)果返回給數(shù)據(jù)同步訪問接口以通知用戶數(shù)據(jù)操作結(jié)果。虛擬數(shù)據(jù)庫的同步和訪問模塊負(fù)責(zé)將接收到的來自控制模塊的操作請求提交給本機(jī)的物理數(shù)據(jù)庫[4],并且將提交的結(jié)果返回給數(shù)據(jù)同步訪問接口來通知用戶數(shù)據(jù)操作的結(jié)果。
除了普通的數(shù)據(jù)操作模式之外,根據(jù)用戶選擇的策略,虛擬數(shù)據(jù)庫可以工作于異步模式。當(dāng)異步模式時,用戶不實(shí)際參與實(shí)時的數(shù)據(jù)訪問和同步過程,可以選擇在適當(dāng)?shù)臅r機(jī)通知對應(yīng)的虛擬數(shù)據(jù)庫節(jié)點(diǎn)以異步的方式提交數(shù)據(jù)[5]。當(dāng)系統(tǒng)中有新的虛擬數(shù)據(jù)庫節(jié)點(diǎn)加入時,可以根據(jù)用戶選取的恢復(fù)點(diǎn),自動化恢復(fù)所有過往的數(shù)據(jù)操作,最終達(dá)到與所有其他的虛擬數(shù)據(jù)庫節(jié)點(diǎn)一致的狀態(tài)。這種虛擬同步(Virtual Synchrony)技術(shù)不僅可以保證在任何情況下多數(shù)據(jù)庫節(jié)點(diǎn)數(shù)據(jù)操作均能正常地完成或者從故障中恢復(fù),同時極大地強(qiáng)化了對異構(gòu)數(shù)據(jù)庫以及多主數(shù)據(jù)庫情況下的數(shù)據(jù)訪問和同步支持[6]。
概括地講,數(shù)據(jù)庫同步系統(tǒng)具有如下的技術(shù)特點(diǎn):
(1)多點(diǎn)讀寫,提供負(fù)載均衡;
(2)提供多主數(shù)據(jù)庫和多從數(shù)據(jù)庫模式;
(3)支持分組,同一組數(shù)據(jù)庫可以建立多個組,按照不同的業(yè)務(wù)邏輯進(jìn)行同步;
(4)多機(jī)備份,避免單點(diǎn)失效;
(5)數(shù)據(jù)模型可通過外部XML文件靈活配置,避免業(yè)務(wù)代碼更改;
(6)多操作系統(tǒng),支持Linux、AIX、Windows等平臺;
(7)支持分布式異構(gòu)數(shù)據(jù)庫,支持包括IBM DB2、Oricle、MySql等數(shù)據(jù)庫的異構(gòu)環(huán)境;
(8)多節(jié)點(diǎn)支持,支持 10個以上的同步節(jié)點(diǎn);
(9)多策略,支持配置文件的更新或更新消息中設(shè)定多種策略來控制整個數(shù)據(jù)的同步,原有的業(yè)務(wù)邏輯不需要更改。
(10)支持單步提交和兩步提交兩種模式。
2.3 云搜索引擎
云搜索服務(wù)引擎是基于海量的數(shù)據(jù)、多源數(shù)據(jù)(Web URL、企業(yè)內(nèi)部數(shù)據(jù)、郵件、數(shù)據(jù)庫內(nèi)容等)而建立起來的快速搜索的面向應(yīng)用的服務(wù)平臺,專門提供企業(yè)在信息化過程中海量信息的搜索服務(wù)[7]。云搜索引擎架構(gòu)如圖4所示。
作為企業(yè)搜索服務(wù)引擎,其主要完成對企業(yè)各數(shù)據(jù)源的管理、分詞的建立、索引的建立,并結(jié)合企業(yè)知識分類體系完成搜索服務(wù),提供應(yīng)用系統(tǒng)更便捷的接口[8]。作為云搜索服務(wù)引擎,其內(nèi)部系統(tǒng)采用高度虛擬化技術(shù),完成整個集群的管理和維護(hù)。
3 結(jié)論
通過使用云計算技術(shù),云百科系統(tǒng)的性能得到了極大提高,但其硬件平臺搭建成本反而降低。
云百科業(yè)務(wù)系統(tǒng)主要體現(xiàn)了以下幾個特點(diǎn):
(1)系統(tǒng)效率的提高
采用云計算技術(shù),可以提高并發(fā)訪問量,同時還可以提高檢索速度。由于采用了分布式的文件存儲系統(tǒng),因此檢索信息可以由原來直接對一臺服務(wù)器操作,變成對多臺機(jī)器的操作,克服了磁盤的訪問壓力。
(2)系統(tǒng)的動態(tài)擴(kuò)展
在整個系統(tǒng)的架構(gòu)設(shè)計中,通過云計算技術(shù),可以實(shí)現(xiàn)以后業(yè)務(wù)的動態(tài)擴(kuò)展。
(3)硬件設(shè)備的利舊
云計算的一大優(yōu)點(diǎn)就是可以用若干普通服務(wù)器來代替小型機(jī),同時能達(dá)到用戶所需要的性能。相對于購買新的小型機(jī),可以通過使用暫時閑置的服務(wù)器來完成系統(tǒng)的功能搭建,在一定程度上節(jié)約了成本。
參考文獻(xiàn)
[1] 項菲, 劉川意, 方濱興, 等.云計算環(huán)境下密文搜索算法的研究[J]. 通信學(xué)報,2013(7):143-153.
[2] 杜軍強(qiáng), 楊波.云計算中加密數(shù)據(jù)的模糊關(guān)鍵字搜索方法[J]. 計算機(jī)工程與應(yīng)用,2015,51(5):146-152.
[3] 樓鳳丹, 裴旭斌, 王志強(qiáng), 等.基于云計算及大數(shù)據(jù)技術(shù)的電力搜索引擎技術(shù)研究[J] . 電網(wǎng)與清潔能源,2016,32(12):86-92.
[4] 屈振新, 朱文昌. 基于云計算的定向搜索監(jiān)控研究[J]. 計算機(jī)工程與科學(xué),2013,35 (1):82-87.
[5] 王天罡. 云計算環(huán)境下密文搜索算法的研究[J].信息與電腦(理論版),2016 (5):76-77.
[6] 劉竹松, 陳潔, 田龍.基于改進(jìn)布谷鳥搜索算法的云計算任務(wù)調(diào)度[J]. 廣東工業(yè)大學(xué)學(xué)報,2016,33(3):32-36.
[7] 高長元, 于建萍, 何曉燕.基于改進(jìn)粒子群算法的云計算產(chǎn)業(yè)聯(lián)盟知識搜索算法研究[J]. 數(shù)據(jù)分析與知識發(fā)現(xiàn),2017,1(3):81-89.
[8] 秦玉杰.一種基于分布式蜜罐技術(shù)的勒索蠕蟲病毒監(jiān)測方法[J]. 信息技術(shù)與網(wǎng)絡(luò)安全,2018,37(9):45-48.
(收稿日期:2018-11-05)
作者簡介:
張偉(1976-),男,碩士,高級工程師,北京市科學(xué)技術(shù)委員會信息安全專家,災(zāi)備技術(shù)產(chǎn)業(yè)聯(lián)盟技術(shù)委員會委員,主要研究方向:計算機(jī)應(yīng)用與信息安全。