王丹寧 柴旭超 王文青
摘 要:地震波形數(shù)據(jù)的存儲(chǔ)與應(yīng)用是國(guó)家地震數(shù)據(jù)災(zāi)備中心的重要業(yè)務(wù)之一。本文主要針對(duì)海量地震波形數(shù)據(jù)基于傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)和文件系統(tǒng)的存儲(chǔ)方式所存在的數(shù)據(jù)存儲(chǔ)離散、查詢效率低下等問(wèn)題,從大數(shù)據(jù)平臺(tái)的角度,提出基于Hadoop的地震波形數(shù)據(jù)存儲(chǔ)解決方案,著重闡述了業(yè)務(wù)需求、功能設(shè)計(jì)和實(shí)現(xiàn)原理。希望為國(guó)家地震數(shù)據(jù)災(zāi)備中心存儲(chǔ)平臺(tái)的建設(shè)提供有益的借鑒。
關(guān)鍵詞:大數(shù)據(jù);地震波形數(shù)據(jù);Hadoop;Hbase;數(shù)據(jù)解析
中圖分類號(hào):TP392 文獻(xiàn)標(biāo)識(shí)碼:A
1 引言(Introduction)
地震科學(xué)數(shù)據(jù)作為中國(guó)地震局最重要的核心資源之一,對(duì)監(jiān)測(cè)預(yù)報(bào)、震災(zāi)預(yù)防、應(yīng)急救援三大業(yè)務(wù)提供強(qiáng)大的底層數(shù)據(jù)支持。多年來(lái),地震科學(xué)數(shù)據(jù)經(jīng)過(guò)不斷的采集、觀測(cè)、傳輸、存儲(chǔ),形成了極大的數(shù)據(jù)規(guī)模,相應(yīng)地,地震局各級(jí)機(jī)構(gòu)分別構(gòu)建了自己的數(shù)據(jù)存儲(chǔ)和應(yīng)用系統(tǒng)。2008年,中國(guó)地震局第二監(jiān)測(cè)中心擬建設(shè)國(guó)家地震數(shù)據(jù)災(zāi)備中心,2013年,項(xiàng)目開(kāi)始實(shí)質(zhì)運(yùn)行,至今,已經(jīng)進(jìn)入軟硬件測(cè)試和存儲(chǔ)方案設(shè)計(jì)階段,將來(lái)匯入災(zāi)備中心的地震數(shù)據(jù)如何進(jìn)行存儲(chǔ)和應(yīng)用,成為亟待解決的問(wèn)題。
2 地震數(shù)據(jù)存儲(chǔ)和應(yīng)用現(xiàn)狀(The status of
earthquake data storage and application)
地震數(shù)據(jù)可以從狹義和廣義兩方面進(jìn)行認(rèn)識(shí)。狹義上,地震科學(xué)數(shù)據(jù)按照其獲取途徑可以劃分為觀測(cè)數(shù)據(jù)、探測(cè)數(shù)據(jù)、調(diào)查數(shù)據(jù)、實(shí)驗(yàn)數(shù)據(jù)和專題數(shù)據(jù)[1];按照觀測(cè)手段可以劃分為測(cè)震、前兆等數(shù)據(jù)。比如,專業(yè)上習(xí)慣稱測(cè)震數(shù)據(jù)為地震波形數(shù)據(jù),為了規(guī)范地震波形數(shù)據(jù)的存檔和交換,方便地震研究人員使用,由FDSN、IRIS和USGS共同發(fā)布的地震數(shù)據(jù)交換標(biāo)準(zhǔn)(The Standard for the Exchange of Earthquake Data,簡(jiǎn)稱SEED)便成為國(guó)內(nèi)地震行業(yè)地震波形數(shù)據(jù)的標(biāo)準(zhǔn)數(shù)據(jù)格式[2]。廣義上,特別從時(shí)下流行的大數(shù)據(jù)的角度來(lái)看,包括觀測(cè)數(shù)據(jù)、文檔、照片、視頻、地圖等結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)都可以涵蓋于地震數(shù)據(jù)的范疇之內(nèi)。
現(xiàn)有地震數(shù)據(jù)的存儲(chǔ),我們可以籠統(tǒng)歸納為兩大方式。其一,類似前兆業(yè)務(wù)數(shù)據(jù)等可以結(jié)構(gòu)化的數(shù)據(jù),都存儲(chǔ)于以O(shè)racle、Mysql為代表的關(guān)系型數(shù)據(jù)庫(kù)中,所以業(yè)務(wù)軟件和應(yīng)用都基于關(guān)系型數(shù)據(jù)庫(kù)進(jìn)行開(kāi)發(fā),這也是大多數(shù)行業(yè)和數(shù)據(jù)部門(mén)多年來(lái)采用的主流存儲(chǔ)方式。其二,對(duì)于不能結(jié)構(gòu)化的數(shù)據(jù),特別是文檔、照片、視頻等典型的非結(jié)構(gòu)化數(shù)據(jù)和雖能結(jié)構(gòu)化但受限于現(xiàn)實(shí)應(yīng)用而不能存入關(guān)系表中的SEED數(shù)據(jù),大都以數(shù)字化文件形式存儲(chǔ)于地震系統(tǒng)內(nèi)大大小小的傳統(tǒng)存儲(chǔ)平臺(tái)和介質(zhì)上,比如磁盤(pán)陣列和光盤(pán)。
數(shù)據(jù)存儲(chǔ)決定數(shù)據(jù)應(yīng)用。又以測(cè)震業(yè)務(wù)為例,由于測(cè)震業(yè)務(wù)現(xiàn)有流程和關(guān)系型數(shù)據(jù)庫(kù)的限制,測(cè)震數(shù)據(jù)中SEED或MiniSeed數(shù)據(jù)以文件形式存放于磁盤(pán)中,其他輔助型數(shù)據(jù)存放于Oracle或Mysql數(shù)據(jù)庫(kù)中。其實(shí)際應(yīng)用首先慢于純數(shù)據(jù)庫(kù)應(yīng)用;其次受限于數(shù)據(jù)的龐大體積,導(dǎo)致時(shí)間尺度不夠?qū)拸V,歷史數(shù)據(jù)應(yīng)用不夠充分;最后,由于而測(cè)震數(shù)據(jù)總數(shù)據(jù)量達(dá)到200TB左右,國(guó)內(nèi)并沒(méi)由任何唯一數(shù)據(jù)庫(kù)平臺(tái)可容納全部數(shù)據(jù),對(duì)于全量分析等高級(jí)應(yīng)用的可能也只好停留在想象階段。
3 大數(shù)據(jù)的發(fā)展對(duì)測(cè)震數(shù)據(jù)應(yīng)用的啟發(fā)(The
inspiration of the development of big data to the
application of seismic waveform data)
研究機(jī)構(gòu)Gartner賦予大數(shù)據(jù)如下定義:“大數(shù)據(jù)”是需要新處理模式才能具有更強(qiáng)的決策力、洞察發(fā)現(xiàn)力和流程優(yōu)化能力的海量、高增長(zhǎng)率和多樣化的信息資產(chǎn)。僅地震行業(yè)測(cè)震數(shù)據(jù)現(xiàn)存儲(chǔ)量便達(dá)到200TB,可以稱之為海量;測(cè)震數(shù)據(jù)的采樣頻率多為100Hz,也包含有200或300Hz數(shù)據(jù),而強(qiáng)震業(yè)務(wù)的采樣頻率更達(dá)到了500Hz,其未來(lái)的數(shù)據(jù)增長(zhǎng)率會(huì)越來(lái)越高;測(cè)震數(shù)據(jù)作為傳感器采樣數(shù)據(jù),與同樣作為傳感器采樣數(shù)據(jù)的前兆數(shù)據(jù)進(jìn)行長(zhǎng)時(shí)間尺度的聯(lián)合分析,更結(jié)合多樣的地震監(jiān)測(cè)數(shù)據(jù)進(jìn)行比對(duì),其應(yīng)用前景可能非常遠(yuǎn)大。而這樣的“地震大數(shù)據(jù)”急需要新的處理模式來(lái)挖掘深藏于其內(nèi)部的關(guān)于地震形成機(jī)理乃至地球內(nèi)部結(jié)構(gòu)的秘密,從而發(fā)揮其對(duì)地震預(yù)報(bào)的高決策力和洞察力。
又根據(jù)維基百科的定義,大數(shù)據(jù)是指無(wú)法在可承受的時(shí)間范圍內(nèi)用常規(guī)軟件工具進(jìn)行捕捉、管理和處理的數(shù)據(jù)集合。就測(cè)震數(shù)據(jù)應(yīng)用來(lái)說(shuō),短時(shí)間尺度、有限區(qū)域內(nèi)的數(shù)據(jù)處理和分析所花費(fèi)時(shí)間是可以承受的,但長(zhǎng)時(shí)間尺度、廣闊區(qū)域乃至全量分析在傳統(tǒng)平臺(tái)處理所需要的時(shí)間就令人絕望了,這也是還無(wú)研究人員進(jìn)行如此操作的原因。
總之,測(cè)震數(shù)據(jù)的半結(jié)構(gòu)化特性,其對(duì)地震預(yù)報(bào)的可能的巨大價(jià)值,其和前兆等地震數(shù)據(jù)的比對(duì)分析前景,都促使我們對(duì)其底層的存儲(chǔ)模式進(jìn)行大數(shù)據(jù)平臺(tái)方向的探索。
4 Hadoop平臺(tái)簡(jiǎn)介(Brief introduction of hadoop
platform)
4.1 Hadoop生態(tài)圈
Hadoop是Apache Lucene創(chuàng)始人Doug Cutting創(chuàng)建的項(xiàng)目,來(lái)源于谷歌公司兩篇關(guān)于GFS和MapReduce的重要論文。其形成的目的在于利用通用服務(wù)器集群進(jìn)行分布式計(jì)算和海量數(shù)據(jù)處理[3]。
Hadoop生態(tài)圈不僅包括分布式文件系統(tǒng)HDFS和分布式數(shù)據(jù)處理模型MapReduce,還包括一系列圍繞其宗旨構(gòu)建的相關(guān)項(xiàng)目,Hadoop主要項(xiàng)目及簡(jiǎn)單架構(gòu)如圖1所示。
圖1 Hadoop主要項(xiàng)目
Fig.1 Hadoop main project
圖中,Hadoop Common是一組分布式文件系統(tǒng)和通用I/O的組件和接口。在其之上,MapReduce為分布式數(shù)據(jù)處理模型,HDFS為商用機(jī)集群上的分布式文件系統(tǒng)。最上層的Hbase是一個(gè)分布式、按列存儲(chǔ)的數(shù)據(jù)庫(kù),使用HDFS作為底層存儲(chǔ)[4-9],類似于Oracle和Windows文件系統(tǒng)之間的關(guān)系。
4.2 災(zāi)備中心技術(shù)平臺(tái)需求
Hadoop生態(tài)圈項(xiàng)目涵蓋數(shù)據(jù)存儲(chǔ)、查詢、分析、管理等全部環(huán)節(jié),其對(duì)地震波形數(shù)據(jù)的安全存儲(chǔ)、查詢定位、可視化展現(xiàn)等是一種有益的嘗試。具體于國(guó)家地震數(shù)據(jù)災(zāi)備中心的應(yīng)用來(lái)說(shuō),如何利用Hadoop項(xiàng)目存儲(chǔ)好地震波形數(shù)據(jù),從而為未來(lái)的數(shù)據(jù)分析和可視化打好基礎(chǔ),是方案組首先要考慮的問(wèn)題。
5 Hadoop在測(cè)震數(shù)據(jù)存儲(chǔ)方面的應(yīng)用(Application
of hadoop in the measurement of seismic data
storage)
5.1 業(yè)務(wù)需求
國(guó)家地震數(shù)據(jù)災(zāi)備中心地震波形數(shù)據(jù)的存儲(chǔ)需求主要分為兩類:滿足中國(guó)地震臺(tái)網(wǎng)中心即源數(shù)據(jù)端的數(shù)據(jù)備份恢復(fù)需求和如何滿足災(zāi)備端未來(lái)的數(shù)據(jù)應(yīng)用。起初,項(xiàng)目組考慮地震波形數(shù)據(jù)集的數(shù)據(jù)量比較龐大,為滿足全部數(shù)據(jù)的存儲(chǔ)空間需求,設(shè)計(jì)存儲(chǔ)可用容量為500TB,HDFS平臺(tái)復(fù)制因子為3,即實(shí)際存儲(chǔ)容量應(yīng)達(dá)到1.5PB。
數(shù)據(jù)來(lái)源方面,地震波形數(shù)據(jù)大致以兩種方式匯入災(zāi)備機(jī)房,即傳感器數(shù)據(jù)流直接匯入和歷史數(shù)據(jù)文件導(dǎo)入??梢哉f(shuō)數(shù)據(jù)流匯入對(duì)應(yīng)實(shí)時(shí)數(shù)據(jù)備份,歷史數(shù)據(jù)導(dǎo)入對(duì)應(yīng)歷史數(shù)據(jù)備份。對(duì)應(yīng)Hadoop技術(shù)平臺(tái)需求,為最大限度滿足災(zāi)備安全性能,應(yīng)該選擇HDFS分布式文件系統(tǒng)存儲(chǔ)歷史和實(shí)時(shí)數(shù)據(jù);但是,數(shù)據(jù)以文件形式存儲(chǔ),會(huì)影響未來(lái)數(shù)據(jù)的分析和可視化應(yīng)用,而分布式數(shù)據(jù)庫(kù)可以更好的適應(yīng)此需求,所以,Hbase分布式數(shù)據(jù)庫(kù)便成為需求平臺(tái)之一。當(dāng)然,如何平衡數(shù)據(jù)災(zāi)備安全性和數(shù)據(jù)應(yīng)用之間的關(guān)系,也是需要慎重考慮的。
5.2 功能設(shè)計(jì)和實(shí)現(xiàn)原理
根據(jù)國(guó)家地震數(shù)據(jù)災(zāi)備中心對(duì)于地震波形數(shù)據(jù)災(zāi)備的需求,其功能設(shè)計(jì)列舉如下:
(1)實(shí)時(shí)數(shù)據(jù)流接入、解析、導(dǎo)入Hbase數(shù)據(jù)庫(kù)。
(2)歷史數(shù)據(jù)遷移、解析、導(dǎo)入Hbase數(shù)據(jù)庫(kù)。
(3)存儲(chǔ)空間滿足情況下,HDFS內(nèi)以SEED文件形式存儲(chǔ)一份地震波形數(shù)據(jù),以滿足災(zāi)備安全需求。
(4)以源數(shù)據(jù)端要求進(jìn)行數(shù)據(jù)級(jí)容災(zāi)。
根據(jù)上述需求,設(shè)計(jì)地震波形數(shù)據(jù)存儲(chǔ)備份方案如圖2所示。
圖2 地震波形數(shù)據(jù)備份方案
Fig.2 Seismic waveform data backup scheme
圖中所描述方案具體如下:
(1)實(shí)時(shí)數(shù)據(jù)寫(xiě)入
生產(chǎn)端將數(shù)據(jù)壓縮成為seed格式向?yàn)?zāi)備端發(fā)送數(shù)據(jù)流。
災(zāi)備端將seed格式數(shù)據(jù)解壓,以文件系統(tǒng)形式存入文件系統(tǒng),保留N天。
將seed文件數(shù)據(jù)解壓后形成記錄形式寫(xiě)入Hbase,存放于HDFS分布式文件系統(tǒng)內(nèi)。
(2)歷史數(shù)據(jù)遷移
以磁盤(pán)對(duì)拷或網(wǎng)絡(luò)傳輸?shù)男问綄?00TB左右地震波形歷史數(shù)據(jù)遷移至HDFS分布式文件系統(tǒng)內(nèi)。
將生產(chǎn)端SEED格式數(shù)據(jù)轉(zhuǎn)換成Hbase數(shù)據(jù)庫(kù)記錄形式,寫(xiě)入Hbase。
(3)數(shù)據(jù)級(jí)容災(zāi)過(guò)程
N天以內(nèi)的數(shù)據(jù):可以從緩沖區(qū)域讀取文件格式直接回傳至生產(chǎn)端。
N天以前的數(shù)據(jù):通過(guò)寫(xiě)入時(shí)建立的文件系統(tǒng)索引,確定所需要的數(shù)據(jù)是否存在,若存在可根據(jù)hadoop和文件系統(tǒng)的接口還原seed格式數(shù)據(jù),提供給生產(chǎn)端。
6 結(jié)論(Conclusion)
本文從國(guó)家地震數(shù)據(jù)災(zāi)備中心存儲(chǔ)需求出發(fā),闡述了地震波形數(shù)據(jù)存儲(chǔ)的Hadoop平臺(tái)實(shí)現(xiàn)模式,并從根本上解釋了為什么要選擇大數(shù)據(jù)平臺(tái)進(jìn)行地震數(shù)據(jù)的存儲(chǔ)。我們應(yīng)該看到,大數(shù)據(jù)平臺(tái)日趨成為各行業(yè)數(shù)據(jù)存儲(chǔ)及應(yīng)用的首選,地震科學(xué)作為給人類長(zhǎng)期帶來(lái)巨大挑戰(zhàn)的科學(xué)門(mén)類,在數(shù)據(jù)科學(xué)蓬勃發(fā)展的今天,應(yīng)對(duì)其產(chǎn)生的龐大數(shù)據(jù)集進(jìn)行存儲(chǔ)、分析及可視化方面的新的探索,為地震研究人員提供更完善的數(shù)據(jù)服務(wù)。
參考文獻(xiàn)(References)
[1] 地震科學(xué)數(shù)據(jù)資源概況.國(guó)家地震科學(xué)數(shù)據(jù)共享中心:http://
data.earthquake.cn/dataresource/datacon.jsp.
[2] DB/T2-2003,地震波形數(shù)據(jù)交換格式[S].北京:地震出版社,
2003.
[3] Tom White.Hadoop權(quán)威指南[M].北京:清華大學(xué)出版社,
2014.
[4] Sanjay Chemawat,Howard Gobioff,Shun-Tak Leung.The
Google File System.Google,Inc.2003.
[5] Jeffrey Dean, Sanjay Chemawat.MapReduce:Simplified Data
Processing on Large Clusters.Google,Inc.2004.
[6] 鄭秀芬,等.“國(guó)家數(shù)字測(cè)震臺(tái)網(wǎng)數(shù)據(jù)備份中心”技術(shù)系統(tǒng)
建設(shè)及其對(duì)汶川大地震研究的數(shù)據(jù)支撐[J].地球物理學(xué)
報(bào),2009,52(5):1412-1417.
[7] 王方建,李衛(wèi)東,趙國(guó)鋒.地震觀測(cè)數(shù)據(jù)平臺(tái)體系架構(gòu)研究[J].
中國(guó)地震,2009,25(2):214-222.
[8] 蔡斌,陳湘萍.Hadoop技術(shù)內(nèi)幕-深入解析Hadoop Common
和HDFS架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)原理[M].北京:機(jī)械工業(yè)出版社,
2014.
[9] 董西成.Hadoop技術(shù)內(nèi)幕-深入解析MapReduce架構(gòu)設(shè)計(jì)與
實(shí)現(xiàn)原理[M].北京:機(jī)械工業(yè)出版社,2014.
作者簡(jiǎn)介:
王丹寧(1981-),男,碩士,工程師.研究領(lǐng)域:數(shù)據(jù)管理,數(shù)
據(jù)應(yīng)用.
柴旭超(1985-),男,碩士,助理工程師.研究領(lǐng)域:大數(shù)據(jù)算
法和平臺(tái)研究.
王文青(1981-),男,碩士,工程師.研究領(lǐng)域:數(shù)據(jù)分析,大
數(shù)據(jù)架構(gòu).