孔令旺,張 瑾,薛萬孝
(甘肅省氣象信息與技術(shù)裝備保障中心,甘肅 蘭州 730020)
云計算[1]是一種資源的使用模式,這種模式是對可配置的計算資源共享池(資源包括網(wǎng)絡(luò)、服務(wù)器、存儲、應(yīng)用軟件和服務(wù))提供可用的、便捷的、按需的網(wǎng)絡(luò)訪問,只需要投入很少的管理工作,或與服務(wù)供應(yīng)商進行很少的交互,這些資源即可被快速提供。
隨著氣象現(xiàn)代化的逐步推進,甘肅省氣象信息中心已經(jīng)建成了以NAS(網(wǎng)絡(luò)接入存儲Network-Attached Storage)為平臺的在線存儲系統(tǒng),實現(xiàn)了高空、地面、農(nóng)氣、輻射、酸雨、雷達、報表等多種非結(jié)構(gòu)化類型氣象觀測資料的在線云存儲,滿足了氣象數(shù)字檔案資料海量增長的存儲需求,同時,海量的虛擬化資源池建設(shè)構(gòu)建了云計算必要的軟硬件環(huán)境,本研究旨在云計算環(huán)境下設(shè)計一套氣象資料管理平臺,優(yōu)化氣象資料的收集、整理、加工、檢索和服務(wù)流程,保證甘肅省氣象資料的集約化、標(biāo)準(zhǔn)化以及氣象資料的安全性、正確性和完整性。
如圖1 所示,云計算環(huán)境下的氣象檔案資料管理平臺分為4 個層次,由數(shù)據(jù)源、數(shù)據(jù)采集層、服務(wù)層和用戶層組成。
圖1 云計算環(huán)境下的氣象檔案資料管理平臺架構(gòu)
數(shù)據(jù)源由在線存儲在大容量存儲NAS 或SAN等設(shè)備的高空、地面、農(nóng)氣、輻射、酸雨、雷達、圖像報表、區(qū)域站資料、多普勒雷達等多種非結(jié)構(gòu)化氣象標(biāo)準(zhǔn)文件、天擎數(shù)據(jù)資源服務(wù)器、MDOS 數(shù)據(jù)庫服務(wù)器、MODI 標(biāo)識符數(shù)據(jù)庫服務(wù)器和數(shù)字化資料索引數(shù)據(jù)庫組成,為數(shù)據(jù)采集層提供歷史及實時氣象資料。
數(shù)據(jù)采集層由實時數(shù)據(jù)采集軟件、資料管理軟件、資料服務(wù)采集軟件、SaaS 服務(wù)軟件組成。
數(shù)據(jù)采集軟件自動定時采集區(qū)域站、雷達、沙塵暴、閃電定位、土壤水分、大氣成分等實時數(shù)據(jù)。
資料管理軟件接收高空、地面、農(nóng)氣、輻射、酸雨等人工審核后的歷史數(shù)據(jù),并建立索引數(shù)據(jù)庫。
資料服務(wù)采集軟件接收來自服務(wù)層的數(shù)據(jù)請求,根據(jù)被服務(wù)用戶的需求,采集相應(yīng)的結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù)形成服務(wù)文件傳遞到服務(wù)層。
SaaS 服務(wù)軟件是部署在其服務(wù)器上以云服務(wù)的方式直接運行的氣象業(yè)務(wù)軟件。
管理和服務(wù)層由WEB 服務(wù)器、SaaS 服務(wù)器、Ftp 文件服務(wù)器、郵件服務(wù)器組成。
管理用戶通過WEB 服務(wù)器上傳和管理審核后的資料。當(dāng)被服務(wù)用戶的氣象資料請求審批通過以后,由WEB 服務(wù)器或SaaS 服務(wù)器向數(shù)據(jù)采集層發(fā)出數(shù)據(jù)請求消息,并在數(shù)據(jù)生成層生成用戶所需數(shù)據(jù)之后,按照用戶的需求由WEB 服務(wù)器或SaaS 服務(wù)器將數(shù)據(jù)發(fā)送給FTP 文件服務(wù)器或郵件服務(wù)器,完成整個服務(wù)流程。
用戶層由管理用戶、資料服務(wù)用戶和SaaS 用戶組成,該層通過互聯(lián)網(wǎng)發(fā)布氣象資料云服務(wù)安全接口。管理用戶通過WEB 頁面管理和上傳資料。資料服務(wù)用戶在線定制個性化的氣象資料,發(fā)出氣象資料服務(wù)申請,由管理用戶進行在線審批,如果資料請求符合規(guī)定,管理用戶審批通過,氣象資料服務(wù)任務(wù)交由服務(wù)層處理。SaaS 用戶通過WEB 頁面登錄遠程桌面訪問相關(guān)業(yè)務(wù)軟件,提取相關(guān)氣象資料。
本管理平臺由專門的數(shù)據(jù)采集軟件自動定時采集存儲實時數(shù)據(jù),根據(jù)氣象資料的類別、生成時間、文件命名格式等資料特征制定數(shù)據(jù)采集規(guī)則表,數(shù)據(jù)采集軟件根據(jù)數(shù)據(jù)采集規(guī)則表定時從實時氣象數(shù)據(jù)資料庫中提取相應(yīng)數(shù)據(jù)文件,建立相關(guān)索引,并保存到云存儲設(shè)備中。
經(jīng)過人工審核的常規(guī)氣象資料,由氣象資料審核人員登錄WEB 網(wǎng)頁,在線上傳本人審核后的氣象資料。資料上傳后生成資料索引記錄,并記錄相關(guān)日志。同時,氣象資料審核人員也可用根據(jù)相應(yīng)權(quán)限下載相關(guān)資料。
一方面,平臺設(shè)計了自動完整性檢查功能,定時啟動完整性檢查流程,并生成相關(guān)信息推送給管理員,由管理員審核資料完整性檢查軟件推送的資料完整性信息,通過管理平臺對缺失的文件進行補錄,同時生成資料索引記錄,并形成相關(guān)記錄日志。另一方面,管理員可以通過人工方式手動運行資料完整性檢查軟件,檢查數(shù)據(jù)文件的完整性。
文件的管理功能包括為數(shù)字化文件自動建立文件索引、刪除和移動、資料檢索和查找、創(chuàng)建目錄、記錄操作日志等功能。資料上傳后,服務(wù)器應(yīng)用程序會自動根據(jù)上傳文件的類型和文件名自動匹配文件名的格式,自動提取出資料類型、觀測日期、觀測時間,記錄上傳時間等索引信息。資料審核人員和資料管理人員按照自己的權(quán)限管理資料,可以刪除、移動資料文件,刪除移動的同時系統(tǒng)會自動記錄日志,修改檢索信息。管理人員也可以按照資料的種類、觀測時間等信息檢索需要的資料,并可以按照自己的權(quán)限下載到本地。操作人員可以根據(jù)需求,通過WEB 服務(wù)器在云存儲上新建立目錄。操作人員對資料的上傳、刪除、移動、修改都會在操作日志表中留有記錄。
平臺用戶的角色分為管理員、資料審核員、資料服務(wù)審批員、資料服務(wù)用戶四大類。每一個平臺用戶都可以同時擁有一個或多個角色,每一個角色對應(yīng)了平臺上一個或多個應(yīng)用模塊的功能,系統(tǒng)管理員給用戶授予不同的角色,用戶就可以使用相應(yīng)角色擁有的平臺功能模塊。
(1)審核人員。審核業(yè)務(wù)為高空、地面、農(nóng)氣、輻射、酸雨等常規(guī)資料的審核工作。管理平臺按照審核人員的業(yè)務(wù)賦予審核人員不同的存取權(quán)限,審核人員登錄之后,可以提交、下載和管理自身業(yè)務(wù)范圍的資料,之后平臺會執(zhí)行一系列的自動化操作,包括將資料保存到云存儲平臺,將提交的資料進行索引,將管理后的資料索引進行修改,在日志表中記錄操作過程,向資料管理員發(fā)送消息,等待管理員的確定。
(2)管理人員。管理人員與審核人員一樣,具有提交、下載和管理維護資料的權(quán)限,做出相應(yīng)操作之后,也會執(zhí)行一系列自動化的操作,保存資料到云存儲平臺,對資料進行索引,修改資料對應(yīng)的索引,記錄日志等。不同的是,管理人員登錄系統(tǒng)后,平臺會發(fā)送給管理員資料變化的相關(guān)消息,由管理人員作出相應(yīng)的確認操作。
(3)資料服務(wù)用戶。資料服務(wù)用戶是被服務(wù)用戶,用戶通過管理平臺提交資料申請,然后平臺會創(chuàng)建一個資料審批服務(wù)流程,平臺將用戶提交的資料申請通過消息發(fā)送給資料服務(wù)審批員,待審批人員確認后,由資料管理人員提供服務(wù)。
(4)資料服務(wù)審批員。資料服務(wù)審批員是資料業(yè)務(wù)主管單位,審批來自資料服務(wù)服務(wù)用戶發(fā)來的資料申請,并將審批結(jié)果發(fā)送給資料管理人員處理。
如圖2 所示,操作人員登錄后,管理平臺會按照操作人員的角色和業(yè)務(wù)權(quán)限為其劃分不同的資源模塊,之后操作人員會按照自己的崗位職責(zé)及平臺賦予其個人的角色進行數(shù)據(jù)提交、數(shù)據(jù)維護、資料管理、資料審查等操作。
圖2 平臺的工作流程
審核人員登錄之后,提交、下載和管理自身業(yè)務(wù)范圍的資料,隨后平臺會執(zhí)行一系列的自動化操作,將資料保存到云存儲平臺,對提交的資料進行索引,修改管理后的資料索引,在日志表中記錄操作過程,向資料管理員發(fā)送消息,等待管理員的確定,管理人員收到平臺發(fā)送給管理員資料變化的相關(guān)消息后,由管理人員作出相應(yīng)的確認操作。平臺每天會喚醒一個數(shù)據(jù)檢查進程,按照各類業(yè)務(wù)提交資料的時間,檢查數(shù)據(jù)是否完整,如果數(shù)據(jù)超過設(shè)定的期限沒有提交到平臺,平臺會給管理員和相應(yīng)業(yè)務(wù)的審核員發(fā)送一個提醒提交資料的消息。數(shù)據(jù)檢查進程也可檢查數(shù)據(jù)源是否正常,并對不正常的數(shù)據(jù)源進行故障排除。資料的服務(wù)流程是被服務(wù)用戶通過甘肅省氣象數(shù)據(jù)標(biāo)識符系統(tǒng)(MOID)提交資料服務(wù)申請,然后MOID 標(biāo)識符系統(tǒng)會創(chuàng)建一個資料審批服務(wù)流程,將用戶提交的資料申請通過MOID系統(tǒng)發(fā)送給資料服務(wù)審批員,待審批人員審批確認后,由資料管理人員提供數(shù)據(jù)服務(wù)。
氣象資料管理平臺在ASP.net 環(huán)境下開發(fā),平臺的主體程序部署在WEB 服務(wù)器上,數(shù)據(jù)的索引和檢索結(jié)構(gòu)部署在數(shù)據(jù)庫服務(wù)器上,在線收集和匯交的歷史數(shù)據(jù)存放在NAS 服務(wù)器上。
平臺的主體程序包括索引模塊、數(shù)據(jù)管理模塊、用戶權(quán)限管理模塊、資料收集模塊、日志管理模塊,各個模塊相互獨立,通過數(shù)據(jù)庫服務(wù)器進行相關(guān)的數(shù)據(jù)和消息傳遞,以此來控制整個數(shù)據(jù)的操作流程。
文件的索引信息包括:資料類型、文件名、修改日期、備份日期、備份方式、備份次數(shù)、文件存儲路徑、文件大小、觀測時間、上傳時間等。
索引模塊包括對歷史數(shù)據(jù)文件建立索引和對在線提交的數(shù)據(jù)建立索引兩個部分。歷史數(shù)據(jù)由管理員或者審核員直接批量上傳到NAS 文件服務(wù)器上,然后通過WEB 服務(wù)器上管理平臺的文件列表功能將無文件索引的文件進行在線網(wǎng)頁列表,通過網(wǎng)頁界面,操作人員調(diào)用建立索引的軟件模塊為歷史文件建立索引。由管理員和審核員在線提交的數(shù)據(jù)文件通過網(wǎng)頁界面在線提交本地數(shù)據(jù)文件,在線上傳后,平臺為提交的數(shù)據(jù)建立索引,并記錄上傳日志。
索引模塊能夠根據(jù)上傳數(shù)據(jù)的文件名自動匹配氣象資料的類型、觀測日期、觀測時間等信息,并將這些信息自動記錄到文件索引數(shù)據(jù)庫中。其工作原理是在索引數(shù)據(jù)庫服務(wù)器中定義了氣象文件命名規(guī)范信息表,表中記錄了各類氣象數(shù)據(jù)文件名的資料類型標(biāo)志信息、標(biāo)志信息的位置和長度、觀測時間的位置和長度、時制等信息,當(dāng)要為文件建立索引時,索引模塊提取出上傳到管理平臺的文件的文件名,搜索氣象文件命名規(guī)范信息表,查找該文件是何種類型的氣象資料,確定了資料的類型后,根據(jù)氣象文件命名規(guī)范信息表中記錄的該類資料的文件名中觀測時間的位置和長度在文件名中提取觀測時間信息。
數(shù)據(jù)的管理模塊是對已經(jīng)保存到管理平臺的數(shù)據(jù)文件進行日常維護,包括數(shù)據(jù)文件維護和文件索引維護兩個方面。
首先,數(shù)據(jù)管理模塊可以對數(shù)據(jù)文件及其索引進行一致性檢查,查找出有文件索引但丟失數(shù)據(jù)文件的索引記錄,也能查找到有數(shù)據(jù)文件但沒有索引記錄的文件,管理平臺檢索到數(shù)據(jù)文件和索引的不一致后,可以刪除多余文件的索引,也可以為沒有建立索引的文件建立新的索引。
其次,數(shù)據(jù)管理模塊可以檢查管理平臺上數(shù)據(jù)的完整性。按照氣象文件命名規(guī)范信息表中定義的資料類型及該資料的周期,以時間順序在索引表上依次查找數(shù)據(jù)文件是否齊全,并輸出缺失的數(shù)據(jù)文件列表,提醒管理員及時收集和補錄。
另外,數(shù)據(jù)管理模塊也實現(xiàn)了數(shù)據(jù)文件的網(wǎng)頁在線管理功能,如生成數(shù)據(jù)文件的列表,刪除、復(fù)制及上傳文件等功能。
用戶管理權(quán)限模塊以用戶角色列表和用戶表作為數(shù)據(jù)支撐,對平臺上的用戶及其操作權(quán)限進行管理。其中,用戶角色列表中定義了各種角色及其在平臺上所擁有的權(quán)限,用戶表中定義了用戶是哪一類角色。用戶登錄時,用戶權(quán)限模塊先查找該用戶是哪一個角色,然后根據(jù)這個角色賦予該用戶相應(yīng)的權(quán)限來訪問管理平臺。
數(shù)據(jù)采集模塊的設(shè)計是基于數(shù)據(jù)文件周期列表的檢索與拷貝,該列表中定義了數(shù)據(jù)文件的類型、數(shù)據(jù)文件的生產(chǎn)周期、數(shù)據(jù)文件的原始目錄、數(shù)據(jù)的目標(biāo)存儲目錄、文件名的格式等信息。數(shù)據(jù)采集模塊根據(jù)數(shù)據(jù)文件周期列表定時對源數(shù)據(jù)目錄進行檢索,查找沒有收集到的文件,并將這些文件拷貝到文件周期列表中定義的該類數(shù)據(jù)文件的目標(biāo)目錄中,同時記錄被采集數(shù)據(jù)文件的相關(guān)日志信息和索引信息。
日志管理模塊記錄了用戶對數(shù)據(jù)文件的操作記錄,在平臺的數(shù)據(jù)庫中建立了操作日志信息表,信息表中定義了文件的名稱、文件所在目錄、用戶信息、用戶操作類型、操作時間等信息,當(dāng)用戶對文件進行操作時,日志管理模塊就對當(dāng)前用戶進行的操作記錄到操作日志中。管理員可以對所有用戶的操作記錄進行檢索,監(jiān)督用戶的操作數(shù)據(jù)記錄是否規(guī)范。
本平臺的建設(shè),為提高氣象檔案數(shù)字化服務(wù)能力,提升氣象數(shù)據(jù)檔案的利用率,促進氣象檔案事業(yè)的發(fā)展,帶動氣象數(shù)字檔案館建設(shè)打下了堅實基礎(chǔ)。但是云計算環(huán)境的發(fā)展是一個動態(tài)創(chuàng)新的過程,隨著中國氣象局天擎系統(tǒng)在全國各省的部署和應(yīng)用,為氣象大數(shù)據(jù)業(yè)務(wù)創(chuàng)造出了新的云計算環(huán)境,將來必須結(jié)合天擎系統(tǒng)改造完善氣象資料業(yè)務(wù)的管理和服務(wù)模式,進一步提高氣象資料管理和服務(wù)的質(zhì)量。