“集群式”橋梁結構健康監(jiān)測項目海量數(shù)據(jù)管理策略研究
車功健,李紅萬
摘要:在橋梁健康監(jiān)測項目中,通過實時采集安裝在大橋上的傳感器數(shù)據(jù),所采集的數(shù)據(jù)量隨著時間的推移將會是海量的,如何對海量數(shù)據(jù)進行管理,具有重要意義。本文通過對Oracle分區(qū)表技術、數(shù)據(jù)備份、數(shù)據(jù)壓縮和雙機熱備技術的分析探討,為該系統(tǒng)中的海量數(shù)據(jù)管理提供一種經(jīng)濟、可行的解決方案。
關鍵字:結構健康監(jiān)測系統(tǒng);分區(qū)表;數(shù)據(jù)備份;數(shù)據(jù)壓縮;雙機熱備
1 概述
“集群式”橋梁結構健康監(jiān)測系統(tǒng)由傳感器子系統(tǒng)、數(shù)據(jù)采集與傳輸子系統(tǒng)、數(shù)據(jù)處理與控制系統(tǒng)和結構健康評估系統(tǒng)組成,通過采集安裝在大橋各關鍵位置的傳感器輸出數(shù)據(jù),并對這些數(shù)據(jù)進行處理、分析和評估,為橋梁日常養(yǎng)護提供針對性建議。
該“集群式”橋梁結構健康監(jiān)測系統(tǒng)由四座橋組成。安裝在這四座橋上的傳感器種類和數(shù)量見下表1。
如上表:加速度計、傾角儀、位移計和應變計采用50Hz采樣率;風速儀、GPS采用20Hz采樣率;其它傳感器采用1Hz采樣率。
對橋梁的處理、分析和評估是建立在高質量的監(jiān)測數(shù)據(jù)基礎上的,所以對數(shù)據(jù)進行有效地管理顯得尤為重要。下面我們針對數(shù)據(jù)管理過程中的常見問題對其進行分析研究。
2 存在問題及對策
湖北滬蓉西高速“集群式”橋梁結構健康監(jiān)測系統(tǒng)是實時、連續(xù)不間斷地采集傳感器輸出數(shù)據(jù),并將采集數(shù)據(jù)存儲在Oracle數(shù)據(jù)庫中,同時,數(shù)據(jù)處理軟件會從數(shù)據(jù)庫中提取數(shù)據(jù)進行分析處理。
根據(jù)上表傳感器數(shù)量及采樣頻率,可計算出:每天數(shù)據(jù)量約為16G,每年采集的數(shù)據(jù)將會是海量的。面對海量數(shù)據(jù),如何進行管理,尤為重要。因為當數(shù)據(jù)庫中數(shù)據(jù)量達到一定程度時,再對數(shù)據(jù)庫進行存儲和檢索操作時,軟件響應速度會變慢,操作時間變長,影響系統(tǒng)性能;更嚴重會導致數(shù)據(jù)庫服務器宕機,系統(tǒng)崩潰。因此,解決海量數(shù)據(jù)存儲、檢索效率問題刻不容緩。針對這一問題,我們在該系統(tǒng)中制定了相應的數(shù)據(jù)管理策略,包括使用分區(qū)表技術、數(shù)據(jù)壓縮技術、數(shù)據(jù)備份技術和雙機熱備技術,前三項主要用于解決數(shù)據(jù)庫中海量數(shù)據(jù)管理問題,最后一項用于解決數(shù)據(jù)庫服務器宕機問題。在實際運用中,通過這幾項技術,能夠極大地提高系統(tǒng)響應速度和系統(tǒng)性能。
3 數(shù)據(jù)管理策略
3.1 數(shù)據(jù)管理硬件環(huán)境
該項目中用于數(shù)據(jù)管理的硬件設備包括:數(shù)據(jù)庫服務器2臺(主、從服務器)、備份服務器1臺、磁盤陣列1臺、磁帶庫1臺、光纖交換機2臺。Oracle數(shù)據(jù)庫軟件分別安裝在2臺數(shù)據(jù)庫服務器上,存儲數(shù)據(jù)存放在磁盤陣列上;通過備份服務器對監(jiān)測數(shù)據(jù)進行備份,將監(jiān)測數(shù)據(jù)備份到磁帶中。數(shù)據(jù)管理硬件結構圖見下圖1。
3.2 數(shù)據(jù)管理策略
(1) 分區(qū)表
ORACLE的分區(qū)(Partitioning Option)是一種處理超大型表、索引等的技術。分區(qū)是一種“分而治之”的技術,通過將大表和索引分成可以管理的小塊,從而避免了對每個表作為一個大的、單獨的對象進行管理,為大量數(shù)據(jù)提供了可伸縮的性能。
Oracle分區(qū)方法有:范圍分區(qū)、列表分區(qū)、哈希分區(qū)和復合分區(qū)。
在該系統(tǒng)中,我們采用范圍分區(qū)方法,根據(jù)數(shù)據(jù)記錄的時間標簽(主鍵)進行范圍分區(qū),每天建立一個分區(qū)表。在系統(tǒng)中使用分區(qū)技術,有以下好處:
(1) 改善系統(tǒng)檢索性能:對分區(qū)對象的查詢可以僅搜索自己關心的分區(qū),提高檢索速度;
(2) 增強可用性:如果表的某個分區(qū)出現(xiàn)故障,表在其他分區(qū)的數(shù)據(jù)仍然可用;
(3) 均衡I/O:可以把表的不同分區(qū)分配到不同的磁盤來平衡I/O改善性能;
(4) 維護方便:如果表的某個分區(qū)出現(xiàn)故障,需要修復數(shù)據(jù),只修復該分區(qū)即可;
(5) 對應用透明:當需要往數(shù)據(jù)庫中存儲數(shù)據(jù)時,Oracle管理系統(tǒng)會根據(jù)數(shù)據(jù)的時間標簽,選擇應存儲的分區(qū);若根據(jù)時間標簽從數(shù)據(jù)庫中檢索數(shù)據(jù)時,Oracle管理系統(tǒng)會根據(jù)時間標簽,選擇應檢索的分區(qū),如果檢索項不是時間標簽,則應指明檢索數(shù)據(jù)所在分區(qū)表名。
(2)數(shù)據(jù)備份
數(shù)據(jù)備份是數(shù)據(jù)高可用性的一種方法,將系統(tǒng)在線數(shù)據(jù)備份或轉儲到其它存儲介質上,其目的是在系統(tǒng)數(shù)據(jù)出現(xiàn)問題的時候,能夠快速準確地恢復數(shù)據(jù)。通常,一套完整的備份系統(tǒng)包含備份軟件、磁帶機/磁帶庫和備份服務器。
Oracle備份大致可分為兩類:物理備份和邏輯備份(導入/導出),而物理備份又可以根據(jù)數(shù)據(jù)庫的工作模式分為非歸檔模式和歸檔模式,通常前者稱為冷備份,后者稱為熱備份。
(1) Cold Backup(冷備份):主要指在關閉數(shù)據(jù)庫的狀態(tài)下進行的數(shù)據(jù)庫完全備份。
(2) Hot Backup(熱備份):指在數(shù)據(jù)庫處于運行狀態(tài)下,對數(shù)據(jù)文件和控制文件進行備份,要使用熱備份必須將數(shù)據(jù)庫運行在(Archive Log)歸檔方式下。
(3) Export(邏輯備份):這是最簡單的備份方法,可按數(shù)據(jù)庫中某個表、某個用戶或整個數(shù)據(jù)庫來導出,并且支持全部、累計、增量三種方式。使用這種方法,數(shù)據(jù)庫必須處于打開狀態(tài),而且如果數(shù)據(jù)庫不是在restrict狀態(tài),將不能保證導出數(shù)據(jù)的一致性。
對數(shù)據(jù)進行備份需要制定合理的備份策略,需要考慮影響備份策略的各種因素,需考慮的因素如下:
(1) 需要備份的內容:數(shù)據(jù)文件、參數(shù)文件等;
(2) 備份方式:全備份、差量備份、增量備份;
(3) 備份周期:每天一次、每周一次或者每月一次等;
(4) 備份介質:磁帶庫、光盤等其它存儲介質;
在該系統(tǒng)中,我們采用全備份+增量備份的備份方式,每天進行一次備份操作,將實時監(jiān)測數(shù)據(jù)文件和重要的參數(shù)文件備份到磁帶庫中。在系統(tǒng)投入運行時,進行一次全備份,以后采用增量備份。通過Veritas Netbackup備份軟件進行備份管理。當磁盤陣列中數(shù)據(jù)量達到一定量(假設為N天數(shù)據(jù)量),每增加一天數(shù)據(jù)量,則將最早一天分區(qū)表中的數(shù)據(jù)及分區(qū)信息刪除,釋放磁盤空間,提高系統(tǒng)性能。需要查看被刪除的數(shù)據(jù)時,通過磁帶庫中備份的數(shù)據(jù)進行恢復即可。
(3)數(shù)據(jù)壓縮
數(shù)據(jù)壓縮是指在不丟失信息的前提下,縮減數(shù)據(jù)量以減少存儲空間,提高其傳輸、存儲和處理效率的一種技術方法。
Oracle11g的壓縮使用了“基于數(shù)據(jù)塊的批次壓縮技術”,也就是說數(shù)據(jù)的壓縮不是在執(zhí)行DML語句的時候實時發(fā)生的,一開始當一個數(shù)據(jù)塊空的時候,插入的數(shù)據(jù)并不被壓縮,所以這個時候對于性能是沒有影響的,數(shù)據(jù)塊壓縮的動作是在數(shù)據(jù)塊即將滿的時候才發(fā)生,這樣就保證了大部分DML語句的效率。并且,在數(shù)據(jù)塊將要滿的時候才發(fā)生的壓縮技術保證了最大的壓縮率,因為實際上壓縮是基于數(shù)據(jù)塊里相同的數(shù)據(jù)的。
在該系統(tǒng)中利用Oracle 11g的壓縮特性,使用數(shù)據(jù)壓縮技術,具有以下好處:
(1) 節(jié)省磁盤空間:使用數(shù)據(jù)壓縮技術,可以節(jié)省大量的磁盤空間。
(2) 提高系統(tǒng)性能:因為數(shù)據(jù)存儲在更少的數(shù)據(jù)塊中,全表掃描和索引區(qū)間掃描能夠使用更少的快提取行;
(3) 減少網(wǎng)絡負載:因為數(shù)據(jù)僅在Oracle內壓縮和解壓縮,所以外部網(wǎng)絡僅需傳輸壓縮的數(shù)據(jù)塊;
(4)雙機熱備
雙機熱備是指當一臺服務器在工作時(稱為主機),另一臺服務器處于備用狀態(tài)(稱為備機),當主機由于某種原因出現(xiàn)故障,如死機、主機斷電、病毒發(fā)作、硬盤損壞等,不能繼續(xù)提供服務時,從機能在規(guī)定的時間內接替主機的服務,繼續(xù)提供服務,從而達到不宕機的目的。
雙機熱備系統(tǒng)采用“心跳”方法保證主系統(tǒng)與備用系統(tǒng)的聯(lián)系。所謂“心跳”,指的是主從系統(tǒng)之間相互按照一定的時間間隔發(fā)送通訊信號,表明各自系統(tǒng)當前的運行狀態(tài),一旦備用系統(tǒng)無法接收到主系統(tǒng)的“心跳”信號,則高可用性管理軟件(雙機軟件)認為主系統(tǒng)發(fā)生故障,立即令主機停止工作,并將系統(tǒng)資源轉移到備用系統(tǒng)上,備用系統(tǒng)將替代主機發(fā)揮作用,以保證系統(tǒng)運行不間斷。
在該系統(tǒng)中,我們采用基于共享的存儲設備的雙機熱備模式,將2臺IBM System X3850服務器組成集群,并通過光纖交換機組成SAN存儲網(wǎng)絡,操作系統(tǒng)和應用程序分別安裝在兩臺服務器的本地磁盤上,而整個網(wǎng)絡數(shù)據(jù)通過磁盤陣列進行集中管理。兩臺服務器之間通過RoseHA軟件進行管理。兩臺服務器將以一個虛擬的IP地址對外提供服務,客戶端通過虛擬IP地址和服務器進行通訊。正常運行時,虛擬地址及網(wǎng)絡服務由主服務器提供。當主服務器出現(xiàn)故障時,RoseHA會將虛擬地址和相關服務轉移到備用服務器的網(wǎng)卡上,繼續(xù)提供網(wǎng)絡服務。在客戶端看來沒有任何故障發(fā)生。
正常工作時,相關服務會運行在主服務器上,當主服務器發(fā)生故障時,RoseHA軟件將相關服務轉移到備份服務器上,下圖2是RoseHA工作界面。
圖2 RoseHA工作界面圖
4 結論
在“集群式”橋梁結構健康監(jiān)測系統(tǒng)中,我們通過使用分區(qū)表、數(shù)據(jù)備份、數(shù)據(jù)壓縮和雙機熱備技術,不僅提高系統(tǒng)從數(shù)據(jù)庫中檢索數(shù)據(jù)的速度、提高系統(tǒng)的可靠性和系統(tǒng)性能,而且還具有數(shù)據(jù)容災功能,當有災難發(fā)生時,我們還能從備份文件中恢復數(shù)據(jù),保證系統(tǒng)的正常運轉。
參考文獻
[1] 雷忠琴. ORACLE數(shù)據(jù)庫備份和恢復分析[J].貴州教育學院學報(自然科學).2007:18(4)
[2] 李東武.醫(yī)院信息系統(tǒng)雙機熱備和數(shù)據(jù)備份的設計與實現(xiàn)[J].中國醫(yī)療設備.2008:23(7)
[3] 李峰,曹中,劉正偉.雙機熱備技術在財務系統(tǒng)中的應用[J].現(xiàn)代電子技術,2009:(3)
[4] 楊文俊.利用磁盤陣列和Rose HA雙機軟件對OA系統(tǒng)、財務系統(tǒng)雙機熱備[J].中國高新技術企業(yè),2010:(6)
[5] 楊志彬.Oracle表分區(qū)管理[J].福建電腦,2007:(8)
月期刊咨詢網(wǎng)--如何發(fā)表論文、論文發(fā)表、評職稱評審、教育論文、價格版面費、省級以上刊物、核心期刊、會議論文、教學會計、正規(guī)格式范文、專業(yè)技術職務任職資格、碩士研究生論文發(fā)表網(wǎng)。月期刊網(wǎng)并非雜志社!本站是從事期刊征稿、論文發(fā)表的**代理機構,若想投遞雜志社,請直接登陸該雜志社官網(wǎng)。月期刊網(wǎng)和國內數(shù)百家期刊雜志社有良好的合作關系,代理期刊均系經(jīng)過國家出版總署認可的正規(guī)期刊,選擇空間更廣,可以幫您推薦期刊、發(fā)表論文,使得您論文發(fā)表速度更快、價格更低、通過率更高。
轉載請注明來自:http://www.jinnzone.com/jisuanjiyingyonglw/14286.html