《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 軌道交通綜合監(jiān)控系統(tǒng)數(shù)據(jù)庫(kù)集群設(shè)計(jì)
軌道交通綜合監(jiān)控系統(tǒng)數(shù)據(jù)庫(kù)集群設(shè)計(jì)
2014年微型機(jī)與應(yīng)用第13期
朱小龍1,張興波2,趙麗敏3,陸 晨1
1.華北計(jì)算機(jī)系統(tǒng)工程研究所 研究生部2.北京國(guó)際系統(tǒng)控制有限公司3.德州學(xué)院 計(jì)算機(jī)系,山東
摘要: 軌道交通綜合監(jiān)控是軌道交通自動(dòng)化現(xiàn)階段的發(fā)展方向。而構(gòu)建一個(gè)實(shí)時(shí)的、高可用性的數(shù)據(jù)庫(kù)系統(tǒng)正是建立穩(wěn)定高效的綜合監(jiān)控平臺(tái)的基礎(chǔ)條件。MySQL Cluster是MySQL適用于分布式計(jì)算環(huán)境、多主機(jī)架構(gòu)的實(shí)時(shí)數(shù)據(jù)庫(kù)版本,具有高可用性和無(wú)單點(diǎn)故障的應(yīng)用特點(diǎn)。根據(jù)軌道交通綜合監(jiān)控系統(tǒng)的應(yīng)用需求,設(shè)計(jì)了綜合監(jiān)控系統(tǒng)數(shù)據(jù)庫(kù)集群架構(gòu)。
Abstract:
Key words :

  摘  要軌道交通綜合監(jiān)控是軌道交通自動(dòng)化現(xiàn)階段的發(fā)展方向。而構(gòu)建一個(gè)實(shí)時(shí)的、高可用性的數(shù)據(jù)庫(kù)系統(tǒng)正是建立穩(wěn)定高效的綜合監(jiān)控平臺(tái)的基礎(chǔ)條件。MySQL Cluster是MySQL適用于分布式計(jì)算環(huán)境、多主機(jī)架構(gòu)的實(shí)時(shí)數(shù)據(jù)庫(kù)版本,具有高可用性和無(wú)單點(diǎn)故障的應(yīng)用特點(diǎn)。根據(jù)軌道交通綜合監(jiān)控系統(tǒng)的應(yīng)用需求,設(shè)計(jì)了綜合監(jiān)控系統(tǒng)數(shù)據(jù)庫(kù)集群架構(gòu)。

  關(guān)鍵詞: MySQL Cluster;軌道交通綜合監(jiān)控;數(shù)據(jù)庫(kù)集群

  軌道交通綜合監(jiān)控系統(tǒng)是原有各個(gè)單獨(dú)機(jī)電系統(tǒng)的應(yīng)用集成,具有多子站、多子系統(tǒng)和地理分布分散的結(jié)構(gòu)特點(diǎn)。其主要功能包括對(duì)設(shè)備的集中監(jiān)控和子系統(tǒng)之間的協(xié)調(diào)聯(lián)動(dòng),一般綜合監(jiān)控系統(tǒng)由電力(PSCADA)、信號(hào)(SIG)、環(huán)控(BAS)、乘客信息(PIS)、乘客廣播(PA)、視頻監(jiān)控(CCTV)、火災(zāi)報(bào)警(FAS)、售檢票(AFC)、門禁(ACS)和屏蔽門(PSD)等子系統(tǒng)組成。

  數(shù)據(jù)庫(kù)是軌道交通綜合監(jiān)控系統(tǒng)各種應(yīng)用的基礎(chǔ),是數(shù)據(jù)交換和共享信息的直接載體。使用MySQL Cluster數(shù)據(jù)庫(kù)集群既能滿足系統(tǒng)較強(qiáng)實(shí)時(shí)性和高可用性的要求(NDB存儲(chǔ)引擎采用內(nèi)存表和無(wú)單點(diǎn)故障設(shè)計(jì)),又具有低成本、易擴(kuò)展的優(yōu)點(diǎn)。

  1 系統(tǒng)結(jié)構(gòu)

  1.1 MySQL Cluster結(jié)構(gòu)

  MySQL Cluster由若干個(gè)主機(jī)中內(nèi)存數(shù)據(jù)庫(kù)組成集群。各個(gè)主機(jī)之間無(wú)共享結(jié)構(gòu),降低了分布式系統(tǒng)的硬件需求。在MySQL Cluster中,有3種類型的節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)表示為一個(gè)服務(wù)進(jìn)程。MySQL Cluster結(jié)構(gòu)圖如圖1所示。

001.jpg

  管理節(jié)點(diǎn):集群管理服務(wù)器,負(fù)責(zé)配置系統(tǒng)參數(shù)、管理節(jié)點(diǎn)的啟動(dòng)和停止、運(yùn)行備份。節(jié)點(diǎn)中存儲(chǔ)了數(shù)據(jù)庫(kù)集群的整體配置信息,它必須在其他節(jié)點(diǎn)進(jìn)程啟動(dòng)之前啟動(dòng)。

  數(shù)據(jù)節(jié)點(diǎn):用于存儲(chǔ)集群的數(shù)據(jù),集群的數(shù)據(jù)以數(shù)據(jù)組(Data Group)的形式存儲(chǔ)在數(shù)據(jù)節(jié)點(diǎn)上,一個(gè)數(shù)據(jù)組中包含NoOfReplica個(gè)數(shù)據(jù)節(jié)點(diǎn),這些節(jié)點(diǎn)互為副本,數(shù)據(jù)組中單個(gè)副本節(jié)點(diǎn)故障不影響數(shù)據(jù)庫(kù)的正常使用。在集群中數(shù)據(jù)組按數(shù)據(jù)節(jié)點(diǎn)的nodeID順序排序來(lái)劃分,NoOfReplica取值范圍為1~4,目前NDB只支持取值1~2。

  SQL節(jié)點(diǎn):客戶端和外部API訪問(wèn)集群數(shù)據(jù)的接口服務(wù)器(MySQL Server)??筛鶕?jù)不同應(yīng)用的需求靈活配置和構(gòu)造,如讀寫分離和負(fù)載均衡等。

  1.2 集群復(fù)制

  MySQL Cluster集群支持異步復(fù)制。復(fù)制結(jié)構(gòu)中包含主服務(wù)器(Master Server)和從服務(wù)器(Slave Server),數(shù)據(jù)和操作由主服務(wù)器復(fù)制到從服務(wù)器中。NDB二進(jìn)制日志接口線程運(yùn)行在主、從服務(wù)器兩端將數(shù)據(jù)庫(kù)的變化存儲(chǔ)到二進(jìn)制格式的日志文件中,并通過(guò)復(fù)制通道,將主服務(wù)器的變化保存到從服務(wù)器中。集群復(fù)制如圖2所示。

002.jpg

  2 數(shù)據(jù)模型

  在綜合監(jiān)控系統(tǒng)中,數(shù)據(jù)庫(kù)平臺(tái)需要提供的數(shù)據(jù)功能包括:存儲(chǔ)設(shè)備及現(xiàn)場(chǎng)采集的實(shí)時(shí)狀態(tài)和信息,存儲(chǔ)設(shè)備及系統(tǒng)的配置參數(shù)(包括通信參數(shù)、設(shè)備信息、系統(tǒng)配置和權(quán)限配置等),存儲(chǔ)設(shè)備及系統(tǒng)的運(yùn)行記錄數(shù)據(jù)(包括設(shè)備遙測(cè)或遙信值記錄、操作記錄等)。

  數(shù)據(jù)模型參考IEC-61970標(biāo)準(zhǔn),并根據(jù)軌道交通綜合監(jiān)控應(yīng)用的特點(diǎn)對(duì)公共對(duì)象接口模型CIM(Common Interface Model)做相應(yīng)的拓展設(shè)計(jì)。CIM是一個(gè)抽象模型,由描述系統(tǒng)的有關(guān)對(duì)象組成。這些對(duì)象又劃分成若干個(gè)邏輯包,每個(gè)邏輯包代表了整個(gè)系統(tǒng)模型的某個(gè)部分。核心包用于表示系統(tǒng)的核心結(jié)構(gòu)或構(gòu)件;拓?fù)浒糜诒硎緲?gòu)件之間的連接關(guān)系;運(yùn)營(yíng)包用于描述人員、權(quán)限、財(cái)務(wù)等運(yùn)營(yíng)關(guān)系;量測(cè)包和SCADA包用于描述通信、遙信、遙測(cè)、遙調(diào),遙控等結(jié)構(gòu)。數(shù)據(jù)模型組織圖如圖3所示。

003.jpg

  (1)核心包(Core):包括車站類、子系統(tǒng)類、區(qū)域類、設(shè)備類、設(shè)備端子類。車站對(duì)象表示軌道交通線上的車站,一般分為正線車站和車輛段兩種類型。有站號(hào)、站名等信息。區(qū)域?qū)ο蟊硎镜乩淼膮^(qū)域位置,主要有站廳、站臺(tái)、通道、隧道區(qū)間、大小端機(jī)房等,詳盡的區(qū)域描述有利于提高車站的應(yīng)急處理效率。子系統(tǒng)對(duì)象表示機(jī)電系統(tǒng)的功能和職責(zé)分類,軌道交通綜合監(jiān)控中的子系統(tǒng)主要包括環(huán)控(BAS)、信號(hào)(SIG)、電力(PSCADA)、售檢票(AFC)、視頻監(jiān)控(CCTV)、乘客信息與廣播(PIS&PA)等,運(yùn)營(yíng)中各子系統(tǒng)各司其職,保證整個(gè)系統(tǒng)的正常運(yùn)行。設(shè)備對(duì)象描述設(shè)備的基本信息:設(shè)備編號(hào)、設(shè)備名稱、車站、區(qū)域、子系統(tǒng)、設(shè)備類型等。設(shè)備端子對(duì)象表示設(shè)備的連接屬性,一個(gè)設(shè)備可以對(duì)應(yīng)若干個(gè)設(shè)備連接端子。

 ?。?)拓?fù)浒═opology):用來(lái)描述設(shè)備的連接屬性,如軌道、道岔的連接,電力線路的連接等。主要包括連接節(jié)點(diǎn)類、拓?fù)涔?jié)點(diǎn)類和拓?fù)鋶u類。設(shè)備都是通過(guò)連接節(jié)點(diǎn)連接,如果在某個(gè)設(shè)備端子上存在多種連接方式(連接節(jié)點(diǎn)),則構(gòu)成拓?fù)涔?jié)點(diǎn),在同一時(shí)刻拓?fù)涔?jié)點(diǎn)上只有一種連接方式有效。若干個(gè)拓?fù)涔?jié)點(diǎn)則構(gòu)成一個(gè)拓?fù)鋶u,拓?fù)鋶u即為統(tǒng)籌的聯(lián)鎖區(qū)。

 ?。?)運(yùn)營(yíng)包(Operation):包括員工、部門、權(quán)限等信息。其中用戶對(duì)象用來(lái)描述用戶的信息,部門對(duì)象用來(lái)描述運(yùn)營(yíng)層面職能部門的信息,權(quán)限對(duì)象則用于全局的用戶權(quán)限管理和系統(tǒng)權(quán)限認(rèn)證功能。

  (4)量測(cè)和SCADA包(Measure&SCADA):量測(cè)和SCADA包是系統(tǒng)的核心模塊,描述量測(cè)相關(guān)信息。通信對(duì)象和RTU對(duì)象表示SCADA通信的基本參數(shù),遙測(cè)類是模擬量輸入,累計(jì)量輸入和狀態(tài)量輸入的父類。控制類是設(shè)定點(diǎn)類和狀態(tài)量輸出類的父類。每個(gè)控制對(duì)象和遙測(cè)對(duì)象需要對(duì)應(yīng)到具體的設(shè)備及設(shè)備端子上才具有實(shí)際的意義。

  根據(jù)數(shù)據(jù)對(duì)象的信息和關(guān)系,將其映射為關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)的數(shù)據(jù)模式。獨(dú)立性比較強(qiáng)的對(duì)象,映射為數(shù)據(jù)模式中的實(shí)體;對(duì)于依附于其他對(duì)象才有實(shí)際意義,或者具有一對(duì)一關(guān)系的對(duì)象,則映射為實(shí)體的屬性;而那些具有多對(duì)多關(guān)系的對(duì)象,則直接映射為數(shù)據(jù)模式中的關(guān)系。

  3 集群實(shí)現(xiàn)

  軌道交通綜合監(jiān)控系統(tǒng)一般分成中心和車站兩層結(jié)構(gòu),主要的操作都在控制中心上完成,特殊情況下操作權(quán)限可以下放到車站,以便車站進(jìn)行就地控制。集群的數(shù)據(jù)節(jié)點(diǎn)分別設(shè)置在中心和車站,減輕系統(tǒng)的網(wǎng)絡(luò)通信負(fù)擔(dān),增加系統(tǒng)的可用性。另外,在控制中心一般還會(huì)設(shè)置一個(gè)備用中心,防止控制中心因服務(wù)器故障而失效。將備用中心配置成集群的數(shù)據(jù)復(fù)制,如果中心服務(wù)器發(fā)生故障,系統(tǒng)可以啟用中心備用的數(shù)據(jù)服務(wù)器,保證正常運(yùn)行。集群結(jié)構(gòu)圖如圖4所示。

004.jpg

  MySQL Cluster數(shù)據(jù)庫(kù)集群有多個(gè)版本的安裝文件,本例中采用免安裝的Windows版本。這個(gè)版本的安裝過(guò)程比較簡(jiǎn)單,只需要拷貝程序文件和配置文件即可。默認(rèn)的程序集文件的路徑為C:\mysql或C:\Program Files\MySQL\MySQL Server5.6。管理節(jié)點(diǎn)上需要的程序文件為(ndb_mgmd.exe和ndb_mgm.exe,后者為可選項(xiàng)),配置文件config.ini中需要包含節(jié)點(diǎn)信息(主機(jī)名、IP地址和節(jié)點(diǎn)類型等),數(shù)據(jù)存儲(chǔ)信息(數(shù)據(jù)存儲(chǔ)內(nèi)存和索引存儲(chǔ)內(nèi)存分配,數(shù)據(jù)文件和日志文件配置),數(shù)據(jù)組節(jié)點(diǎn)數(shù)量(NoOfReplica)等。數(shù)據(jù)節(jié)點(diǎn)上需要的程序文件是ndbd.exe或者ndbmtd.exe,配置文件中只需說(shuō)明集群連接屬性(ndb-connectstring=管理節(jié)點(diǎn)IP地址:端口號(hào),端口號(hào)默認(rèn)為1186)。SQL節(jié)點(diǎn)拷貝完全的免安裝文件,配置文件my.ini中只需說(shuō)明集群連接屬性和存儲(chǔ)引擎參數(shù)即可(ndbcluster ndb-connectstring=管理節(jié)點(diǎn)IP:1186)。模型系統(tǒng)配置如表1所示。

005.jpg

  主集群安裝完成后,使用MySQL Sever Windows安裝文件(msi文件)安裝中心備用數(shù)據(jù)庫(kù)。備用數(shù)據(jù)庫(kù)不采用MySQL Cluster集群結(jié)構(gòu),以防止由于集群管理節(jié)點(diǎn)故障而導(dǎo)致整個(gè)集群失效。設(shè)置備用數(shù)據(jù)庫(kù)為主集群的復(fù)制。

  4 實(shí)際應(yīng)用

  按上述步驟安裝數(shù)據(jù)庫(kù)集群,然后根據(jù)設(shè)計(jì)的數(shù)據(jù)模式建立數(shù)據(jù)庫(kù)和數(shù)據(jù)表。在實(shí)際應(yīng)用中不僅需要記錄量測(cè)和SCADA數(shù)據(jù)的實(shí)時(shí)測(cè)量值,還需要記錄其歷史運(yùn)行記錄,按照其特點(diǎn)分別創(chuàng)建參數(shù)庫(kù)SysPara、實(shí)時(shí)庫(kù)RealScada和歷史庫(kù)HisRecord 3個(gè)數(shù)據(jù)庫(kù)。參數(shù)庫(kù)包含核心包、運(yùn)營(yíng)包、量測(cè)包和SCADA包的通信鏈路表、RTU表、限值表、報(bào)警組表等信息;實(shí)時(shí)庫(kù)包含量測(cè)包和SCADA包的大部分具有實(shí)時(shí)內(nèi)容的部分以及實(shí)時(shí)報(bào)警表、拓?fù)浒膬?nèi)容;歷史庫(kù)主要是從實(shí)時(shí)庫(kù)轉(zhuǎn)儲(chǔ)的數(shù)據(jù)和用戶操作記錄表等信息。將3個(gè)數(shù)據(jù)庫(kù)建立在集群的數(shù)據(jù)節(jié)點(diǎn)上,參數(shù)庫(kù)和歷史庫(kù)采用磁盤表存儲(chǔ),實(shí)時(shí)庫(kù)采用內(nèi)存表存儲(chǔ)。

  數(shù)據(jù)庫(kù)平臺(tái)是綜合監(jiān)控系統(tǒng)開發(fā)的基礎(chǔ),選用以上設(shè)計(jì)是因?yàn)镮EC-61970的公共數(shù)據(jù)接口模型具有良好的結(jié)構(gòu)性和規(guī)范性,以及MySQL Cluster數(shù)據(jù)庫(kù)軟件高實(shí)時(shí)性、高可用性和易拓展的優(yōu)點(diǎn)。實(shí)驗(yàn)過(guò)程中數(shù)據(jù)庫(kù)集群也表現(xiàn)出較好的性能,能夠滿足軌道交通綜合監(jiān)控系統(tǒng)的一般要求。但是在負(fù)載和性能方面,數(shù)據(jù)庫(kù)集群還有進(jìn)一步優(yōu)化的空間。

  參考文獻(xiàn)

  [1] 金紫蘅.從雙機(jī)到四機(jī)中MySQL數(shù)據(jù)庫(kù)高可用性實(shí)現(xiàn)方法[J].中國(guó)科技信息,2011(16):91,96.

  [2] 程鵬,劉偉.電力SCADA系統(tǒng)運(yùn)行平臺(tái)的存儲(chǔ)系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)研究與發(fā)展,2011,48(z1):132-136.

  [3] 張慎明,劉國(guó)定.IEC61970標(biāo)準(zhǔn)簡(jiǎn)介[J].電力系統(tǒng)自動(dòng)化,2002(14):1-6.

  [4] 唐漢明,翟振興,蘭麗華.深入淺出MySQL數(shù)據(jù)庫(kù)開發(fā)、優(yōu)化與管理維護(hù)[M].北京:人民郵電出版社,2008.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。