符鳳平,吳哲紅,楊忠明
(貴州省安順市氣象局,貴州 安順 561000)
Micaps系統投入天氣預報業務運行已有數年,各級氣象臺站全部或部分地取消了紙質天氣圖的繪制和分析工作,但由此而帶來一些問題,如氣象歷史資料不便于查找,歷史天氣圖不便于再現,不便于進行天氣個例總結和分析工作,給天氣預報分析及技術研究帶來一定影響。
Micaps系統中一個時次的所有數據,不論資料類別,一律使用同一個文件名,系統通過不同目錄辨別資料的種類,其資料目錄很多。由于Micaps數據格式的文件冗余大,僅每天的常規資料就約占磁盤空間幾十兆,加上一些云圖、傳真資料、數值預報產品等約占幾百兆,一張VCD數據光盤也只能保存大概3 d的資料,而硬盤的保存空間也有限[1]。對于天氣預報業務來說,研究和開發一個可行的軟件,實現對Micaps系統的原始數據進行自動保存、壓縮和處理,再現Micaps系統歷史天氣圖,以便進行天氣個例分析與總結,顯得尤為重要和迫切。
常規氣象資料以氣象報文形式傳送,其電碼格式復雜,僅地面編碼說明就有幾百頁,為達到對氣象電碼即看即明的程度,建立氣象常規資料檢索,不僅可以減少在讀取常規氣象資料上的重復勞動,還將給氣象科研、資料整理和業務的開展帶來極大的便捷。
程序設計本著實用先進、界面美觀、操作簡便的原則,具有自動備份保存、壓縮與處理等功能。通過該系統,可解決氣象臺站取消天氣圖分析工作后部分資料的保存問題、歷史天氣圖再現問題,為資料信息化和共享提供堅實的基礎。
以Windows操作系統為工作平臺,基于局域網和省-地光纖通信網,采用C/S軟件體系結構,使用Visual Basic6.0編程語言實現,適用于Windows Server 2000/2003、Windows XP操作系統。
根據Micaps系統的節目表文件獲取所需備份的資料信息,利用Windows操作系統自帶的拷貝程序,分時分類地實現各類資料的自動備份,并將不同類的Micaps原始資料封裝在備份目錄下不同的文件名中。設置多個數據源路徑,以確保資料備份完整。使用壓縮軟件命令方式,對數據分類分時地進行自動壓縮,并按照一定方式命名壓縮文件。充分利用Micaps1.0系統的相關應用程序,實現資料的解碼轉換和圖形圖像輸出,通過人機交互的方式,生成各類Micaps系統數據格式的天氣圖表。以前臺或后臺的方式,對不同時次的常規資料進行檢索,獲取用戶需要的各個時次的氣象要素,生成文件可導入Excel表格,以便輸出打印。
基于局域網和省—地氣象光纖通信網,實現各類Micaps原始數據的自動備份與壓縮、數據完整性檢測與補調、備份數據的自動處理、要素檢索與報表輸出,并提供缺失數據記錄、網絡測試、自動定時啟停、補調進程顯示等功能。
系統主要由4部分組成:①自動備份與壓縮。自動加載相關程序,后臺自動運行,完成Micaps原始資料的備份與壓縮。②完整性檢測與補調。根據預先定義的Micaps原始數據備份信息文件,按照其內容進行數據完整性檢測與補調。③備份數據的自動處理。通過人機交互方式,將備份壓縮的Micaps原始數據自動生成各類Micaps系統數據格式的天氣圖表。④要素檢索與報表輸出。通過人機交互或后臺命令方式,生成用戶所需要的各時次要素,可跨年跨月檢索資料,檢索結果按檢索具體時次或檢索站點為文件命名,生成文件可導入EXCEL表格,方便進行保存與打印。
在主界面進行參數設置后,系統可在多環境下運行,具有較強的適用性和通用性。可設置的參數主要有Micaps原始數據源路徑(含本地衛星接收路徑和省級服務器存放路徑)、存放備份數據的目標路徑、Micaps1.0系統安裝路徑等。
系統主界面和參數設置界面分別見圖1和圖2。


4.1.1 自動備份 根據Micaps1.0系統自帶節目表文件(datatime.tab)內容,制定多個包含Micaps原始資料信息的文本文件(后綴為*.dat),如08時地面資料的文件命名為msg08.dat,02時地面資料的文件命名為msg02.dat,歐洲中心資料的文件命名為ecfile.dat。每個文件的內容由多行組成,每行代表一個文件,每行均包含通配符“@@”或“##”,其中“@@”代表當前系統日期,“##”代表前1 d,如文件msg08.dat的內容為:

文件msg02.dat的內容如下:

根據這些文件信息,通過后臺自動處理方式,使用timer1定時控件,實現各類資料的自動備份。系統主要實現了以下Micaps原始資料的自動備份:常規資料(包括8個時次的地面、2個時次的高空)、歐洲中心、T639資料等。在備份完成后,及時對備份完整情況進行檢測,自動記錄缺失數據信息,并將缺失信息顯示于系統界面。
系統在啟動時,自動檢測存放資料的目錄是否存在,這里主要設置dmsg、grib兩個子目錄,其中dmsg目錄存放常規資料(包括地面和高空數據),grib目錄存放歐洲中心、T639資料。
為保證數據備份完整,設置2個備份源路徑,即本地CMACast衛星廣播接收系統數據存放目錄和省級服務器數據存放目錄。由于CMACast衛星廣播接收系統資料存放目錄和文件命名格式與以往的DVB_S或PCVSAT系統不同,所以設置備份源路徑時需作適當的調整,如常規資料(含地面、高空)的備份源路徑設置為CMACast衛星廣播接收系統數據服務器下的相應目錄:“\10.205.128.102cmacastMSG_001GLBPUB...”,其 中“10.205.128.102”為CMACast系統數據服務器IP地址。歐洲中心和T639資料的備份源路徑設置為Micaps數據處理服務器下的相應目錄:“\10.205.128.187 awdatadvbs wpecmwf...”和“\10.205.128.187 awdata 639...”,其中“10.205.128.187”為Micaps數據處理服務器的IP地址。
4.1.2 自動壓縮 使用Winrar壓縮軟件自帶相關命令如“Winrar.exe m– m5”,對 Micaps原始數據先后兩次進行最大程度的壓縮,主要利用定時器控件timer1實現資料的自動壓縮,其工作流程如圖3:

圖3 timer1控件工作流程
實現自動壓縮功能時,系統首先對要備份的Micaps原始數據自動進行初級壓縮。根據 Micaps1.0節目表內容以及CMACast系統Micaps數據處理服務器配置信息,事先確定各時次數據的大概接收時間,然后設置在某個時間范圍內,將數據進行分類壓縮。壓縮文件按照以下方式命名:數據類型(位數不定)+年(四位)+月(兩位)+日(兩位)+時(兩位)+“.RAR”,其中數據類型為自定義,如地面數據為SN,高空為UN,歐洲中心資料為EC,T639預報資料為T639等。在完成對原始數據文件的初級壓縮后,系統自動將備份目標路徑下的原始數據刪除。
為了節省磁盤空間,實現對Micaps原始數據最大程度的壓縮。在每月1日,對上月已經過初級壓縮的每日每個時次的Micaps原始數據壓縮包,分類進行再次壓縮。經過再次壓縮后,每類數據最終會生成一個壓縮包文件,如2012年5月的地面資料被壓縮命名為SN201205.RAR,2012年5月的歐洲中心資料被壓縮命名為EC201205.RAR。
4.2.1 數據完整性檢測 根據預先定義的Micaps原始數據備份信息文件,按照其內容進行數據的完整性檢測與補調。分別在兩處實現資料完整性自動檢測功能,一是在備份過程中,將缺失數據信息顯示于系統界面,主要使用定時控件timer2實現此功能。二是根據選擇日期,對某天的資料備份情況進行完整性檢測。程序首先判斷檢測數據的壓縮包文件是否存在,若存在,檢查文件中是否缺失某個時次的文件,如缺失文件,在完整檢測表窗口顯示“缺失”,否則顯示“完整”,并將缺失的具體文件名顯示于系統界面。
4.2.2 缺失數據補調 為了避免由于網絡不通、軟件運行異常或者其它原因等導致數據自動備份壓縮不全而設置。補調前,首先進行數據完整性檢測,然后根據檢測情況,對提示缺失的數據進行補調。自動建立臨時工作目錄temp,在補調前,首先清空臨時工作目錄temp,釋放當日各類資料壓縮包文件到temp目錄,根據壓縮包文件內容確定需要補調的文件,補調完畢后對資料進行分類壓縮,判斷資料是否補調完整,并在系統界面顯示補調完整情況。其主要工作流程如圖4:

圖4 數據補調流程
通過人機交互方式,建立歷史天氣圖分析處理以及顯示平臺,生成各類Micaps系統數據格式的天氣圖。實現自動進行解壓、整理報文,處理生成Micaps系統可接受的各類數據格式,其解碼轉換程序和圖形圖像輸出均使用Micaps1.0系統相關應用程序。
在利用Micaps1.0系統的處理程序對已備份Micaps原始數據實現處理顯示時,為了操作方便,可按日期或時段進行選擇處理。不管選擇哪種方式,在進行數據處理前,系統首先將計算機日期修改為選擇日期,然后判斷Micaps1.0系統的datatran子目錄下是否存在要處理的數據,如存在,則直接進行處理,如不存在,將數據備份目錄下的壓縮包文件釋放到Micaps系統的datatran子目錄下,再利用Micaps1.0系統自帶批處理程序(如08時地面資料的批處理程序為cl08s.bat)進行數據處理,處理完畢后,再將計算機日期修改為當前系統日期。按時段進行處理界面如圖5。

圖5 Micaps原始數據處理界面
以前臺或后臺命令方式,通過人機交互生成用戶需要的各時次要素,系統可以跨年跨月檢索資料。可以檢索的資料主要有不同時次的地面要素資料和高空要素資料,可檢索的地面要素資料有多個,供檢索的時次有02時 、05時 、08時、11時、14時、17時、20時、23時共8個時次。可檢索的高空要素有5個,供檢索的時次有08時、20時共2個時次,可供檢索的層次有500 hPa、700 hPa、850 hPa等3層。按檢索日期、時次為文件名和按檢索站點為文件名兩種方式來保存檢索結果,前者將所有的檢索站點寫入一個文件中,按不同日期和時次來命名文件,即每天每個時次產生一個文件,后者將所有檢索時間段內每一個檢索站點的所有要素寫入一個文件中,并以區站號為文件命名,用戶可直接將文件導入Excel表格,實現輸出打印。
根據Micaps數據文件格式,讀取Micaps系統處理生成的填圖數據文件,分別實現地面、高空資料的要素檢索,并輸出Excel報表,其中可檢索地面資料18個要素,高空資料5個要素。地面資料的檢索主要讀取文件目錄為“micapssurfaceplot”,高空資料的檢索按照層次分別讀取目錄“micapshighplot”下500、700、850子目錄的填圖數據文件。地面資料檢索界面和高空資料檢索報表輸出分別見圖6和圖7。


本文主要從Micaps原始數據的自動備份與壓縮、完整性檢測與補調、備份數據的自動處理、要素檢索與報表輸出等4個方面,對系統所實現功能作了較為詳細的闡述。由于Micaps原始數據種類多,數據量大,尤其是自CMACast衛星廣播系統投入業務運行后,數據量大幅度增長,在一定程度上增加了Micaps原始數據的備份工作難度。本系統利用天氣預報分析常用的部分Micaps原始數據如地面、高空、歐洲中心、T639等資料,對Micaps原始數據的自動備份與處理方法進行了探討。
自該系統投入業務運行以來,有效實現了部分常用Micaps原始資料的自動備份、壓縮與處理,為天氣個例分析和預報技術研究提供了一定的Micaps原始數據保證。在運行期間,系統通過對自動備份的Micaps壓縮數據包文件進行處理后,均有效生成Micaps系統數據格式天氣圖。
[1]王遂纏,等.基于MICAPS系統的數字化天氣圖及常規氣象資料檢索分析系統[J].氣象科技,2004.32(2).
[2]中國氣象局監制.氣象信息綜合分析處理系統MICAPSV2.0系統管理員手冊[M].102-103.