999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

狀態(tài)監(jiān)測系統(tǒng)中實時數(shù)據(jù)庫的研究

2012-04-13 03:15:12林俊林敏胡華威
電力工程技術(shù) 2012年3期
關(guān)鍵詞:進(jìn)程數(shù)據(jù)處理數(shù)據(jù)庫

林俊,林敏,胡華威

(1.江蘇西電南自智能電力設(shè)備有限公司,江蘇南京211102;2.南京國電南自電網(wǎng)自動化有限公司,江蘇南京211100)

在智能變電站中,狀態(tài)監(jiān)測的綜合監(jiān)測單元采用IEC61850標(biāo)準(zhǔn)與站端系統(tǒng)通信,站端監(jiān)測系統(tǒng)收集各單元匯總的監(jiān)測信息,將其存入監(jiān)測數(shù)據(jù)庫中,所有這些數(shù)據(jù)有些是連續(xù)變化的,有些是離散變化的,變化快慢各異,數(shù)據(jù)庫需要適應(yīng)這些數(shù)據(jù)存儲的要求,并通過人機界面將處理過的數(shù)據(jù)集中顯示,供設(shè)備檢修人員使用;另一方面需要將數(shù)據(jù)對遠(yuǎn)方集中監(jiān)測主站發(fā)布。一般的商用數(shù)據(jù)庫多是磁盤存儲,其數(shù)據(jù)需要按照一定的交換策略被調(diào)至內(nèi)存緩沖區(qū)后才能被存取,在執(zhí)行時受到磁盤I/O的束縛,事務(wù)的響應(yīng)時間受等待延遲、查找延遲等限制,因此在系統(tǒng)中需設(shè)計實時數(shù)據(jù)庫,數(shù)據(jù)庫常駐內(nèi)存,消除了事務(wù)處理的I/O瓶頸問題,提高了系統(tǒng)的性能和吞吐量,滿足實時響應(yīng)的要求[1]。

1 實時數(shù)據(jù)庫的需求

實時數(shù)據(jù)庫是指數(shù)據(jù)和事務(wù)都具有定時特性或確定的定時限制的數(shù)據(jù)庫系統(tǒng),其正確性不僅依賴于邏輯結(jié)果,而且依賴于邏輯結(jié)果產(chǎn)生的時間,即系統(tǒng)寧可接受在時間限度內(nèi)的不準(zhǔn)確的數(shù)據(jù),也不接受超過時間限制的準(zhǔn)確的數(shù)據(jù)。所以數(shù)據(jù)庫一方面要求很強的時效性,即必須在一定的時間內(nèi)完成數(shù)據(jù)的傳輸和預(yù)處理,另一方面要求很強的可靠性和吞吐性能,即使在流量很大時,也不能丟失數(shù)據(jù)。通常實時數(shù)據(jù)庫應(yīng)滿足下列功能需求[2]:(1)實時數(shù)據(jù)處理的高速度和高精度,以保證整個系統(tǒng)的穩(wěn)定運行;(2)歷史數(shù)據(jù)存儲和壓縮,使系統(tǒng)能夠存儲足夠的信息,以備查詢、分析;(3)應(yīng)用程序開發(fā)接口,保證系統(tǒng)的開發(fā)和可擴展性;(4)方便、直觀的圖形化組態(tài)工具,便于客戶的操作和監(jiān)視。

2 實時數(shù)據(jù)庫的設(shè)計

為保證實時數(shù)據(jù)庫的運行效率,該系統(tǒng)按地址直接訪問的方式建立實時數(shù)據(jù)庫,即通過共享內(nèi)存數(shù)據(jù)完成數(shù)據(jù)的存儲,這是最快的可用進(jìn)程間通信(IPC)形式。在共享內(nèi)存中構(gòu)建按地址指針直接訪問數(shù)據(jù)的實時數(shù)據(jù)庫,以滿足通信的實時性和可靠性的需求。另外實時數(shù)據(jù)庫需要將數(shù)據(jù)定時存入歷史數(shù)據(jù)庫中以備查詢和其他接口使用,歷史庫利用商業(yè)數(shù)據(jù)庫MySql通用、靈活等諸多優(yōu)點定義和保存所需數(shù)據(jù)[3]。因此實時數(shù)據(jù)處理進(jìn)程中建立了兩級數(shù)據(jù)存儲機制:(1)內(nèi)存數(shù)據(jù)庫,保證查詢的實時、快速性,但是數(shù)據(jù)量有限;(2)使用磁盤的歷史數(shù)據(jù)庫,將經(jīng)過壓縮的數(shù)據(jù)存入歷史數(shù)據(jù)庫中,保證數(shù)據(jù)掉電不丟失,且易于查詢和綜合分析。

2.1 數(shù)據(jù)庫構(gòu)建過程

由于采用IEC61850標(biāo)準(zhǔn)通信,為適應(yīng)數(shù)據(jù)結(jié)構(gòu),內(nèi)存數(shù)據(jù)庫采用面向?qū)ο蟮姆绞綐?gòu)造,根據(jù)IEC61850提供的變電站配置描述語言SCL形成的XML格式的模型文件,為每個XML元素創(chuàng)建對應(yīng)的對象,由于模型文件采用樹狀結(jié)構(gòu)編排,因此所有解析后的對象也形成樹形結(jié)構(gòu),所有數(shù)據(jù)都保存在樹的節(jié)點中,所有的訪問均是針對該樹狀結(jié)構(gòu)[4]。該內(nèi)存數(shù)據(jù)庫采用多叉樹的方式構(gòu)建,首先,分析模型文件,得到第1個元素及其子元素,并為該元素及其子元素分別創(chuàng)建對象p和q1,……,qn,其中,n是子元素的個數(shù);其次,構(gòu)建多叉樹,分別將q1,……,qn設(shè)置為p的孩子;最后,對于已將創(chuàng)建對象的元素,記其對象為p,分析模型文件,得到該元素的子元素,并為其創(chuàng)建對象,不妨仍記為q1,……,qn,重復(fù)第二步,直到文檔中所有的元素都創(chuàng)建了對應(yīng)的對象,構(gòu)造結(jié)束[5]。構(gòu)造出的多叉樹結(jié)構(gòu)如圖1所示。

2.2 數(shù)據(jù)存儲過程

系統(tǒng)初始化時,實時數(shù)據(jù)處理進(jìn)程將根據(jù)IEC61850的模型文件構(gòu)建內(nèi)存數(shù)據(jù)庫,同時將數(shù)據(jù)結(jié)構(gòu)信息通知數(shù)據(jù)緩存模塊,緩存模塊為實時數(shù)據(jù)庫模塊和歷史數(shù)據(jù)模塊,分別開辟數(shù)據(jù)緩存池,通過通信接口接收各數(shù)據(jù)點的信息,并將信息同時填入對應(yīng)的數(shù)據(jù)緩存結(jié)構(gòu)中。實時數(shù)據(jù)緩存池根據(jù)共享內(nèi)存數(shù)據(jù)庫提供的操作指針,直接將數(shù)據(jù)放入內(nèi)存庫中,提供給在線運行模塊使用;歷史數(shù)據(jù)緩存池接收數(shù)據(jù)后首先經(jīng)壓縮模塊,產(chǎn)生實時數(shù)據(jù)送往歷史數(shù)據(jù)處理模塊做二次緩存,待緩存數(shù)據(jù)窗填滿或到達(dá)自動轉(zhuǎn)存時間后發(fā)送至歷史數(shù)據(jù)庫。整個實時數(shù)據(jù)系統(tǒng)的數(shù)據(jù)存儲過程如下圖2所示。

圖1 多叉樹結(jié)構(gòu)

圖2 數(shù)據(jù)存儲過程

在系統(tǒng)運行時,同時要進(jìn)行數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)讀寫和查詢、事件報警、歷史數(shù)據(jù)存盤等操作,因此需建立并發(fā)控制機制,以滿足實時性要求[6]。

3 實時數(shù)據(jù)庫的實現(xiàn)

3.1 建立內(nèi)存數(shù)據(jù)庫

系統(tǒng)定義了多叉樹節(jié)點的數(shù)據(jù)結(jié)構(gòu):

每種類型的節(jié)點都單獨定義了數(shù)據(jù)結(jié)構(gòu),如M_Object為數(shù)據(jù)對象節(jié)點等,在每個節(jié)點實例中都分配了一個ID號,作為該類型數(shù)據(jù)節(jié)點數(shù)組的下標(biāo),ID號根據(jù)哈希算法獲得,是每個節(jié)點的唯一標(biāo)示,理想的哈希表采用特定的哈希函數(shù)能夠在記錄的存儲位置與其關(guān)鍵值之間建立確定的對應(yīng)關(guān)系,使每個關(guān)鍵字和結(jié)構(gòu)中唯一的存儲位置相對應(yīng),因此通過這個ID可以不需要比較便直接取得查找的數(shù)據(jù),使用該ID建立起來的索引能夠提高數(shù)據(jù)庫的訪問速度。

由于內(nèi)存庫采用面向?qū)ο蟮乃枷霕?gòu)建,每種類型節(jié)點都是一張獨立的表,表間的關(guān)聯(lián)關(guān)系采用父、子指針的方式創(chuàng)建,而非關(guān)系型數(shù)據(jù)庫的外鍵關(guān)聯(lián)。

3.2 定義數(shù)據(jù)庫接口

在實時數(shù)據(jù)處理進(jìn)程中提供一組接口函數(shù)實現(xiàn)對實時數(shù)據(jù)庫的讀寫、查詢和管理等工作。常用接口如表1所示。除了定義常用的讀取、查詢等操作接口外,數(shù)據(jù)庫提供高效的消息通知機制,以便快速將數(shù)據(jù)變化發(fā)布給系統(tǒng)各進(jìn)程使用。需要消息通知的進(jìn)程,如告警信息進(jìn)程,將感興趣的數(shù)據(jù)點在實時數(shù)據(jù)庫中進(jìn)行注冊,并給出通知的觸發(fā)選項,如“數(shù)據(jù)變化”、“品質(zhì)變化”等,被注冊過的數(shù)據(jù)點,當(dāng)發(fā)生上述改變時,即刻調(diào)用通知接口,將信息發(fā)送給需要的各進(jìn)程,這些接口均由數(shù)據(jù)處理模塊完成[7]。

3.3 歷史數(shù)據(jù)處理方式

歷史數(shù)據(jù)處理時首先需要經(jīng)過數(shù)據(jù)壓縮,對于開關(guān)類型數(shù)據(jù)采用變化保存的方式壓縮,壓縮模塊在處理開關(guān)量時將其與歷史數(shù)據(jù)處理模塊中緩存的最后一個點數(shù)據(jù)進(jìn)行比較,若相同則不保存狀態(tài),只更新最后一點收到的時間,若不同則產(chǎn)生一條新的緩存數(shù)據(jù)。對于模擬量數(shù)據(jù)采用旋轉(zhuǎn)門壓縮算法,首先在數(shù)據(jù)庫中為每個數(shù)據(jù)點設(shè)置默認(rèn)的壓縮因子,將收到的數(shù)據(jù)點與緩存數(shù)據(jù)中前一個被保留的構(gòu)成壓縮偏移覆蓋區(qū)域,若區(qū)域中沒有任何點落在區(qū)域以外,則無需保存任何數(shù)據(jù),若區(qū)域中有任何一點未被覆蓋,則將新收到的數(shù)據(jù)點的前一點保存入緩存,之后以該保存點為起點,繼續(xù)接收數(shù)據(jù),并重復(fù)該算法。所謂的壓縮覆蓋區(qū)域?qū)嶋H上是平行四邊形,起點為前一個被保存的點,終點是新收到的數(shù)據(jù)點,其垂直邊長為壓縮因子的2倍,并以數(shù)據(jù)點為中點;使用壓縮算法可以大幅減少數(shù)據(jù)存儲量,保證歷史數(shù)據(jù)庫能夠長期運行[8]。

歷史數(shù)據(jù)寫入采用2級寫入控制,即(1)歷史數(shù)據(jù)模塊中為每種數(shù)據(jù)類型開辟兩個緩存窗口,當(dāng)一個窗口填滿時,自動將窗口數(shù)據(jù)一次性寫入歷史庫,同時清空該窗口,新收到的數(shù)據(jù)填入另一緩存窗口中;(2)歷史數(shù)據(jù)庫根據(jù)系統(tǒng)設(shè)置,定時交替讀取2個緩存窗口,同時清空被讀取的窗口,新收到的數(shù)據(jù)填入另一緩存窗口中。通過該方法可以減少磁盤的讀寫次數(shù),加快寫入效率。

表1 數(shù)據(jù)庫接口

3.4 數(shù)據(jù)并發(fā)控制

針對數(shù)據(jù)并發(fā)控制,實時數(shù)據(jù)庫提供了數(shù)據(jù)對象加/解鎖機制,具有操作權(quán)限的進(jìn)程在使用數(shù)據(jù)庫時首先執(zhí)行LOCK操作鎖定指定的對象,從而獨占該資源,并在完成后執(zhí)行UNLOCK操作解鎖,釋放對應(yīng)的資源。如果該操作進(jìn)程退出或出現(xiàn)異常,未能按指定時間解鎖資源,則實時庫將自動釋放該資源,以避免數(shù)據(jù)死鎖,保證系統(tǒng)的穩(wěn)定性。

4 結(jié)束語

文中分析了狀態(tài)監(jiān)測系統(tǒng)中實時數(shù)據(jù)庫的需求,根據(jù)IEC61850標(biāo)準(zhǔn)要求構(gòu)建了實時內(nèi)存數(shù)據(jù)庫,并設(shè)計了數(shù)據(jù)庫的操作模塊,給出了數(shù)據(jù)庫各功能模塊的實現(xiàn)方式。通過該方法開發(fā)的數(shù)據(jù)庫已用于監(jiān)測系統(tǒng)軟件中,提高了系統(tǒng)的實時性和可靠性,能夠適應(yīng)智能變電站應(yīng)用的需求。

[1] 傅蕾,胡敏強.變電站監(jiān)控軟件系統(tǒng)中內(nèi)存數(shù)據(jù)庫的研究[J].電力自動化設(shè)備,2002,22(10):67-70.

[2] 周釗.基于實時數(shù)據(jù)庫的歷史數(shù)據(jù)處理技術(shù)研究[D].北京:華北電力大學(xué),2008.

[3] 談蘇偉.電網(wǎng)調(diào)度自動化前置子系統(tǒng)實時數(shù)據(jù)庫的設(shè)計和實現(xiàn)[J].電力自動化設(shè)備,2009,29(7):130-133.

[4] 董越,孫宏斌,吳文傳,等.EMS中公共信息模型導(dǎo)入/導(dǎo)出技術(shù)[J].電力系統(tǒng)自動化,2002,26(3):10-14.

[5] 黃建才.基于IEC61850的內(nèi)存數(shù)據(jù)庫的組織[J].福建電腦,2007(6):101-102.

[6] 劉浩,萬昆.基于動態(tài)鏈接庫DLL的實時數(shù)據(jù)庫系統(tǒng)研究與開發(fā)[J].東北電力學(xué)院學(xué)報,2005,25(1):36-39.

[7] 金舒,戴宏斌,賈志敏.面向?qū)ο蟮母咝阅軐崟r數(shù)據(jù)庫ChRDB[J].電力自動化設(shè)備,2009,29(12):88-93.

[8] 陸會明,周釗,廖常斌.基于實時數(shù)據(jù)庫系統(tǒng)的歷史數(shù)據(jù)處理[J].電力自動化設(shè)備,2009,29(3):127-131.

猜你喜歡
進(jìn)程數(shù)據(jù)處理數(shù)據(jù)庫
認(rèn)知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補與極大似然估計法*
ILWT-EEMD數(shù)據(jù)處理的ELM滾動軸承故障診斷
債券市場對外開放的進(jìn)程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
基于希爾伯特- 黃變換的去噪法在外測數(shù)據(jù)處理中的應(yīng)用
社會進(jìn)程中的新聞學(xué)探尋
我國高等教育改革進(jìn)程與反思
主站蜘蛛池模板: 日本人妻丰满熟妇区| 国产精品黄色片| 国产香蕉97碰碰视频VA碰碰看| 精品少妇人妻av无码久久| 99热亚洲精品6码| 日本免费新一区视频| 9啪在线视频| 日韩精品亚洲人旧成在线| 亚洲精品无码不卡在线播放| 欧美精品1区| AV不卡国产在线观看| 青青操国产| 国产91高跟丝袜| 欧美无专区| 亚洲一级毛片在线观播放| 国产人免费人成免费视频| 中日韩欧亚无码视频| 香蕉久人久人青草青草| 欧美三级自拍| 无码国产偷倩在线播放老年人| 日韩欧美国产成人| 亚洲有无码中文网| 亚洲国产精品一区二区高清无码久久 | 中文字幕欧美日韩高清| 欧美色视频在线| 亚洲综合色婷婷| 97在线碰| 亚洲精品视频免费看| 免费播放毛片| 亚洲av日韩av制服丝袜| 不卡无码网| 亚洲狼网站狼狼鲁亚洲下载| 国产亚洲精品自在久久不卡| 欧美福利在线观看| 香蕉eeww99国产在线观看| 日本成人精品视频| 国产乱子伦视频在线播放| 激情无码字幕综合| AV熟女乱| 日韩二区三区| 久久91精品牛牛| 欧美天天干| 浮力影院国产第一页| 老色鬼欧美精品| 日韩精品无码不卡无码| 国产日韩久久久久无码精品| 无码一区中文字幕| 成年午夜精品久久精品| 一级黄色片网| 日韩二区三区无| 在线免费不卡视频| m男亚洲一区中文字幕| 天天摸天天操免费播放小视频| 69综合网| 久久婷婷五月综合97色| 亚洲最新网址| 亚洲人成网7777777国产| 亚洲国产91人成在线| 色综合狠狠操| 香蕉精品在线| 国产亚洲现在一区二区中文| 看你懂的巨臀中文字幕一区二区| 国产手机在线小视频免费观看| 婷婷99视频精品全部在线观看 | 国产在线视频自拍| aaa国产一级毛片| 精品福利视频网| 无码日韩人妻精品久久蜜桃| 中文字幕1区2区| 国内精品91| 午夜欧美理论2019理论| 亚洲成人高清在线观看| 特级毛片免费视频| 亚洲成人高清无码| 免费在线国产一区二区三区精品| 国产欧美日韩综合在线第一| 欧美在线黄| 久久精品欧美一区二区| 在线精品自拍| 国产精品亚洲精品爽爽| 婷婷六月天激情| 少妇人妻无码首页|