?

適用于綜合監控系統的過程數據庫冗余框架

2014-04-07 01:47戴宏斌
城市軌道交通研究 2014年11期
關鍵詞:庫中工作站框架

戴宏斌

(國電南自軌道交通工程有限公司,210032,南京∥工程師)

適用于綜合監控系統的過程數據庫冗余框架

戴宏斌

(國電南自軌道交通工程有限公司,210032,南京∥工程師)

過程數據庫作為軌道交通綜合監控系統的實時數據中樞,其可靠性對整個綜合監控系統的持續穩定運行至關重要。冗余是保障可靠性的有效技術。提出了一種適用于綜合監控系統的過程數據庫分布式冗余框架。該框架針對綜合監控系統中實時數據相關的各種特征,在冗余過程數據庫的分布、同步和故障容錯等方面分別采用了適合的策略,從而更有效地實現了過程數據庫的冗余,保障其可靠性,為綜合監控系統持續可靠運行奠定基礎。

地鐵;綜合監控系統;過程數據庫;冗余;同步;故障容錯

Author'saddressNanjing SAC Rail Transit Engineering Co.,Ltd,210032,Nanjing,China

在地鐵自動化監控領域,綜合監控系統正獲得越來越廣泛的應用。綜合監控系統以集成和互聯的方式將多個專業統一于一致的框架之中[1]。通過實時獲取地鐵運營現場的各專業信息數據,集中進行一致的處理,并及時完成合理的控制,保障地鐵正常、安全的運營。

綜合監控系統的實時數據核心是過程數據庫[2],又簡稱為過程庫,集中統一存放了采集自地鐵運營各專業的最新數據的實時鏡像。為了實時監控地鐵的運營狀況,綜合監控系統通過采集或I/O模塊從設備或子系統獲得最新的現場狀態數據并實時更新過程庫中的相關數據;HMI(人機界面)模塊從過程庫獲取實時數據以人性化的方式展現;告警模塊依據過程庫中實時狀態數據觸發報警;而操作員根據實際情況,通過過程庫即時發出指令進行實時控制。過程庫作為綜合監控系統的實時數據中樞為其它模塊提供一致的實時數據訪問服務。

由于地鐵運營涉及大規模人身安全,因此綜合監控系統具有嚴格的可靠性要求,而作為實時數據核心的過程庫,是整個系統賴以可靠運行的基礎,其可靠性需求非常高。冗余是保障可靠性的有效技術。文獻[3]中探討了綜合監控系統整個冗余體系的各個方面,例如在中央綜合監控系統或者車站綜合監控系統的局域網中,通常不只運行1臺服務器,而是同時運行2臺互為熱備的冗余服務器,并為多個專業配置若干臺工作站。同樣,冗余也是保障過程庫可靠性的有效技術。因此,通常在局域網中的熱備冗余服務器上會同時運行相同的過程庫,以實現過程庫的冗余。這意味著綜合監控系統中的過程庫采用了分布式冗余框架。由于過程庫用于提供實時數據訪問服務,因此,分布式冗余框架中的所有過程庫必須通過實時通信保持數據實時一致,這樣才能保證從任一過程庫訪問的實時數據數值都是實時一致的,這稱為同步[4],反之稱為失步。

本文提出一種適用于地鐵綜合監控系統的過程庫分布式冗余框架,該框架針對地鐵綜合監控系統數據規模龐大、監控數據存在內在語義關聯、工作站以實時數據查詢為主、分專業設立等特征,在冗余過程庫的分布、同步和故障容錯[5]等方面分別采用了各種適合的策略,從而更有效地實現了綜合監控系統中過程庫的冗余,保障了過程庫的可靠性。

1 實時數據訪問類型

綜合監控系統的過程庫中保存了地鐵運營現場各專業信息的最新數據,并且不斷實時更新以保證及時反映現場的當前狀況,從而作為實時數據中樞為其它模塊提供實時數據訪問服務。綜合監控系統中對過程庫的實時數據訪問總體可以分為2類:

一類是查詢訪問,從過程庫中獲取實時數據的最新數值,以滿足應用需求。常見的如HMI模塊從過程庫中查詢列車的最新位置數據,在列車運行圖示上動態顯示;告警模塊從過程庫中查詢車站當前的溫、濕度以及二氧化碳濃度數據,并在異常時報警;趨勢模塊周期性從過程庫中查詢運行時電流、電壓等數據,并以曲線形式展示,等等。查詢訪問不會改變過程庫中實時數據的數值。

另一類實時數據訪問是更新訪問,依據應用需求,更新過程庫中實時數據的數值。典型的如:采集或I/O模塊從設備或子系統獲得運營現場的最新狀態數據后會對過程庫中的相關數據進行實時更新,并同時更新其獲得時間;而操作員做出的控制指示(如通、斷電遙控,空調模式切換等),常常也首先寫入過程庫,并經由過程庫知會控制模塊執行。更新訪問會改變過程庫中實時數據的數值。

2 過程庫冗余框架

為保障綜合監控系統中過程庫的可靠性,通常在熱備雙冗余服務器上同時運行相同的過程庫,以實現過程庫的冗余。工作站則有2種方式,一種是工作站上不運行過程庫,而所有實時數據訪問,都通過通信由服務器上的過程庫提供遠程實時數據訪問服務;另一種是在工作站上運行本地過程庫。

由于工作站主要用于提供界面和操作員交互,因此其上的多數模塊如HMI、告警界面、趨勢等模塊都需要頻繁訪問過程庫以獲得最新狀態數值,并刷新以將運營狀況實時展現給操作員。這些主要都依靠查詢訪問。只有必要時,如操作員做出適當的控制操作時,會涉及更新訪問??梢?,工作站的實時數據訪問中,絕大多數為查詢訪問。因而本研究中的過程庫冗余框架采用了第二種方式,即在工作站上運行本地過程庫,這樣可以直接對這些查詢訪問提供本地服務,而不需籍由通信提供遠程服務。這一方面避免了由此帶來的繁重網絡通信負載,更重要的是,由于完全沒有通信時延,本地提供查詢訪問服務的實時性能明顯優于遠程服務,可以更及時地向操作員顯示當前狀況。當然,代價是工作站的過程庫也必須和服務器的過程庫保持實時同步。

在本文的過程庫冗余框架中,主、備服務器和工作站上均運行過程庫,并且通過通信保持實時同步。為了便于描述,分別將主、備服務器和工作站上的過程庫稱為主過程庫、備過程庫和客戶過程庫,依次用Ra,Rs和Rc表示。圖1是過程庫分布式冗余框架的示意圖。

圖1 過程庫分布式冗余框架示意圖

3 冗余過程庫同步

綜合監控系統的過程庫中保存了所有地鐵運營現場的當前狀態實時數據,這里將其稱為過程庫的當前狀態,用Si,i=1,2,3,…表示。冗余框架中的所有過程庫必須始終維持實時同步。由于查詢訪問不修改過程庫的實時數據,因此不會導致過程庫狀態變更,僅在本地過程庫執行就可以完成。這里主要考慮當更新訪問修改了過程庫中的數據時,冗余框架中原來同步的分布式過程庫如何維持同步。

3.1 主過程庫的更新訪問

假設冗余框架中所有過程庫中實時數據均為運營現場的最新數據,過程庫已經同步,狀態均為Si,如果主服務器上的數據采集模塊獲得了新的數據,會提請更新訪問請求D,以更新過程庫中的相關數據到最新。為了維持所有過程庫同步,首先由主過程庫執行訪問請求D,將自身的相關數據更新,從而主過程庫的狀態從Si變更為Si+1;然后將同步信息M=<Ra,i+1,D>通過通信分發給備過程庫和客戶過程庫(其中Ra表示角色為主過程庫,i+1為主過程庫最新狀態編號,D為更新訪問請求),備過程庫和客戶過程庫在接收到同步信息后,通過執行更新訪問請求D也從狀態Si變更到Si+1,從而維持和主過程庫同步。圖2是該策略的示意圖。

圖2 主過程庫的更新訪問請求同步策略

3.2 備過程庫的更新訪問

備服務器上的更新訪問請求是否可以采用和主服務器類似的模式,先由本地過程庫,即備過程庫執行,然后分發給主過程庫和客戶過程庫執行以維持同步呢?這在綜合監控系統中是不可以的。因為這樣做可能造成冗余框架中各過程庫中數據的更新順序不一致。由于綜合監控系統中的數據存在內在語義關聯,因此這是不允許的。舉一個示意性的例子,供電裝置的電流突變數據在主服務器產生一個更新訪問請求,而對應的保護裝置的跳閘信號在隨后時刻在備服務器產生一個更新訪問請求,如果主、備過程庫都采取先本地執行而后分發的策略,那么由于通信時延的存在,兩個更新請求在本地過程庫執行完成后分發到對方執行時,對方更新請求的本地執行已經在此之前完成。因此,雖然最終主、備過程庫中數據狀態是一致的,但是主過程庫反映的信息是電流突變導致之后的跳閘,而備過程庫反映的情況正好相反,是跳閘后出現電流突變,對于電調操作員而言這是不同類型的故障,需要采用不同的應對措施,而責任認定也不一樣。

因此,這在綜合監控系統系統中是不能接受的。為了避免該情況,這里采用了這樣一種策略:備過程庫將得到的更新訪問請求通過通信轉發給主過程庫執行,然后執行結果通過通信返回。備過程庫其實是充當了一個“二傳手”的角色將請求傳遞給了主過程庫,本身并沒有本地執行,直到主過程庫執行后將同步信息分發給備過程庫和客戶過程庫時,備過程庫才執行以維持同步。這就迫使所有更新訪問請求必須首先在主過程庫順序執行而后依次分發,從而確保冗余框架中各過程庫內的數據更新順序是一致的。圖3是該同步策略的示意圖。

圖3 備過程庫的更新訪問請求同步策略

這樣做不會顯著增加通信壓力,因為主過程庫向備過程庫分發同步信息的通信量主要在主過程庫到備過程庫的方向,而備過程庫傳遞更新訪問請求的通信量基本集中在相反方向。由于綜合監控系統中的通信通道一般是全雙工的,因此這樣并不會造成明顯的通信壓力增加。這種策略的一個優點是備過程庫通過通信透明傳遞了更新訪問請求,從而使得備服務器上的實時數據訪問就像在主服務器上一樣,因而可以將訪問過程庫的模塊相對均勻地分布于主、備服務器運行。對于綜合監控這種功能復雜的大規模系統,這樣可以有效地均衡負載。

客戶過程庫的更新訪問請求的處理策略和備過程庫一致。

3.3 冗余過程庫的工作流程

過程庫持續提供實時數據訪問服務是綜合監控系統穩定運行的基礎。為了實現服務器上過程庫的冗余,每一臺服務器上的過程庫開始運行時首先通過通信檢測是否已經有主過程庫在運行,如果沒有則自身作為主過程庫運行;如果已經存在,則作為備過程庫運行。此時首先通過通信獲取主過程庫的所有狀態數據從而實現和主過程庫同步,然后在持續執行主過程庫分發的同步信息以維持同步的同時,為本地的各種實時數據訪問提供服務。如前所述,查詢訪問在本地執行,而更新訪問透明傳遞給主過程庫。圖4是備過程庫的運行流程圖。

客戶過程庫的運行流程與備過程庫類似。但需要注意的是,客戶過程庫不僅與主過程庫存在通信,還與備過程庫存在通信,但備過程庫僅定時向客戶過程庫分發角色信息Rs以維持通信,不分發自身執行過的更新訪問以免客戶過程庫重復執行。這會使得其中實時數據重復更新,從而導致綜合監控系統的工作站出現重復報警或者供電功率重復累加等錯誤。

圖4 備過程庫的運行流程

4 冗余過程庫的故障容錯

冗余過程庫的故障容錯是綜合監控系統冗余體系的關鍵之一。作為實時數據中樞的過程庫一旦無法提供實時數據訪問服務,整個系統將陷入癱瘓。因此,采用冗余的方式,在主、備服務器上同時運行主、備過程庫并保持同步,當其中之一失效后,另一過程庫仍然能夠提供實時數據訪問服務,從而實現故障容錯。由于在冗余框架中,客戶過程庫保持與主過程庫同步,備過程庫失效對冗余框架的影響不大。這里主要討論主過程庫的故障容錯。

當主過程庫失效后,備過程庫將迅速接管,作為主過程庫繼續提供實時數據服務,而客戶過程庫要實現并維持和新主過程庫的同步。由于綜合監控系統結構復雜,故障多樣。因此,當原主過程庫失效時,其最后的同步信息,可能已經分發給了備過程庫和所有的客戶過程庫,也可能只分發給了其中的一部分,或者根本沒來及分發。因此客戶過程庫和原備過程庫,即新主過程庫可能是同步的,也可能是失步的。為了保證同步,必須通過通信獲取新主過程庫的所有狀態數據重新實現同步。然而,由于綜合監控系統包含諸多專業,其過程庫的數據規模很大,獲取過程庫中全部狀態數據會導致很大的通信量,而容錯過程中多個客戶過程庫同時獲取全部狀態數據對通信網絡將帶來短時繁重網絡負載沖擊。

為此,這里采用了這樣一種策略:如果主過程庫由于主服務器宕機等原因失效,那么備過程庫將升格為主過程庫,在角色變更后,新的主過程庫將首先通過通信將角色變更信息M0=<Ra,is,D0>發送給所有的客戶過程庫(其中Ra表示角色變更為主過程庫,is為新主過程庫的初始狀態,也就是原備過程庫的最終狀態編號,D0是填充的無效更新訪問請求)。然后,新主過程庫將提供實時數據訪問服務,對于更新訪問請求,將在執行完成后分發同步信息。通過分發角色變更信息M0,原備過程庫通知客戶過程庫自己轉換為主過程庫運行,初始狀態為is;客戶過程庫在接收到后,將is與自己在原主過程庫失效后的當前狀態編號ic比較,如果一致,表示在故障容錯過程中,客戶過程庫和原備過程庫并未失步,因此可以直接繼續運行,維持和新主過程庫同步即可。否則,客戶過程庫和原備過程庫失步,只能通過通信從新主過程庫獲取全部當前狀態數據,重新實現同步,然后維持同步。這樣,最終原備過程庫作為新主過程庫運行,而所有客戶過程庫實現并維持和新主過程庫同步,實現故障容錯。

這一策略通過狀態編號判斷在故障容錯過程中客戶過程庫和新主過程庫是否失步,可以避免沒有失步的客戶過程庫也通過獲取全部狀態數據來重新實現同步而產生的不必要的通信負載和時間開銷,從而盡可能降低該過程中客戶過程庫同時獲取全部狀態數據對綜合監控系統的通信網絡帶來的短時網絡負載沖擊。

5 客戶過程庫的優化

在過程庫冗余框架中,主、備過程庫中保存了所有專業的實時數據以實現冗余。但是對于客戶過程庫,并非所有實時數據都會被訪問。這是由于安全和隔離的要求,工作站常按專業劃分,如電調工作站、環調工作站等。對于某專業的工作站,其操作員僅有權限操作本專業的數據。例如電調操作員只能在電調工作站查看供電信息,實行電調專業的控制,無權操作環調等其它專業的數據;同樣環調操作員只能在環調工作站進行環調專業的監控工作,無權訪問電調等其它專業的數據。這樣可以避免綜合監控系統的不同專業間由于誤操作而造成事故??梢?,某專業工作站的過程庫中僅該專業的實時數據是被使用的。

因此,對于各專業的工作站,其上的客戶過程庫中僅保存與本專業相關的實時數據,并在主過程庫向客戶過程庫分發與更新訪問請求時僅分發與該專業相關的更新訪問請求,從而顯著降低各專業工作站的客戶過程庫的存儲空間和同步通信開銷。

6 結語

本文提出一種適用于地鐵綜合監控系統的過程數據庫冗余框架設計方案,不僅在主、備服務器上同步運行主、備過程庫以實現冗余,還在工作站上同步運行客戶過程庫以提高實時數據查詢訪問的實時性能。通過為主、備過程庫的更新訪問請求分別設計合理的同步策略,確保更新訪問在冗余框架中的所有過程庫中以相同順序執行。在故障容錯過程中,依據過程庫狀態編號辨別客戶過程庫和新主過程庫間的同、失步狀況,盡可能降低客戶過程庫同時獲取全部狀態數據產生的網絡負載沖擊。通過在各專業工作站的客戶過程庫中僅保存與本專業相關的實時數據,顯著降低其存儲空間和同步通信開銷。通過在過程庫的分布、同步以及故障容錯等方面分別采用適合的策略,實現了綜合監控系統中過程庫的冗余,從而保障了過程庫的可靠性,有助于更有效地保障綜合監控系統的整體可靠性。

[1] 玉君,戴孫放.綜合監控系統在城市軌道交通工程中的應用[J].城市軌道交通研究,2010(9):1.

[2] 周東紅,袁泉,陳洪如,等.地鐵綜合監控自動化系統中關鍵技術的解決方案[J].城市軌道交通研究,2006(8):50.

[3] 趙春艷.軌道交通綜合監控系統冗余解決方法[J].機電信息,2012(3):111.

[4] 楊佳,何丕雁.分布式實時數據庫系統數據同步通信研究[J].廣東通信技術,2008(4):73.

[5] 徐勁松,陳抒凡.城軌交通綜合監控系統的冗余設計[J].現代城市軌道交通,2008(5):29.

[6] 劉佳寶,梁奕,陳天浩.RT21-ISCS綜合監控系統中實時歷史數據庫的設計與實現[J].城市軌道交通研究,2012(1):59.

A Redundancy Framework of Process Databases Suitable for ISCS

Dai Hongbin

The process databases are the core of the ISCS real-time data in metro,their reliability is of great importance to ensure the continuously stable operation of ISCS,while redundancy is an effective technology to guarantee the operational reliability.In this paper,a framework of distributed redundant process databases suitable for ISCS is presented.Considering the characteristics of different aspects related to real-time data in ISCS,this framework adopts several suitable strategies in the distribution,synchronization and fault tolerance of the process databases in ISCS,thus it could effectively realizes the redundancy of the process databases and guarantee their reliability.This framework plays a solid foundation for the reliability of the whole ISCS.

metro;integrated supervision and control system(ISCS);process database;redundancy;synchronization;fault tolerance

TP 392:U 29-39

2013-07-15)

猜你喜歡
庫中工作站框架
左權浙理大 共建工作站
框架
街頭的人
戴爾Precision 5750移動工作站
廣義框架的不相交性
從今天開始
智能盤庫在自動化立體庫中的探索和應用
建立工作站 力促雜志健康發展
——《行政科學論壇》雜志工作站掛牌運行
關于原點對稱的不規則Gabor框架的構造
解決小型網絡共享故障
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合