與電網(wǎng)業(yè)務(wù)融合的產(chǎn)物,是一種為電網(wǎng)定制的分 布式內(nèi)存計(jì)算產(chǎn)品,能夠有效支持電網(wǎng)業(yè)務(wù)信息系統(tǒng)對電網(wǎng)資源的快速、高效處理。
【附圖說明】
[0033] 圖1為一種分布式內(nèi)存電網(wǎng)系統(tǒng)構(gòu)建方法工作流程圖;
[0034] 圖2為電網(wǎng)資源數(shù)據(jù)水平拆分原理圖;
[0035] 圖3為內(nèi)存電網(wǎng)數(shù)據(jù)同步方式原理圖;
[0036] 圖4為數(shù)據(jù)斷面總體架構(gòu)圖;
[0037] 圖5為分布式內(nèi)存電網(wǎng)系統(tǒng)架構(gòu)圖;
[0038] 圖6為分布式內(nèi)存電網(wǎng)功能架構(gòu)圖。
【具體實(shí)施方式】
[0039] 為使本發(fā)明實(shí)現(xiàn)的技術(shù)手段、創(chuàng)作特征、達(dá)成目的與功效易于明白了解,下面結(jié)合
【具體實(shí)施方式】,進(jìn)一步闡述本發(fā)明。
[0040] 參見圖1,本發(fā)明的分布式內(nèi)存電網(wǎng)系統(tǒng)構(gòu)建方法如下:
[0041] 步驟一、電網(wǎng)資源模型構(gòu)建
[0042] 內(nèi)存電網(wǎng)資源建模遵循IEC61970標(biāo)準(zhǔn)中的公共信息模型((ΠΜ)規(guī)范,利用面向 對象的封裝、繼承、對象應(yīng)用等,建立樹型的內(nèi)存電網(wǎng)模型。進(jìn)行樹型展示時(shí)首先要確定模 型中電網(wǎng)資源的層次關(guān)系,要求必須有一個(gè)根節(jié)點(diǎn),且每一個(gè)子節(jié)點(diǎn)的父節(jié)點(diǎn)是唯一的。電 網(wǎng)中的電力系統(tǒng)資源有其自身特點(diǎn),例如在物理特性上存在一定的包容性,如某一子控制 區(qū)包含了多個(gè)變電站,一個(gè)變電站下包含多個(gè)電壓等級(jí),一個(gè)電壓等級(jí)又包含了母線、開 關(guān)、刀閘、負(fù)荷等電力設(shè)備。為滿足包容性的要求,在面向?qū)ο蠼r(shí),為每一個(gè)具有父節(jié)點(diǎn) 和子節(jié)點(diǎn)的類添加父節(jié)點(diǎn)和字節(jié)點(diǎn)屬性,一個(gè)父節(jié)點(diǎn)屬性設(shè)置為其所從屬的電網(wǎng)資源父類 的對象指針,另子節(jié)點(diǎn)屬性設(shè)置為其所包含的電網(wǎng)設(shè)備子類的列表。
[0043] 步驟二、內(nèi)存存儲(chǔ)結(jié)構(gòu)設(shè)計(jì)
[0044] 從易用性和節(jié)省內(nèi)存開銷兩方面對內(nèi)存存儲(chǔ)結(jié)構(gòu)進(jìn)行了設(shè)計(jì)。節(jié)省內(nèi)存開銷方 面,舍棄了Key-Value鍵值對或者哈希表等一般方式,采用數(shù)組方式對資源所有屬性數(shù)據(jù) 進(jìn)行存儲(chǔ)。通過定義屬性名稱標(biāo)識(shí)符與數(shù)組下標(biāo)的映射關(guān)系,實(shí)現(xiàn)數(shù)據(jù)存取,其實(shí)現(xiàn)表格如 下:
[0045] 假設(shè)某種資源數(shù)據(jù)A,包含4個(gè)屬性,記錄條數(shù)為:3,則為每條記錄分配一個(gè)長度 為4的Object對象數(shù)組。
[0046] 屬性1屬性2屬性3屬性4
[0047]
[0048] 采用Key-Value方式建立屬性標(biāo)識(shí)符與數(shù)組下標(biāo)的映射關(guān)系如下:
[0049] 屬性(key)對應(yīng)數(shù)組下標(biāo)(value)
[0050]
[0051] 訪問某條記錄的某個(gè)屬性值時(shí),首先找到該條記錄對應(yīng)的數(shù)組,然后根據(jù)屬性標(biāo) 識(shí)符與數(shù)組下標(biāo)關(guān)系,找到該屬性對應(yīng)的數(shù)組下標(biāo),根據(jù)數(shù)組下標(biāo)訪問對應(yīng)的屬性值。
[0052]步驟三、電網(wǎng)資源數(shù)據(jù)水平拆分
[0053] 根據(jù)業(yè)務(wù)數(shù)據(jù)對象自身所含有的業(yè)務(wù)邏輯特征,按照業(yè)務(wù)數(shù)據(jù)對象的屬性進(jìn)行多 維度切分,其實(shí)現(xiàn)原理圖參見圖2。
[0054] (1)由計(jì)算任務(wù)對象模型根據(jù)業(yè)務(wù)邏輯和所使用的數(shù)據(jù),分析最優(yōu)的N個(gè)數(shù)據(jù)切 分屬性字段。
[0055] (2)將N個(gè)待切分業(yè)務(wù)數(shù)據(jù)對象屬性的類型和屬性值范圍,作為數(shù)據(jù)切分的原始 輸入。
[0056] (3)將對象的N個(gè)屬性視作N維空間的軸,根據(jù)對象屬性值范圍映到多維空間區(qū) 域。形成多維空間的數(shù)據(jù)超平面。
[0057] (4)每個(gè)數(shù)據(jù)超平面被映射到分布式計(jì)算集群中的不同計(jì)算節(jié)點(diǎn)的內(nèi)存,形成數(shù) 據(jù)的分布式內(nèi)存存儲(chǔ)。
[0058]步驟四、電網(wǎng)資源數(shù)據(jù)加載與緩存
[0059] 加載電網(wǎng)資源數(shù)據(jù),系統(tǒng)第一次啟動(dòng)時(shí),根據(jù)數(shù)據(jù)的水平劃分方式,將電網(wǎng)資源數(shù) 據(jù)庫中的數(shù)據(jù)按照電網(wǎng)資源內(nèi)存模型進(jìn)行加載,然后分布式緩存到集群中多個(gè)服務(wù)器內(nèi)存 中。數(shù)據(jù)加載完成后,將緩存中的電網(wǎng)資源數(shù)據(jù)進(jìn)行序列化,形成二進(jìn)制文件保存到磁盤, 當(dāng)再次啟動(dòng)系統(tǒng)時(shí),從文件直接讀取電網(wǎng)數(shù)據(jù),并從電網(wǎng)資源數(shù)據(jù)庫讀取從上次序列化到 目前的增量數(shù)據(jù)。
[0060] 電網(wǎng)資源分布式緩存后,將緩存服務(wù)器IP地址、電網(wǎng)資源的區(qū)域?qū)傩灾?、電網(wǎng)資 源電壓等級(jí)值、占用空間、緩存所用時(shí)間等信息發(fā)送到電網(wǎng)資源管理服務(wù)器中進(jìn)行統(tǒng)一管 理。
[0061] 步驟五、內(nèi)存電網(wǎng)數(shù)據(jù)同步方式設(shè)計(jì)
[0062]參見圖3,數(shù)據(jù)同步用于將電網(wǎng)數(shù)據(jù)庫中的資源數(shù)據(jù)同步到內(nèi)存電網(wǎng)、省內(nèi)存電網(wǎng) 的資源數(shù)據(jù)同步到總部內(nèi)存電網(wǎng),使得數(shù)據(jù)庫和內(nèi)存電網(wǎng)、總部內(nèi)地電網(wǎng)和省內(nèi)存電網(wǎng)的 數(shù)據(jù)保持一致。
[0063] 數(shù)據(jù)同步比對包括全量同步、增量同步。全量同步將磁盤關(guān)系數(shù)據(jù)庫的數(shù)據(jù)以對 象化的形式全量同步到內(nèi)存電網(wǎng)的對象緩存中,保證內(nèi)存電網(wǎng)對象數(shù)據(jù)與磁盤關(guān)系數(shù)據(jù)庫 數(shù)據(jù)源數(shù)據(jù)的一致性;將各網(wǎng)省內(nèi)存電網(wǎng)的數(shù)據(jù)對象模型全量同步到國網(wǎng)總部并完成拼 接,保證總部內(nèi)存電網(wǎng)和各網(wǎng)省內(nèi)存電網(wǎng)的同步。網(wǎng)省內(nèi)存電網(wǎng)根據(jù)數(shù)據(jù)變更記錄表的元 數(shù)據(jù)完成對象數(shù)據(jù)增量的更新。更新后同時(shí)產(chǎn)生對象數(shù)據(jù)變更文件,用以記錄網(wǎng)省內(nèi)存電 網(wǎng)中數(shù)據(jù)模型的變更信息,并存儲(chǔ)在對比服務(wù)器的變更信息存儲(chǔ)器中。國網(wǎng)總部內(nèi)存電網(wǎng) 通過訪問各網(wǎng)省對比服務(wù)器中的對象數(shù)據(jù)變更文件,將相應(yīng)變更的數(shù)據(jù)對象模型從網(wǎng)省對 象服務(wù)器中上傳至總部內(nèi)存電網(wǎng),完成變更數(shù)據(jù)對象模型的更新。
[0064] 特別的,由于內(nèi)存電網(wǎng)的緩存有限,不能將全量數(shù)據(jù)一次性加載到對象緩存中進(jìn) 行比對。因此,數(shù)據(jù)比對模塊提供了數(shù)據(jù)分塊比對技術(shù)。有些數(shù)據(jù)表內(nèi)的數(shù)據(jù)量十分龐大, 如果一次就將其全部加載進(jìn)行比對不僅耗時(shí)而且占用內(nèi)存電網(wǎng)對象緩存的資源。首先將對 所有數(shù)據(jù)進(jìn)行分塊處理和優(yōu)先級(jí)設(shè)定。數(shù)據(jù)塊的劃分是按照業(yè)務(wù)需求制定的。一個(gè)數(shù)據(jù)塊 可以含有來自不同數(shù)據(jù)表而具有邏輯聯(lián)系或業(yè)務(wù)關(guān)聯(lián)的數(shù)據(jù),同張數(shù)據(jù)表中無關(guān)聯(lián)的數(shù)據(jù) 不劃入同一數(shù)據(jù)塊內(nèi)。每個(gè)數(shù)據(jù)塊再按照對應(yīng)業(yè)務(wù)的實(shí)時(shí)性、數(shù)據(jù)的精確性等來設(shè)定優(yōu)先 級(jí)別。每次比對時(shí)先處理優(yōu)先級(jí)高的數(shù)據(jù)塊。甚至可以為特別的數(shù)據(jù)塊增加比對的頻率。 其次在對象服務(wù)器中創(chuàng)建數(shù)據(jù)比對對象池,每次比對時(shí)先將部分指定的數(shù)據(jù)塊加載到對象 緩存進(jìn)行比對,完成后釋放數(shù)據(jù)比對對象池中的數(shù)據(jù)對象模型,再從磁盤關(guān)系數(shù)據(jù)庫加載 接下來需要比對的指定數(shù)據(jù)塊。
[0065] 步驟六、電網(wǎng)斷面設(shè)計(jì)
[0066] 數(shù)據(jù)斷面提供斷面管理、斷面生成、多斷面載入等功能。斷面管理提供斷面數(shù)據(jù)的 查詢、斷面生成計(jì)劃任務(wù)的制定、斷面載入指令的下達(dá)等。斷面生成根據(jù)計(jì)劃任務(wù)定期將內(nèi) 存電網(wǎng)的數(shù)據(jù)進(jìn)行持久化,生成電網(wǎng)數(shù)據(jù)斷面。多斷面載入根據(jù)斷面指令,載入多個(gè)的歷史 斷面到內(nèi)存。
[0067]內(nèi)存電網(wǎng)斷面以對象化并行計(jì)算框架持久化功能作為支撐,各省及總部的所有斷 面數(shù)據(jù)保存在各自的內(nèi)存電網(wǎng)服務(wù)器。采用與內(nèi)存電網(wǎng)服務(wù)器共享內(nèi)存的方式,加載本地 歷史斷面數(shù)據(jù)。數(shù)據(jù)斷面總體架構(gòu)圖如圖4。
[0068] 內(nèi)存電網(wǎng)提供斷面管理工具用于查詢所有歷史斷面信息,同時(shí)可以向數(shù)據(jù)斷面處 理器發(fā)起斷面生成請求和斷面加載請求。數(shù)據(jù)斷面處理器在接收到相關(guān)請求后,執(zhí)行斷面 生成、斷面加載任務(wù)。
[0069] 特別的,電網(wǎng)斷面利用HDFS分布式文件系統(tǒng)進(jìn)行永久、可靠存儲(chǔ),數(shù)據(jù)持久化時(shí) 的序列化采用開源的Hession組件實(shí)現(xiàn),該組件的特點(diǎn)是序列化效率高,序列化后的字節(jié) 流短。
[0070] 步驟七、內(nèi)存電網(wǎng)訪問接口設(shè)計(jì)
[0071] 內(nèi)存電網(wǎng)接口用于向電網(wǎng)業(yè)務(wù)信息系統(tǒng)提供數(shù)據(jù)物理位置無關(guān)的電網(wǎng)資源訪問 方式,包括電網(wǎng)斷面接口、電網(wǎng)數(shù)據(jù)統(tǒng)計(jì)分析接口、數(shù)據(jù)查詢接口。通過電網(wǎng)斷面接口業(yè)務(wù) 系統(tǒng)可以查詢電網(wǎng)斷面信息,并下達(dá)斷面加載指令,加載指定的電網(wǎng)斷面數(shù)據(jù)到計(jì)算機(jī)內(nèi) 存。通過統(tǒng)計(jì)分析接口,業(yè)務(wù)系統(tǒng)可以獲取總部和省電網(wǎng)資源多條件、多維度的統(tǒng)計(jì)分析結(jié) 果。數(shù)據(jù)查詢接口用于向業(yè)務(wù)系統(tǒng)提供全網(wǎng)電網(wǎng)資源的查詢,業(yè)務(wù)系統(tǒng)不需要關(guān)注數(shù)據(jù)的 來源和物理位置。電網(wǎng)資源數(shù)據(jù)訪問接口采用PRC遠(yuǎn)程調(diào)用協(xié)議,傳輸?shù)臄?shù)據(jù)為資源對象 序列化后的^進(jìn)制流。
[0072] (1)內(nèi)存電網(wǎng)系統(tǒng)架構(gòu)
[0073] 內(nèi)存電網(wǎng)構(gòu)建在對象化并行計(jì)算框架之上。總部