亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        綜合監(jiān)控系統(tǒng)多關(guān)系數(shù)據(jù)庫同步組件設(shè)計

        2012-01-17 01:40:58包德梅
        城市軌道交通研究 2012年11期
        關(guān)鍵詞:關(guān)系數(shù)據(jù)庫標簽服務(wù)器

        朱 超 翁 元 包德梅

        (國電南京自動化股份有限公司,210003,南京∥第一作者,工程師)

        0 前言

        城市軌道交通綜合監(jiān)控系統(tǒng)(ISCS)集成或互聯(lián)BAS(設(shè)備監(jiān)控系統(tǒng))、FAS(防災(zāi)報警系統(tǒng))、PSCADA(電力監(jiān)控)、PA(廣播)、CCTV(閉路電視)等多個專業(yè)子系統(tǒng),實現(xiàn)包括突發(fā)異常工況在內(nèi)的統(tǒng)一運營、統(tǒng)一管理。這其中,以關(guān)系數(shù)據(jù)庫為基礎(chǔ)的大容量歷史數(shù)據(jù)存儲和綜合管理利用是系統(tǒng)平臺不可或缺的重要功能之一。

        就目前ISCS組網(wǎng)結(jié)構(gòu)而言,通常包括三種關(guān)系數(shù)據(jù)庫存儲節(jié)點:OCC(運營控制中心)數(shù)據(jù)存儲、車站級數(shù)據(jù)存儲、面向特定應(yīng)用的數(shù)據(jù)存儲。

        1)OCC數(shù)據(jù)存儲主要以冗余歷史數(shù)據(jù)庫+磁盤陣列的方式配置,主備歷史服務(wù)器共享磁盤陣列數(shù)據(jù)并對外提供統(tǒng)一透明的訪問接口;

        2)在“三級控制、兩級管理”模式下,考慮系統(tǒng)可靠性提升及降級運行的要求,車站級需要具備一定時間段的數(shù)據(jù)存儲功能;

        3)越來越多的用戶和應(yīng)用要求將其所需的各類業(yè)務(wù)數(shù)據(jù)從“胖而全”的集中歷史數(shù)據(jù)庫中分離出來,存放在其他服務(wù)器和數(shù)據(jù)庫節(jié)點上,并保持數(shù)據(jù)準實時同步,以滿足運營對管理模式轉(zhuǎn)變、數(shù)據(jù)查詢實時性、特定數(shù)據(jù)安全性、數(shù)據(jù)管理責任劃分等定向業(yè)務(wù)需求,如用電數(shù)據(jù)管理、設(shè)備維修管理等。

        這些節(jié)點間不可避免地要實現(xiàn)數(shù)據(jù)按需流動和高效同步,可以是數(shù)據(jù)完整鏡像級同步,也可能是按既定條件進行數(shù)據(jù)過濾和數(shù)據(jù)轉(zhuǎn)儲到其他機器節(jié)點上。

        1 現(xiàn)有同步技術(shù)分析

        目前節(jié)點數(shù)據(jù)同步設(shè)計主要包括兩種方式:

        1)多數(shù)ISCS系統(tǒng)平臺采用同步模塊和系統(tǒng)緊密結(jié)合的高耦合方式。即依據(jù)運行操作系統(tǒng),采用的商用數(shù)據(jù)庫平臺及特點,系統(tǒng)內(nèi)模塊間的交互設(shè)計模式等設(shè)計開發(fā),優(yōu)化適應(yīng)自身系統(tǒng)運行的同步模型。這種設(shè)計能較好地滿足自身系統(tǒng)的運行需求,但對特定業(yè)務(wù)數(shù)據(jù)的分離存儲需要重新設(shè)計開發(fā)程序,有些缺少對跨關(guān)系數(shù)據(jù)庫平臺的支持。

        2)采用商用關(guān)系數(shù)據(jù)庫自身附帶的高級發(fā)布訂閱機制,主流商用關(guān)系數(shù)據(jù)庫一般提供此項功能,如MS SQLServer的三種發(fā)布訂閱機制(快照、合并、事務(wù))、Sync Framework和Sync Services;Oracle的高級復(fù)制、流技術(shù);Sybase的RSM復(fù)制管理,MySQL的同步復(fù)制機制等等。這種方式利用商用數(shù)據(jù)庫內(nèi)置一體化的成熟數(shù)據(jù)分發(fā)技術(shù),通過配置方式代替了絕大部分專用程序的開發(fā)測試工作,節(jié)省了系統(tǒng)實施的工作量,具有較好的適應(yīng)性。但面向平臺的實際使用過程需要較多的限制條件,如賬戶要求、故障還原模型、數(shù)據(jù)表建立的主鍵要求、服務(wù)器名稱限制等;配置較為繁瑣,節(jié)點越多,復(fù)雜度越高;對數(shù)據(jù)表增加了很多額外字段和同步專用數(shù)據(jù)量,對同步過程中新建數(shù)據(jù)表的情況處理不佳。

        2 多節(jié)點同步架構(gòu)

        多個關(guān)系數(shù)據(jù)庫節(jié)點同步組件Sycom覆蓋普通的雙機數(shù)據(jù)庫同步需求,并支持多個業(yè)務(wù)節(jié)點間網(wǎng)狀結(jié)構(gòu)的數(shù)據(jù)交互。同步過程由同步規(guī)則約束,同步規(guī)則可以通過界面組態(tài)的友好方式設(shè)定數(shù)據(jù)源、數(shù)據(jù)終點、發(fā)布過濾條件,并細化到記錄級。目的是通過簡單易用的配置界面表達用戶的多樣化業(yè)務(wù)數(shù)據(jù)復(fù)制需求,實現(xiàn)雙機、多機間更為靈活的數(shù)據(jù)同步和發(fā)布復(fù)制工作,以適應(yīng)越來越細化的用戶管理需求。

        2.1 同步模型分析

        同步組件著力解決以下三類典型的網(wǎng)絡(luò)及數(shù)據(jù)模型(見圖1)。

        圖1 同步網(wǎng)絡(luò)模型

        2.1.1 雙機模型

        常用于OCC主備數(shù)據(jù)庫同步和車站配置主備服務(wù)器的情況(配置共享磁盤陣列則無需同步)。目的是將發(fā)生主備冗余切換后一段時間內(nèi)分離存儲的數(shù)據(jù)作并集式合并,再有差別地復(fù)制到雙方數(shù)據(jù)庫中,既保證主備節(jié)點數(shù)據(jù)一致性、完整性和對外部查詢利用的透明性;同時避免數(shù)據(jù)雙向流動導(dǎo)致的數(shù)據(jù)重復(fù)。

        2.1.2 分布式模型

        常用于車站和OCC主備服務(wù)器的數(shù)據(jù)交互,通過骨干的通信網(wǎng)絡(luò)實現(xiàn)數(shù)據(jù)傳輸。每個車站都需要支持區(qū)域內(nèi)一段時間內(nèi)的獨立數(shù)據(jù)磁盤存儲,并要求將所有數(shù)據(jù)最終匯集到中央數(shù)據(jù)中心。正常運行情況下,對車站數(shù)據(jù)的查詢利用可從車站本地獲取,而不是將請求全部都發(fā)送到中心處理。異常及降級模式下,與中心失去通信,由于車站內(nèi)存有數(shù)據(jù),一般數(shù)據(jù)服務(wù)仍可正常進行。

        2.1.3 業(yè)務(wù)數(shù)據(jù)分發(fā)模型

        面向運營管理流程的優(yōu)化和專業(yè)分工的精細化,對數(shù)據(jù)的利用已經(jīng)不僅僅局限于條件查詢及各類HMI(人機界面)顯示(報表、曲線)。越來越多的面向行業(yè)的高級應(yīng)用被提出,如歷史數(shù)據(jù)挖掘應(yīng)用、DSS(輔助決策支持系統(tǒng))、預(yù)期提醒報警、歷史重演等等,有些還需要較高的查詢效率。因此把符合需求的數(shù)據(jù)復(fù)制到專門的業(yè)務(wù)服務(wù)器節(jié)點并保持同步,不僅滿足了應(yīng)用也方便了后續(xù)業(yè)務(wù)的擴展。

        2.2 同步要素

        1)組態(tài)規(guī)則。同步過程由規(guī)則決定,該規(guī)則定制實際數(shù)據(jù)流向、數(shù)據(jù)選擇、同步效率。每個機器節(jié)點都可根據(jù)需要配置本地應(yīng)參與的同步規(guī)則集合。

        2)節(jié)點編號及路徑標簽。網(wǎng)絡(luò)中所有機器節(jié)點的唯一邏輯編碼,以“編號+IP地址(組)+描述”的記錄方式存放在配置文件中,所有節(jié)點都會加載該文件信息以完全掌握自身及其他節(jié)點的編號及網(wǎng)絡(luò)連接信息(見表1)。

        表1 節(jié)點配置文件示例

        3)刻度表。記錄所有同步任務(wù)的同步刻度,表名為*.scale,即同步過程進展,具體到哪個庫哪張表的哪條記錄。當任何情況導(dǎo)致的通信中斷、同步組件中斷、組件退出后,再次啟動時將讀取刻度表中的同步刻度繼續(xù)同步任務(wù)。

        3 同步關(guān)鍵問題設(shè)計

        3.1 同步規(guī)則

        通過HMI方式接受用戶的同步規(guī)則描述,形成.INI配置文件,進而形成同步規(guī)則集合;規(guī)則用于定制Sycom的實際數(shù)據(jù)流向、數(shù)據(jù)選擇以約束同步過程。

        規(guī)則包含如下屬性(主要部分):

        1)RuleID—規(guī)則唯一性標識。

        2)Source/Destination—源/目的節(jié)點。

        3)Login&Password(S/D)—源/目的節(jié)點安全登錄信息。

        4)Directory—同步文件存放目錄。

        5)DBName—數(shù)據(jù)庫名,允許多個數(shù)據(jù)庫項,限定同步庫級范圍。

        6)TableName—二維數(shù)據(jù)表名,允許多個表項,限定同步表級范圍;由于歷史數(shù)據(jù)存儲的長期性和累積性,不可避免地涉及到數(shù)據(jù)分割和二維表的動態(tài)建立,因此表名支持字符串的模式匹配和正則表達式,能滿足有既定規(guī)律命名的表集合。

        7)Filter—過濾器,設(shè)定表中記錄的過濾條件,限定記錄級的同步范圍;不設(shè)定則為全同步模式;支持通用SQL語句的輸入設(shè)定。

        8)同步性能參數(shù)設(shè)置。BatchSize—批處理大小,每次同步數(shù)據(jù)包大小,以記錄行數(shù)為依據(jù);SyncType—調(diào)度類型,支持單次、每天、每周、每月以及固定間隔等同步周期。SyncInterval—調(diào)度時刻,時間類型。

        規(guī)則組態(tài)合理設(shè)計關(guān)系到同步的效率和數(shù)據(jù)正確性、完整性。對于復(fù)雜的同步需求還需要拆分成多條簡單的規(guī)則來解決。

        3.2 路徑標簽原理

        歷史數(shù)據(jù)有新生成態(tài)和已同步態(tài)兩種狀態(tài)。新生成態(tài)即為外部應(yīng)用(如歷史進程)寫入數(shù)據(jù)庫的歷史數(shù)據(jù),在直接寫入機器節(jié)點上其路徑標簽為空;已同步態(tài)即已經(jīng)對本數(shù)據(jù)做了同步動作,而不論同步動作經(jīng)歷過多少次,其經(jīng)由路徑均被記錄在路徑標簽中。

        存放于關(guān)系數(shù)據(jù)庫中的所有記錄(數(shù)據(jù)點)都有獨立的路徑標簽,此標簽附加了來源節(jié)點的編號信息,可以有效防止在雙向同步中出現(xiàn)“同步環(huán)”,即來源節(jié)點的數(shù)據(jù)不會被再次同步回該節(jié)點。節(jié)點在接收到其他節(jié)點的同步數(shù)據(jù)后如果需要再次將該批數(shù)據(jù)同步到其他機器,則需要將自身編號添加到標簽上。數(shù)據(jù)可以通過標簽作路徑追溯,可用做來源檢查和數(shù)據(jù)責任認定。圖2描述了4個節(jié)點情況下不同數(shù)據(jù)記錄在不同節(jié)點上的路徑標簽原理。

        圖2 路徑標簽原理圖

        路徑標簽的生成由同步規(guī)則決定,通過解析同步規(guī)則的配置串即可以決定哪些數(shù)據(jù)將保持新生成態(tài),哪些數(shù)據(jù)將被添加路徑標簽的標識。舉例說明:在主服務(wù)器(節(jié)點1)上將所有報警信息同步到備服務(wù)器(節(jié)點2)上,以保證主備機的報警信息表一致。采用規(guī)則串:“2;;sa;sa;2;sa;sa;/data/syntemp;Chec_Event;Event*;[F:ObjectId,AttributeId,Time,Msec;Flag not like‘%002%’];…”,將本機報警數(shù)據(jù)庫中所有表名形如Event*的表內(nèi)4個字段的記錄信息復(fù)制到備服務(wù)器上。路徑標簽在庫中為一個Flag字符型字段,本例中則將每條符合條件記錄的Flag字段累加“001”標識并存儲在節(jié)點2對應(yīng)的同步記錄中。

        規(guī)則的編寫基于對數(shù)據(jù)分發(fā)需求的邏輯分析,進行合理地拆分或合并。同時需要考慮規(guī)則設(shè)計給系統(tǒng)效率帶來的影響。如多個節(jié)點向主備服務(wù)器上送節(jié)點數(shù)據(jù),可將部分站點配置成與主服務(wù)器同步,剩余站點與備服務(wù)器同步,依靠兩臺服務(wù)器自身同步完成最終數(shù)據(jù)整合;以此減少單臺服務(wù)器負責所有任務(wù)帶來的節(jié)點壓力。

        3.3 同步調(diào)度機制

        同步調(diào)度即同步的時機及步進過程。由于歷史數(shù)據(jù)庫同步不同于實時數(shù)據(jù)庫同步,無法做到完全實時同步,同時又要綜合考慮大量歷史數(shù)據(jù)量同步給節(jié)點CPU,RAM資源以及網(wǎng)絡(luò)帶寬帶來的消耗。Sycom采用雙周期批處理方式實施同步。

        1)雙周期調(diào)度:包括同步調(diào)度周期和線程事務(wù)處理周期。同步周期即執(zhí)行同步的時刻,由同步規(guī)則中的SyncType和SyncInterval控制;線程事務(wù)處理周期即以較小的時間間隔完成各種標志、狀態(tài)、數(shù)據(jù)庫連接等實時檢測,并可響應(yīng)外部進程的調(diào)度需求。同一個節(jié)點上的多個規(guī)則任務(wù)采用串行方式運行,減少多個任務(wù)并發(fā)運行給數(shù)據(jù)庫和網(wǎng)絡(luò)帶來的負荷,降低對系統(tǒng)正常運行的影響。圖3顯示了一個同步周期內(nèi)的時間段劃分。

        圖3 單個調(diào)度周期時間劃分示意圖

        2)批處理:不論是一段較短時間內(nèi)(如一個調(diào)度周期)需同步的少量數(shù)據(jù)還是長期累積(如單臺服務(wù)器故障至修復(fù)期間)未同步的大量數(shù)據(jù),均采用批處理方式。采用大容量數(shù)據(jù)dump方式先將待同步數(shù)據(jù)分割到文件名形如*.bt臨時文件群中。批大小根據(jù)需求配置。以MS SQLServer為例,盡管理論上批越大吞吐率越高,但實際應(yīng)用中存在大文件的數(shù)據(jù)交互占用資源的持續(xù)時間長、同步中斷概率增加、同步失敗回滾導(dǎo)致的日志空間控制難度增加等問題,故批大小采用按工程實際計算后設(shè)定的方式,綜合考慮文件長度和批記錄條數(shù)決定。文件大小和批記錄條數(shù)計算公式為:

        式中:

        Len——二進制文件大小;

        N——單個批次記錄條數(shù);

        fn——字段長度。

        默認BatchSize配置為測試經(jīng)驗值2K。文件中數(shù)據(jù)采用與庫匹配的二進制格式,由格式文件統(tǒng)一控制。一個典型的用于控制模擬量值保存的格式文件float.fmt形如:

        3.4 異常情況同步處理

        異常同步情況包括以下幾個方面:

        1)長時間累積的大量數(shù)據(jù)同步任務(wù)。由于采用單個規(guī)則任務(wù)間隔分批處理且吞吐率可設(shè)置以及多個任務(wù)串行處理的方式,對大批量數(shù)據(jù)仍能保證同步過程對CPU、磁盤以及網(wǎng)絡(luò)帶寬的消耗一直處于良好的可控狀態(tài)。

        2)通信中斷或系統(tǒng)故障后恢復(fù)。組件采用的雙周期調(diào)度中能有效檢測數(shù)據(jù)庫實時連接狀態(tài);每個批次在正確執(zhí)行完畢后均記錄同步刻度,故在通信中斷或其他系統(tǒng)故障恢復(fù)運行后,將從前次刻度處繼續(xù)運行。同時單個批次均以原子事務(wù)方式運行,一個批次內(nèi)同步失敗將使該批次已導(dǎo)入數(shù)據(jù)回滾,確保實際同步刻度與已記錄刻度的完全一致性。

        3)沖突數(shù)據(jù)容錯處理。對于有主鍵(單字段如Id或組合字段如ObjectId+AttributeId+Time)的數(shù)據(jù)表而言,相同主鍵數(shù)據(jù)將導(dǎo)致數(shù)據(jù)插入失敗,此時將同步策略便自動改變?yōu)橹饤l記錄插入的方式,在記錄遍歷過程中,對于相同主鍵數(shù)據(jù),已存在數(shù)據(jù)優(yōu)先,欲插入數(shù)據(jù)將被過濾舍棄;當數(shù)據(jù)表不存在主鍵時,不對可能存在沖突的數(shù)據(jù)做任何處理,最大化保留所有數(shù)據(jù),由后續(xù)讀取數(shù)據(jù)的應(yīng)用程序根據(jù)需要作進一步處理。

        4 跨平臺應(yīng)用

        Sycom可運行在不同的操作系統(tǒng)平臺上(Windows/Linux/Unix),采用 Qt開發(fā)包設(shè)計開發(fā)。Qt提供了豐富的關(guān)系數(shù)據(jù)庫訪問接口和功能封裝、便利的網(wǎng)絡(luò)訪問功能、文件讀寫及目錄操作功能、多線程程序設(shè)計等模塊類。Sycom主要涉及類庫包括:

        通過對應(yīng)操作系統(tǒng)平臺的動態(tài)鏈接庫實現(xiàn)操作系統(tǒng)級的透明運行;通過封裝了各關(guān)系數(shù)據(jù)庫標準訪問接口的驅(qū)動程序?qū)崿F(xiàn)關(guān)系數(shù)據(jù)庫的透明訪問。對于數(shù)據(jù)庫及二維表操作均采用標準SQL語句實現(xiàn)。

        5 結(jié)語

        多業(yè)務(wù)節(jié)點間的數(shù)據(jù)交互模型,滿足ISCS用戶對各類業(yè)務(wù)數(shù)據(jù)自由分離、合并的同步分發(fā)需求,適應(yīng)運營管理流程優(yōu)化和專業(yè)分工精細化的需求和發(fā)展趨勢;采用組態(tài)方式確定及控制數(shù)據(jù)流向、同步過程實現(xiàn),減少了開發(fā)人員工作量和使用復(fù)雜度,提高了系統(tǒng)適應(yīng)不同需求的靈活性;通過對跨操作系統(tǒng)及主流關(guān)系數(shù)據(jù)庫平臺的支持,與ISCS系統(tǒng)平臺低耦合性的設(shè)計,使得整個系統(tǒng)相比較現(xiàn)有技術(shù)具有較高的開發(fā)效率、適用性和設(shè)計彈性。

        [1] 本-甘.Microsoft SQL Server 2008技術(shù)內(nèi)幕:T-SQL查詢[M].北京:電子工業(yè)出版社,2009.

        [2] Robert Vieira.Professional microsoft SQL server 2008 programming[M].北京:清華大學出版社,2010.

        [3] 李鵬,于洪濤,徐靜波.七號信令監(jiān)測系統(tǒng)中基于Oracle的數(shù)據(jù)同步方案研究[J].電信科學,2010(2):61.

        [4] 王珊,周勝.SYBASE Replication Server高級使用指南[M].北京:水利水電出版社,2002.

        [5] 宋興彬.基于Sybase復(fù)制技術(shù)的分布式數(shù)據(jù)庫系統(tǒng)的建立[J].山東科學,2000,13(1):42.

        [6] 方丹輝,張狄.MySQL主從服務(wù)器數(shù)據(jù)庫同步的實現(xiàn)[J].計算機應(yīng)用,2002,20(7):116.

        [7] Oracle,Inc.MySQL 5.5Reference Manual[DB/OL].(2011-4-5)www.mysql.com/products/enterprise/replication.html.

        [8] Microsoft,Inc.MSDN library for SQLServer2008[DB/OL].http:∥msdn.microsoft.com/zh-cn/library/ms151198.aspx,2011-3-10.

        [9] Microsoft,Inc.MSDN library for SQLServer2008[DB/OL].http:∥msdn.microsoft.com/zh-cn/library/ms188267.aspx,2011-3-12.

        [10] EEzust A,Ezust P.An introduction to design patterns in C++ with QT4[M].北京:清華大學出版社,2007.

        [11] 杜瑞東,吳娟.地鐵綜合監(jiān)控系統(tǒng)軟件平臺[J].城市軌道交通研究,2011(6):47.

        [12] 陳天皓,趙鑫,劉佳寶.RT 21—ISCS綜合監(jiān)控系統(tǒng)中基于ID的模型數(shù)據(jù)合并技術(shù)[J].城市軌道交通研究,2011(6):89.

        猜你喜歡
        關(guān)系數(shù)據(jù)庫標簽服務(wù)器
        關(guān)系數(shù)據(jù)庫在高爐數(shù)據(jù)采集系統(tǒng)中的應(yīng)用
        山東冶金(2022年2期)2022-08-08 01:51:30
        通信控制服務(wù)器(CCS)維護終端的設(shè)計與實現(xiàn)
        無懼標簽 Alfa Romeo Giulia 200HP
        車迷(2018年11期)2018-08-30 03:20:32
        不害怕撕掉標簽的人,都活出了真正的漂亮
        海峽姐妹(2018年3期)2018-05-09 08:21:02
        得形忘意的服務(wù)器標準
        計算機網(wǎng)絡(luò)安全服務(wù)器入侵與防御
        標簽化傷害了誰
        基于多進制查詢樹的多標簽識別方法
        計算機工程(2015年8期)2015-07-03 12:20:27
        基于索引結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫關(guān)鍵詞檢索
        一種基于數(shù)據(jù)圖劃分的關(guān)系數(shù)據(jù)庫關(guān)鍵詞檢索方法
        国产 一二三四五六| 日本精品视频一视频高清| 国产人成视频免费在线观看| 国产精品美女主播在线| 精品人妻av区乱码色片| 疯狂添女人下部视频免费| 亚洲国产成人久久一区www| 对白刺激的老熟女露脸| 国产一区二区三区在线观看免费版| 免费av日韩一区二区| 丰满少妇被粗大猛烈进人高清| 无码精品日韩中文字幕| 亚洲色偷偷综合亚洲AVYP| 中文字幕久久人妻av| 亚洲精品有码日本久久久| 免费无码av片在线观看播放| 日日av拍夜夜添久久免费| 亚洲色AV天天天天天天| 亚洲桃色蜜桃av影院| 揄拍成人国产精品视频| 少妇饥渴偷公乱a级无码| 极品 在线 视频 大陆 国产| 日韩精品高清不卡一区二区三区| 青草久久婷婷亚洲精品| 人人妻人人狠人人爽| 破了亲妺妺的处免费视频国产| 操B小视频国产| 亚洲国产日韩一区二区三区四区 | 性久久久久久久| 免费大学生国产在线观看p| aa日韩免费精品视频一| 粉嫩小泬无遮挡久久久久久| 中文人妻无码一区二区三区在线| 国产一区二区欧美丝袜| 人妻中文字幕在线一二区| 一边摸一边抽搐一进一出口述| 国产成人免费一区二区三区| 国产精品无码久久久久久蜜臀AV| 久久九九精品国产不卡一区| 色综合久久无码五十路人妻 | 亚洲熟妇无码八av在线播放 |