張 琪,趙 倩,康曉姍,紀(jì)嬌陽,孫素梅
(遼寧省地震局,遼寧 沈陽 110034)
在地震監(jiān)測的數(shù)據(jù)規(guī)模上看,地震觀測儀器類型由模擬向數(shù)字化轉(zhuǎn)變,資料數(shù)據(jù)存儲量呈現(xiàn)指數(shù)增長,處理復(fù)雜程度顯著增加,因此加速凸顯出震情會商中前兆各學(xué)科數(shù)據(jù)分散、分析技術(shù)方法不規(guī)范、自動化程度不高等問題。目前使用的分析軟件已無法滿足震情監(jiān)視跟蹤和日常震情會商研判需求。
研發(fā)一套分布式運行、部署在云環(huán)境下具有自動化數(shù)據(jù)處理能力平臺軟件,滿足各級、各類會商業(yè)務(wù)需求,實現(xiàn)自動提取各學(xué)科多種類型數(shù)據(jù),自動生成、定時推送和交互查詢各時間尺度數(shù)據(jù)觀測報告、自動查詢臺站及各類儀器信息、數(shù)據(jù)、觀測報告和解析儀器二維碼獲得其數(shù)據(jù)信息。
Datist 數(shù)據(jù)專家為專項服務(wù)于大數(shù)據(jù)時代場景式(Context) 數(shù)據(jù)整合與融合的一款軟件,能夠處理多源數(shù)據(jù),從多種數(shù)據(jù)源中獲取多種格式數(shù)據(jù)。在流程集成方面,提供點、線、面、體的企業(yè)級業(yè)務(wù)重構(gòu)方法,通過頂層設(shè)計與基層創(chuàng)新相結(jié)合、示范先行與成熟推廣相結(jié)合,不斷迭代更新的科研成果,旨在地震監(jiān)測預(yù)報領(lǐng)域面向業(yè)務(wù)人員,營造一種開放、共享、協(xié)同的科研工作環(huán)境。
圖1 Datist 數(shù)據(jù)專家整合多元化數(shù)據(jù)Fig.1 Datist data experts integrate diversified data
基于Datist 數(shù)據(jù)專家系統(tǒng),自動讀取學(xué)科儀器數(shù)據(jù)、繪制數(shù)據(jù)曲線,以實現(xiàn)自動匯總生成周/月三大學(xué)科的會商報告,進(jìn)而能更好的為周/月會商的儀器數(shù)據(jù)統(tǒng)計提供服務(wù),減輕學(xué)科組工作人員繁重的工作壓力,提升工作效率,具體實現(xiàn)流程見圖2。
圖2 數(shù)據(jù)自動化信息化推送流程Fig.2 Data automation and informatization push flow
目前,遼寧省地震局現(xiàn)使用的地震監(jiān)測系統(tǒng)為Docker 應(yīng)用虛擬化平臺系統(tǒng),完成由原來的傳統(tǒng)虛擬機(jī)技術(shù)—以O(shè)S 為中心,升級為新時代容器技術(shù)以應(yīng)用為中心。在相同運行環(huán)境、應(yīng)用程序下利用更輕量的Docker 容器支持,使用更快速的宿主機(jī)操作系統(tǒng)直接運行在內(nèi)核上,在硬件使用中無IO 轉(zhuǎn)換負(fù)擔(dān)、應(yīng)用程序易安裝,易使用、遷移方便,數(shù)據(jù)量小的優(yōu)點。使用Linux 系統(tǒng)下運行的Oracle 關(guān)系型數(shù)據(jù)庫,其具有性能穩(wěn)定、功能強大、移植性好等特點,被廣泛應(yīng)用于各個行業(yè)領(lǐng)域。
建立數(shù)據(jù)表時為防止數(shù)據(jù)冗余等情況出現(xiàn),所需信息分散在不同數(shù)據(jù)表內(nèi),無法通過臺站、儀器等基本信息,讀取相關(guān)數(shù)據(jù)表繪制數(shù)據(jù)曲線。數(shù)據(jù)庫沒有視圖和索引,需通過臺站字典表、儀器測項字典表,數(shù)據(jù)采樣率表等數(shù)據(jù)表共同確定該儀器數(shù)據(jù)存儲位置[1]。為更高效實現(xiàn)需求,通過各個數(shù)據(jù)表內(nèi)主鍵把相關(guān)信息整合至一張信息表內(nèi)。
以整合儀器信息為例,在目前數(shù)據(jù)庫中臺站擁有儀器型號信息表(QZ_DICT_INSTRUMENTS)及臺站擁有儀器信息表(QZ_DICT_STATIONIN STRUMENTS),使用INNER JOIN 進(jìn)行關(guān)鍵字匹配,實現(xiàn)語句為:
Select * FROM QZ_DICT_STATIONINSTRU MENTS INNER JOIN QZ_DICT_INSTRUMENTS ON QZ_DICT_STATIONINSTRUMENTS.INSTRCO DE= QZ_DICT_INSTRUMENTS.INSTRCODE;
儀器采樣率分為:01(分鐘值)、02(秒值)、60(小時值)、90(日值),數(shù)據(jù)類型分為:原始數(shù)據(jù)(DYS)、預(yù)處理數(shù)據(jù)(DYU)、產(chǎn)品值數(shù)據(jù)(CP)。數(shù)據(jù)表的命名規(guī)則為:機(jī)構(gòu)代碼_測項代碼_表類型標(biāo)識_采樣率代碼[2]。其中預(yù)處理及產(chǎn)品值數(shù)據(jù)為數(shù)據(jù)處理后采樣率加1 時間尺度保存,少數(shù)特殊儀器為秒值采樣,預(yù)處理后數(shù)據(jù)寫入分鐘值原始數(shù)據(jù)表及分鐘值預(yù)處理數(shù)據(jù)表,即所有儀器均滿足在采樣率尺度加1 后的預(yù)處理表存在相應(yīng)預(yù)處理數(shù)據(jù)規(guī)律。繪制不同時間尺度曲線圖需選擇不同類型儀器數(shù)據(jù),由于日均值儀器未要求做預(yù)處理及產(chǎn)品值轉(zhuǎn)換,其讀取數(shù)據(jù)時讀取其原始數(shù)據(jù)表,秒值、分鐘值儀器儀器靈敏度較高,需使用預(yù)處理及產(chǎn)品值數(shù)據(jù)繪制數(shù)據(jù)曲線圖,具體不同時間尺度繪制曲線采用數(shù)據(jù)類型見表1。
表1 繪制儀器曲線數(shù)據(jù)表位置
Oracle 數(shù)據(jù)庫是信息技術(shù)發(fā)展的重要產(chǎn)物,由于數(shù)據(jù)庫中的數(shù)據(jù)量日漸龐大,對數(shù)據(jù)的處理速度提出了更高的要求,對數(shù)據(jù)庫的查詢進(jìn)行優(yōu)化,會節(jié)約大量的系統(tǒng)資源和提高數(shù)據(jù)的查詢效率,所以讀取數(shù)據(jù)表時應(yīng)該重視數(shù)據(jù)庫查詢優(yōu)化的重要性。
在Oracle 數(shù)據(jù)庫中執(zhí)行計劃是SQL 優(yōu)化最為復(fù)雜也是最關(guān)鍵的部分,因為它實際上代表了目標(biāo)SQL 在Oracle 數(shù)據(jù)庫內(nèi)部的具體執(zhí)行步驟[3]。在對儀器數(shù)據(jù)表查詢過程中,當(dāng)數(shù)據(jù)量很大時,使用Having 時,是先分組后條件判斷,需要檢索所有的記錄再條件判斷,而當(dāng)使用Where 時先判斷再分組,分組效率更高,從而查詢的效率也有明顯提高。
繪制數(shù)據(jù)曲線圖為動態(tài)數(shù)據(jù),若讀取數(shù)據(jù)庫中所有歷史數(shù)據(jù)耗費時間較長效率較低,使用Where 對數(shù)據(jù)時間進(jìn)行查詢提取,例抽取前7 天的數(shù)據(jù)SQL 語句為:SELECT * FROM reportdata WHERE TO_DAYS (NOW ()) -TO_DAYS(START) <=7。
各種采樣率的數(shù)據(jù)表的結(jié)構(gòu)基本相同,區(qū)別在于“觀測值序列”字段。對于日(均)值表,觀測值序列只有一個數(shù)據(jù);對于整點值表,觀測值序列將一天24 個小時值數(shù)據(jù)按采樣次序連接起來,數(shù)據(jù)之間用空格符分隔;秒值表的觀測值序列字段則為86400 個數(shù)據(jù)連接起來[4]。在創(chuàng)建流程時需要設(shè)定變量將儀器數(shù)據(jù)表內(nèi)信息與數(shù)據(jù)字典表信息對應(yīng),觀測值OBSVALUE字段為CLOB 類型,其按時間順序排列存儲,在繪制曲線圖時應(yīng)根據(jù)其采樣率增加相應(yīng)時間函數(shù)形成點-數(shù)值格式,即AddMinutes、AddSeconds、AddHours。按儀器學(xué)科屬性進(jìn)行分類,以數(shù)組的形式進(jìn)行多次循環(huán)繪制多套儀器數(shù)據(jù)曲線圖。
表2 儀器數(shù)據(jù)表結(jié)構(gòu)
目前數(shù)字化前兆觀測系統(tǒng)數(shù)據(jù)的采樣率及精度有了進(jìn)一步的提高,其數(shù)據(jù)量也隨之呈指數(shù)增長,增加了前兆臺站、前兆臺網(wǎng)的數(shù)據(jù)及數(shù)據(jù)檢查工作量。目前數(shù)據(jù)庫中預(yù)處理數(shù)據(jù)由工作人員主觀判斷后處理,該過程未實現(xiàn)自動化處理,人為操作的主觀性較大,不能保證其數(shù)據(jù)質(zhì)量。大數(shù)據(jù)時代對于數(shù)據(jù)的精度和有效性要求更為苛刻,因此數(shù)據(jù)的預(yù)處理過程必不可少,只有科學(xué)規(guī)范的預(yù)處理過程,才能使數(shù)據(jù)分析深層挖掘的結(jié)論更為合理可靠。
使用MATLAB 程序?qū)δ壳耙延袛?shù)據(jù)進(jìn)行簡單預(yù)處理操作,去除明顯臺階及突跳,為數(shù)據(jù)的深層次挖掘提供更科學(xué)可行的數(shù)據(jù)信息。預(yù)處理操作主要包括對原始數(shù)據(jù)出現(xiàn)的缺數(shù)、突跳、臺階和超限等情況進(jìn)行預(yù)處理。對少量缺數(shù)的數(shù)據(jù)可進(jìn)行線性插值、多次樣條插值或鄰近內(nèi)插處理;對于超出3 倍中誤差的突跳值對其刪除并進(jìn)行插值,體應(yīng)變數(shù)據(jù)預(yù)處理去臺階操作如圖4 所示,自動預(yù)處理后的數(shù)據(jù)可以更直觀的看出數(shù)據(jù)變化趨勢,實現(xiàn)更好的數(shù)據(jù)挖掘研究。
圖4 數(shù)據(jù)預(yù)處理前后對比圖Fig.4 Contrast chart before and after data preprocessing
目前在運行數(shù)據(jù)庫中存儲內(nèi)容包含前兆觀測數(shù)據(jù)外,還包含與前兆觀測數(shù)據(jù)有關(guān)的信息,包括前兆觀測基礎(chǔ)信息,如觀測環(huán)境、觀測場地、觀測設(shè)施、觀測儀器等方面的信息,前兆觀測日志信息,有關(guān)的輔助觀測數(shù)據(jù),前兆臺網(wǎng)運行信息,以及各個軟件配置權(quán)限表,異常跟蹤分析事件表等多種類型數(shù)據(jù)表。對于前兆數(shù)據(jù)自動化處理只需要包含儀器數(shù)據(jù)表、儀器運行日志表、少量儀器信息關(guān)聯(lián)表。
為保證前兆數(shù)據(jù)庫正常運行,實現(xiàn)對現(xiàn)有數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)遷移,在云環(huán)境下建立Mysql數(shù)據(jù)庫,建立相關(guān)數(shù)據(jù)表,例如關(guān)聯(lián)后的臺站儀器信息表、儀器數(shù)據(jù)表及相關(guān)運行日志表,實現(xiàn)數(shù)據(jù)遷移。因臺站儀器暫未實現(xiàn)實時數(shù)據(jù)交換至省局,現(xiàn)數(shù)據(jù)庫保存數(shù)據(jù)為前一天數(shù)據(jù)。在設(shè)置實時數(shù)據(jù)增量交換至云服務(wù)器時,設(shè)定時間為0 時至12 時,保證數(shù)據(jù)及時性和同步性,實現(xiàn)云端化。
圖5 數(shù)據(jù)遷移和實時交換Fig.5 Data migration and real-time exchange
現(xiàn)在是大數(shù)據(jù)時代,單一的傳播方式已不再滿足現(xiàn)代化的發(fā)展需要,微信的出現(xiàn)則成為人們獲取大量信息的平臺。目前地震行業(yè)數(shù)據(jù)推送僅存在于連接行業(yè)內(nèi)網(wǎng),為實現(xiàn)信息推送,使用Datist 軟件與微信接口,設(shè)計窗口,推送相關(guān)儀器數(shù)據(jù)報告。利用智能手機(jī)的信息儲存量大、網(wǎng)絡(luò)共享資源方便、不限辦公場地等優(yōu)勢,提升工作效率。一級菜單為“前兆管理”,二級菜單根據(jù)學(xué)科屬性分為“流體學(xué)科”、“形變學(xué)科”、“電磁學(xué)科”。報告發(fā)送方式為每日10 點定時發(fā)送及工作人員交互。
采用了云儲存原理,將數(shù)據(jù)庫保存在云端服務(wù)器上。實行及時共享,實時維護(hù),全天候等特點,有利于提高辦公效率,可以實現(xiàn)隨時隨地辦公、需要的信息可以及時共享、隨時可以查、隨時可用辦公信息、辦公資料。擺脫了傳統(tǒng)的計算機(jī)查看數(shù)據(jù)的平臺需求和紙質(zhì)化數(shù)據(jù)的效率與便攜的多重問題。
圖6 微信端交互窗口界面Fig.6 Interface of interactive window on micro-message terminal
對于日常推送數(shù)據(jù)曲線報告,需要包括儀器數(shù)據(jù)曲線及儀器預(yù)處理日志。預(yù)處理日志主要記錄儀器運行過程中外界發(fā)生的對儀器運行和數(shù)據(jù)產(chǎn)生影響的事件,如環(huán)境干擾事件、人工調(diào)整儀器等,以及對事件進(jìn)行的處理信息等。觀測日志主要由人工錄入,并保存在數(shù)據(jù)庫中。通過數(shù)據(jù)曲線及日志同步發(fā)送,可有效排除很多環(huán)境干擾和人為因素引起的數(shù)據(jù)變化,為數(shù)據(jù)儀器異常分析提供參考信息。
實現(xiàn)前兆儀器曲線報告,形成周、月、年及多年時間尺度的前兆數(shù)據(jù)自動處理和各學(xué)科觀測報告。產(chǎn)出數(shù)據(jù)曲線及預(yù)處理日志、自動匯總學(xué)科報告推送至有需求的地震預(yù)報分析領(lǐng)域人員手中,實現(xiàn)前兆數(shù)據(jù)自動化處理及信息推送。
圖7 儀器數(shù)據(jù)曲線圖Fig.7 Instrument data chart
該技術(shù)更好的實現(xiàn)掌上化辦公及基本管理信息資源共享與管理,優(yōu)化辦公業(yè)務(wù)資源模型,更好的為周、月會商的儀器數(shù)據(jù)統(tǒng)計提供服務(wù),實現(xiàn)前兆各學(xué)科數(shù)據(jù)庫中不同產(chǎn)出類型數(shù)據(jù)的自動提取,實現(xiàn)周、月、年及多年時間尺度的前兆數(shù)據(jù)自動處理和各學(xué)科觀測報告的自動生成,實現(xiàn)前兆學(xué)科觀測報告定時推送和交互查詢,實現(xiàn)前兆臺站各類儀器信息、數(shù)據(jù)、觀測報告和顯著震情周邊臺站信息自動查詢,推進(jìn)地震分析會商技術(shù)平臺日常會商功能模塊建設(shè),進(jìn)而更好服務(wù)于日常震情會商,有效減少前兆學(xué)科預(yù)報人員繁瑣的日常工作,實現(xiàn)地震分析預(yù)報技術(shù)平臺的信息化。