周永吉 ,黃 博,孟祥龍
(1.黑龍江省氣象數據中心,黑龍江 哈爾濱150030;2.呼蘭區氣象局,黑龍江 哈爾濱 150000)
CTS(China Telecommunication System)是全國綜合氣象信息共享平臺中數據收集與分發系統的簡稱[1],平臺運行承載了全國各類氣象數據的通信傳輸業務,同時兼顧各類氣象產品的共享發布等任務,其數據量巨大且內容全面,是覆蓋從國家氣象中心到各省氣象中心再至所有基層觀測站的龐大三級網絡體系。考慮到整個系統中所涉及數據存儲類型的特殊性,其數據庫設計必須具備針對性,以文件存儲為例,其存儲容量的分析、庫結構的設計必須適應氣象數據業務系統的獨立要求并具備較好的可擴展行,以滿足飛速發展的氣象現代化業務需求。
本文通過梳理新時代下氣象數據業務的通信流程,結合CTS平臺的數據邏輯,從整體角度對CTS平臺系統的核心數據庫在存儲設計和容量評估兩方面做出較為細致的分析,面向氣象數據系統工程師進行較詳盡的底層解讀,從而滿足CTS系統平臺的部署、運行以及維護需求,保障新通信業務體系的順利建設。
數據庫的設計需要綜合考量,尤其對于CTS這種覆蓋全國的大型系統而言,通信業務的穩定性和連續性是首要因素,同時由于表單數量較多,調度過程中的延時也需要得到有效控制,這就對結構設計提出了較高要求,另外還要兼顧到擴展性和實現難度等多方面因素,從而盡最大可能排除隱患,保證長期穩定運行。總體來說,數據庫的設計需要充分考量以下幾點:
(1)綜合評估平臺整體需求。作為后臺,數據庫的意義就是為前臺的數據傳輸應用來服務,因此氣象數據的通信業務需求是平臺整體的基礎需求,除了主體報文數據以外的各類協調型數據如傳輸時效、臺站元數據等表單信息也應得到良好的維護,從而使數據間呈現完整統一的互通關系[2]。
(2)建立嚴謹且邏輯性強的索引關系。在保證數據信息準確性的設計上,需要對復雜數據建立高效嚴謹的排查機制,避免在多環節的索引、調度、調用過程中出現訛誤。同時在數據源方面要有一致性控制[3]。
(3)優化查詢過程。查詢過程的控制本質上就是保證系統效率,在這方面的優化方法有很多,如優化查詢算法、優化表結構、優化存儲等,而本文中重點分析的存儲設計和容量估算其根本目的也是優化查詢過程提高數據業務效率。
(4)充分考慮擴展性問題。隨著氣象現代化建設的穩步推進,氣象通信業務的升級步伐加快,因此CTS的現有模式在不久的將來必然面臨升級改革環節,數據庫作為后臺基礎,必須在數據結構層面建立完善的可擴展性,以滿足業務高速發展的需求。
(5)完善的字段設計。數據庫中字段的設計牽扯到數據在業務應用過程中的一系列流程,如數據跟蹤、數據加工、質量檢測、產品評估等等,在傳統設計中為避免查詢算法過于復雜常常采用簡潔字段的方式,但這不利于龐大數據源的調用,因此在個別具有代表性的字段中合理增加冗余,是有利于氣象數據統籌發展的。
除上述所列舉的幾點需求以外,氣象數據業務是一項全國各級聯動,呈網狀結構的龐大體系,尤其對于氣象數據產品的共建共享上還有非常大的發展空間,因此作為整個平臺的最前端設計,在CTS數據庫中適當合理的預留冗余信息和可擴展表單是非常有必要的。
在CTS系統中,涉及到各種氣象數據、系統和業務運行日志、CTS運行所需的配置信息、用戶信息以及各種數據字典等,對文件存儲區的設計,遵循《氣象數據庫系統存儲及命名規范》、《服務器目錄及存儲資源規劃》和《工作目錄命名規范》,并方便文件的存儲、查詢和清除[3]。
平臺中文件存儲區涉及到的目錄是“/space/cimiss_CCCC/run/azone/”和“/app/conf”。 前者是 CTS系統的主要目錄,它包括內部數據和外部數據。內部數據是指CTS系統內部的處理數據以及臨時數據,外部數據不僅包括CTS系統從CIMISS系統外部得到的數據,還包括與CIMISS系統內部交互的數據。所有這些數據都要在這個根目錄下重新劃分自己的子目錄。后者放置的是CTS系統所需的配置文件以及升級文件。
根據數據收集與分發系統的業務特點,基于數據管理的安全性考慮,先將文件存儲區劃分為兩大區域,一個是用于與外界交換數據的通信區,另一個是用于CTS內部數據處理的工作區。在通信區,其根目錄是“/entry/”,它主要包括五個目錄:入口目錄、遠程下載目錄、CMACast補調目錄、本地補調目錄、數據流目錄;在工作區,主要包括九個目錄:收集目錄、分發組織目錄、數據編輯目錄、數據定制目錄、原始存檔目錄、數據存檔目錄、分發后存檔目錄、升級文件目錄、配置文件目錄。其中收集目錄、分發組織目錄、數據編輯目錄、數據定制目錄、原始存檔目錄、數據存檔目錄和分發后存檔目錄這七個目錄的根目錄都是“/wrk_c/”,升級文件目錄和配置文件目錄這兩個目錄的根目錄是“/app/conf”。涉及到與CIMISS內部系統的交互的目錄有三個:推送數據加工處理系統(DPC)的目錄是“/input1”和“/input2”;從 DPC 接收的目錄是“/ouput”;推送歸檔系統(SOD)的目錄是“/ach_c”,目錄結構參考數據來源的目錄結構。
在國家級節點,CTS同時部署在雙向DMZ區和核心業務區。在國家級的雙向DMZ區CTS中,通信區有入口目錄、遠程下載目錄、本地補調目錄和數據流目錄共四個目錄;工作區有原始存檔目錄、收集目錄、分發組織目錄、數據編輯目錄、數據定制目錄、分發后存檔目錄、數據存檔目錄、配置文件目錄和升級文件目錄共九個目錄。在國家級的核心區CTS中,通信區有入口目錄、遠程下載目錄和數據流目錄共三個目錄;工作區有原始存檔目錄、收集目錄、分發組織目錄、分發后存檔目錄、數據存檔目錄、配置文件目錄和升級文件目錄共七個目錄。在省級節點,CTS只部署在雙向區,通信區有入口目錄、遠程下載目錄、CMACast補調目錄、本地補調目錄和數據流目錄共五個目錄,工作區有原始存檔目錄、收集目錄、分發組織目錄、數據編輯目錄、數據定制目錄、分發后存檔目錄、數據存檔目錄、配置文件目錄和升級文件目錄共九個目錄[4]。
通過《CTS-數據規格說明書(V3.1).doc》中關于數據量的分析,目前已知的在國家級CTS的收集與分發資料每天的數據量約為2 TB,再加上未來幾年將要發射的FY3、FY4系列衛星的數據,每天通過CTS系統的數據可達4 TB。這些資料全部要進入通信區的入口目錄。由于入口目錄是個常空目錄,在進行數據收集時實時將數據移盤到工作區的原始存檔目錄,因此在容量估算時這兩個目錄合并估算[5]。
根據以上分析,以國家級CTS入口目錄為例,每天2 TB的容量應擴展一倍,在存儲策略上作為24 h周期存儲,同理分析下,遠程下載目錄為10 G容量,存儲周期24 h,以此類推,其中分發組織目錄的存儲策略定為10 d,數據存檔目錄為3 d,升級文件和策略文件目錄為永久存儲。按照百分之三十的冗余量合計估算,國家級存儲容量估算值約為27.2 TB。
綜上所述,CTS系統的文件級存儲區在內部數據和外部數據的基礎上劃分出存儲區目錄,而在功能區域的劃分上分為對外通信區和內部工作區,并按功能組織出相應路徑結構。在存儲容量方面通過估算可以得出冗余百分之三十的容量約為27.2 TB。這樣的冗余設計可以有效滿足CTS系統平臺的運行需求,保障數據通信業務的穩定高效。