?

基于私有云計算技術的強震預警系統應用研究

2016-06-08 05:48趙銀剛
計算機應用與軟件 2016年5期
關鍵詞:分布式計算計算資源強震

蔡 寅 李 紅 趙銀剛

1(中國地震局地球物理研究所 北京 100081)2(山東省地震局 山東 濟南 250014)3(山東省地震局安丘地震臺 山東 濰坊 262100)

?

基于私有云計算技術的強震預警系統應用研究

蔡寅1,2李紅2趙銀剛3

1(中國地震局地球物理研究所北京 100081)2(山東省地震局山東 濟南 250014)3(山東省地震局安丘地震臺山東 濰坊 262100)

摘要通過分析研究地震行業目前數據處理與分析的現狀,展望云計算技術在地震行業的應用前景。針對山東強震預警系統在研發與試驗階段,各子系統之間存在計算效率低、資源占用不均衡等問題,提出基于云端分布式計算技術的大數據分析處理平臺體系架構。通過對軟硬件資源進行統一管理,實現根據子系統資源需求的虛擬機智能部署方案,提高平臺的高可用性及擴展性。實驗結果表明,強震預警系統的計算效率及資源利用率得到有效的提高,平臺體系架構得到初步應用。

關鍵詞私有云體系架構資源調度強震預警系統

0引言

地震行業是一個典型數據集中的領域,地震科學數據按照獲取途徑可以分為五大類:(1) 觀測數據,包括:測震、強震動、地磁、地電、形變、地下流體、重力、GPS等實時觀測數據; (2) 探測數據,包括人工地震、流動臺陣、氣槍探測等數據;(3) 調查數據,包括:地震地質調查、震后宏觀烈度調查、斷層現場科考、地震遙感及航拍等數據;(4) 實驗數據,包括構造物理實驗、新構造年代測試、建筑物抗震結構實驗、巖土工程實驗等數據;(5) 專題數據。這類數據主要服務于某一重要研究專題、重大工程項目或某一特定區域綜合研究等工作目標而建立的。如:歷史震例總結、斷層面探測、水庫地震監測、礦震監測、建筑物地震安全性評價等方面的數據。從業務應用角度來看,像地震的孕育研究與分析預測,非常依賴于對歷史數據及大量觀測數據的多角度時空觀察和分析。而地震速報和強震預警等應用系統,則高度依賴于對密集臺網闡述的大規模數據的實時處理與分析能力。 如何提高對各類大規模數據的綜合處理與分析能力,成為地震行業亟需解決的一項技術瓶頸。

隨著信息技術的不斷發展,網格計算、并行計算、分布式計算、網絡存儲、虛擬化等技術的不斷涌現,融合多項技術的云計算為大數據的分析和處理問題提供了有效的解決方案。云計算作為一種計算方式,將大量計算節點和存儲節點進行虛擬化管理,將計算能力、存儲空間及信息服務等資源匯聚集中起來,實現統一自動化管理。通過網絡將這些資源以“服務”的形式提供給用戶,而用戶不需要了解構建這些“服務”的云計算技術架構,就可以透明方便使用這些資源。從服務的角度劃分,云計算環境可以提供三個層次的服務,即基礎設施服務IaaS(Infrastructure-as-a-Service)、平臺服務PaaS(Platform-as-a-Service)和軟件服務SaaS(Software-as-a-Service),各層服務具有可擴展性及高可靠性等特點。

在云計算技術和分布式計算技術日益成熟的今天,云環境強大的計算資源和分布式計算的高性能為地震行業大規模數據的分析處理提供了較好解決方案。本文通過分析研究地震行業目前數據處理與分析的現狀,展望云計算和大數據技術在地震行業的應用前景,結合山東省地震局數據管理和計算資源現狀,提出基于云端分布式計算的大數據分析處理平臺體系架構。最后以山東強震預警系統在研發與試驗階段,各子系統之間存在計算效率低、資源占用不均衡等問題為切入點,搭建一個對軟硬件資源進行統一管理具有高可用性及擴展性的私有云計算平臺。利用虛擬機智能部署方案,有效地提高了計算效率及資源利用率了負載不均衡現象,平臺體系架構得到初步應用。

1云計算技術在地震行業的應用前景

云計算技術在地震行業的應用前景主要體現在三個方面:(1) 有效整合現有硬件資源,大幅降低系統應用部署成本,提高計算資源利用率;(2) 實現對地震臺網產出的大規模數據進行實時監控、分析與處理,有效提高面向日益增多的臺站數據的計算實時性,使各類數據形成用多個監測預警網;(3) 通過對歷史大規模數據進行有針對性、多角度的分析與挖掘,為動態預測和決策提供更加精準技術支持。

云計算技術重點關注計算能力的提升,解決的關鍵問題是大數據處理的能與不能的難題,而云計算技術是解決此難題的最佳解決方案?;谠朴嬎慵夹g的大數據分析計算平臺首先解決原有技術難以實現的大數據分析的困境,同時實現高速、高效數據分析與挖掘。在保持原有業務流程大體不變的情況下,減輕了管理者的工作量,提高研究者工作效率,對決策者提供更加準確的決策支持。采用云端大數據分析平臺的地震業務流程如圖1所示。

圖1 基于云端大數據分析平臺的地震業務流程圖

2云端大數據分析平臺體系架構設計

在上述基礎上,本文提出基于私有云的地震大數據分析處理平臺,平臺的體系架構如圖2所示。體系架構主要分為五層,最底層是由專用虛擬服務器和普通服務器組成物理服務器集群作為硬件計算基礎。通過開源IaaS軟件如OpenStack、CloudStact等構建云計算資源層。在云計算資源層提供的虛擬機上部署分布式計算框架用于實時數據分析及后臺數據挖掘,如Hadoop、Storm等。大數據處理服務層作為應用邏輯部分對數據進行分析挖掘并且完成計算資源的調度管理。面向用戶和管理員提供各項管理服務的應用層,將計算結果進行關聯處理,提供給最終用戶。

圖2 云端大數據分析平臺體系架構圖

2.1物理層

物理層是整個計算平臺的硬件基礎,計算平臺的物理層采用虛擬化專用服務器和既有普通服務器混合構筑模式。確保高性能的同時,也能充分利用既有計算資源,這樣不論是計算服務器集群或是存儲服務器集群都可以無縫水平擴展,使計算資源的實現無限化。行業內網用戶和公網用戶可以方便的使用計算及存儲資源。物理層構建示意如圖3所示。

圖3 物理層構建示意圖

2.2云計算環境層

云計算環境層的建立有商用解決方案,也有開源解決方案,如Eccalyptus、AbiCloud、CloudStack等。綜合考慮各個解決方案的開源性及穩定性,本文選用OpenStack構建云計算環境層。OpenStack是有Rackspace和NASS共同發起的一個開源項目,其定位是亞馬遜AWS的開源實現,為公有云和私有云提供容易實施且可大規模擴展的開源云計算平臺。目前OpenStack已業界被廣泛應用,穩定性和可靠性均被認可,版本發布持續穩定。OpenStack對各類物理計算節點和存儲節點進行虛擬化,為分布式計算層提供虛擬主機,實現對虛擬主機的計算管理、網絡管理、授權管理、卷管理、分布式存儲等功能,對于行業內網和公網用戶提供“透明”的IaaS服務。云計算環境層構建示意如圖4所示。

圖4 云計算環境層構建示意圖

2.3分布式計算層

分布式計算環境層的文件系統有別于單機上傳統的文件系統。當需要完成大規模計算時,運行時間往往是數分鐘甚至數小時,但是任何一個硬件在任何時刻都有可能出現故障,如果由于硬件故障導致計算終止的話,那么對于一些計算過程可能是永遠無法成功完成的。解決上述問題的方式有兩種:(1) 將文件進行多副本存儲;(2) 將計算過程分成多任務形式。這里,我們引入Hadoop分布式文件系統HDFS(Hadoop Distributed File System),將各個數據節點的數據按業務需求提供給兩套分布式計算框架。HDFS 將文件分成文件塊,存儲在不同的計算節點上,MapReduce是一種計算模式,用于大規模數據集的并行計算,并能夠保障對硬件故障的容錯性,具有非常好的伸縮性。但是MapReduce只能定時從分布式文件系統同獲取數據,在后臺分析挖掘,實時性較差。所以為了擬補MapReduce實時性不足的缺陷,采用Storm實時流計算框架對實時性要求比較高的算法程序進行并行分析和計算,從消息隊列中直接獲取數據,實時處理。分布式計算層邏輯示意如圖5所示。

圖5 分布式計算層邏輯示意圖

2.4大數據處理層與應用層

大數據處理層分析虛擬機上的各種資源的占用情況,根據用戶需求目標的不同,將不同的計算任務分別在MapReduce或Storm計算框架下執行分析計算進程,對數據進行后臺或實時挖掘,同時監控管理計算過程中出現的各種狀況。

應用層為用戶或管理員提供各層可視化的統一管理和外部接口服務,也就是說用戶通過這一層指定數據源,獲得計算結果。數據處理層與應用層兩層間通過WebService等多種方式進行數據交互。大數據處理層與應用層邏輯示意如圖6所示。

圖6 大數據處理層與應用層邏輯示意圖

3基于云平臺的強震預警系統初步應用

本文以強震預警系統為例,討論原系統在云平臺下重新部署的應用效果。強震預警系統目前被認為是有效減輕地震災害,提高應對地震能力最重要的途徑之一。我國地震行業通過“十·五”、“十一·五” 和“十二·五”的基礎設施建設,能夠用于強震預警系統的測震及強震動臺站數量不斷增多。省級區域臺網密度進一步提高,這為建立基于實時地震監測臺網的預警系統提供了必要的基礎條件。目前,由山東省地震局自主研發的強震預警系統主要由3個子系統組成:(1) 觀測數據實時匯集與服務系統;(2) 地震事件觸發判斷及預警參數計算系統;(3) 基于WebGIS的預警信息動態發布系統。各個子系統對資源的需求不盡相同。數據的匯集與服務占用大量存儲空間進行地震事件的存儲,數據分析與計算依賴與大量的計算資源支撐,以保障預警信息的實效性。當強震發生時,基于WebGIS的動態預警信息發布平臺需要對多類用戶提供預警信息服務,此時對網絡帶寬的占用權重遠遠大于其他兩個子系統。系統在試驗階段,采用每個子系統占用一臺服務器的傳統部署方式,存在計算效率低、資源占用不均衡等問題。傳統的應用部署方式很難滿足不同系統對不同資源的需求,而應用云端大數據分析平臺體系架構則能有效地解決各個子系統間資源的分配問題。

解決系統資源分配的目標有兩個,即負載均衡和綠色節能。所謂負載均衡,就是保證云平臺中各宿主機的負載率的均衡性,避免拿出現某些宿主機負載過重,影響系統整體性能的情況。綠色節能就是要盡量減少云平臺中使用的宿主機個數,自動關閉一些負載過輕或閑置的宿主機,以達到節約能源的目標。為實現資源的智能分配,首先利用OpenStack對現有的硬件資源進行統一的虛擬化管理,通過二次開發接口進行編程,自定義代價函數。匯總云平臺下四類資源(處理器、高速緩存、磁盤存儲和網絡帶寬),根據每個子系統對資源不同的依賴程度,將四類資源分別賦予權重 (Weight值),比較子系統對各類資源的請求值和云平臺中宿主機的可用資源值,選出滿足需求的多個候選主機。最終計算各候選目標主機的代價函數值,選擇函數值最小的宿主機作為部署的目標主機,實現根據子系統資源需求的智能虛擬機優化部署方案?;贠penStack的虛擬機智能優化部署方案如圖7所示。

圖7 基于OpenStack的智能虛擬機優化部署方案

實驗結果表明,基于云端大數據分析平臺能夠科學合理地利用既有系統資源,有效地改善了原強震預警系統的各子系統負載不均衡現象,智能選擇較優的宿主機部署虛擬機。系統處理時間與IO存取速度較原平臺得到明顯提升,如圖8、圖9所示。

圖8 應用云平臺前后系統處理時間對比

圖9 應用云平臺前后每秒系統IO存取能力對比

總之,基于云端大數據分析平臺先進性主要體現在:(1) 以Web頁面方式,圖形化管理各種資源,實現對軟硬件統一調度;(2) 自動化運維,實現事件監控報警及信息查看;(3) 通過智能虛擬機部署技術提升軟件系統整體運行效率。對采用云平臺前后業務系統的易用性、可擴展性、可維護性進行比較,對比結果如表1所示。

表1 使用云平臺前后系統各項性能對比表

4結語

本文展望了云計算技術在地震行業的應用前景,提出基于私有云的大數據分析平臺體系架構的設計方案。通過在云計算環境層實現智能虛擬機部署,將優化方案應用于地震預警系統,在實現對資源進行統一管理同時,有效提升了系統整體的計算效率及資源利用率,增強了系統的可用性及擴展性。這為今后地震行業大規模數據計算解決方案提供了值得借鑒的技術經驗和更加深入的研究方向。

參考文獻

[1] 蔡寅,劉希強,趙銀剛,等.基于CloudStack的地震預警系統應用研究[C]//大數據、云計算與地球物理應用研討活動論文摘要集,2014:7-8.

[2] 蔡寅,李衛東,李鉑.地震行業數據整合服務架構研究與應用[J].計算機應用與軟件,2014,31(3):43-46.

[3] 魏坤,許暉,楊旸.基于虛擬機實時遷移的綠色云計算及其技術實現[J].計算機應用與軟件,2013,30(6):101-103.

[4] 王桂強,陸朝俊.基于并行技術的大數據量統計分析探討[J].計算機應用與軟件,2011,28(3):162-165.

[5] 孫大為,張廣艷,鄭緯民.大數據流式計算:關鍵技術及系統實例[J].軟件學報,2014,25(4):839-862.

[6] 覃雄派,王會舉,李芙蓉,等.數據管理技術的新格局[J].軟件學報,2013,24(2):175-197.

[7] 常捷.地震元數據標準及管理構建研究[D].南京:南京理工大學,2010.

[8] 彭紅,楊根興,蔡立志.基于用戶個性化需求的虛擬機部署機制[J].軟件產業與工程,2013,13(1):37-41.

[9] Wang Y J,Sun W D,Zhou S,et al.Key technologies of distributed storage for cloud computing[J].Journal of Software,2012,23(4):962-986.

STUDY ON APPLICATION OF EARLY WARNING SYSTEM FOR STRONG EARTHQUAKE BASED ON PRIVATE CLOUD COMPUTING TECHNOLOGY

Cai Yin1,2Li Hong2Zhao Yin’gang3

1(InstituteofGeophysics,ChinaEarthquakeAdministration,Beijing100081,China)2(EarthquakeAdministrationofShandongProvince,Jinan250014,Shandong,China)3(AnqiuSeismicStation,EarthquakeAdministrationofShandongProvince,Weifang262100,Shandong,China)

AbstractBy analysing and studying current situation of data processing and analysis in seismic industry, we prospected on the application of cloud computing technology in the industry. Aiming at the problems of Shandong strong earthquake early warning system during its R&D and test stage in low computational efficiency and imbalance resource occupation between subsystems, we proposed the big data analysis and processing platform architecture, which is based on distributed cloud computing technology. Through uniformly managing the hardware and software resources, it achieves the intelligent virtual machine deployment scheme according to the resource demand of subsystems, and improves the high availability and scalability of the platform. Test results showed that the computing efficiency and resource utilisation rate of strong earthquake early warning system has been raised effectively. The platform architecture has been put into preliminary application.

KeywordsPrivate cloudSystem architectureResource schedulingStrong earthquake early warning system

收稿日期:2014-10-13?!笆濉眹铱萍贾斡媱澱n題(2012 BAK19B04)。蔡寅,工程師,主研領域:地震行業信息化軟件研發。李紅,高工。趙銀剛,工程師。

中圖分類號TP311.5

文獻標識碼A

DOI:10.3969/j.issn.1000-386x.2016.05.001

猜你喜歡
分布式計算計算資源強震
7.0級強震襲擊菲律賓
強震作用下崩塌滾石沖擊耗能損傷演化分析
基于模糊規劃理論的云計算資源調度研究
改進快速稀疏算法的云計算資源負載均衡
花蓮強震!
基于Wi-Fi與Web的云計算資源調度算法研究
耦合分布式系統多任務動態調度算法
基于云計算的移動學習平臺設計與實現
云計算中MapReduce分布式并行處理框架的研究與搭建
強震的威力
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合