基于NetCDF的數(shù)據(jù)交換平臺研究
摘 要: 針對異構(gòu)海洋觀測數(shù)據(jù)交互困難的問題,提出基于NetCDF的海洋觀測數(shù)據(jù)交換格式,定義海洋觀測數(shù)據(jù)交互規(guī)范,實(shí)現(xiàn)海洋觀測數(shù)據(jù)靈活裝載和隨機(jī)訪問?;诖?,設(shè)計海洋觀測數(shù)據(jù)交換平臺框架,通過分層架構(gòu)模式實(shí)現(xiàn)海洋觀測數(shù)據(jù)用戶“一站式”訪問。最后,開發(fā)原型系統(tǒng)加以驗證。
關(guān)鍵詞: 觀測數(shù)據(jù); NetCDF; 數(shù)據(jù)交換
隨著科學(xué)技術(shù)進(jìn)步,人類探測海洋的能力日益提升,近年來,國家越來越重視海洋領(lǐng)域的開發(fā)建設(shè),實(shí)施了大批海洋工程項目,提高了利用海洋的能力。但是,在利用海洋觀測數(shù)據(jù)的實(shí)踐中,數(shù)據(jù)交互困難越顯突出,主要體現(xiàn)在如下方面:
(1)數(shù)據(jù)格式復(fù)雜。當(dāng)前海洋觀測數(shù)據(jù)常用的數(shù)據(jù)格式包括電報碼、XML格式文件、文本、數(shù)據(jù)庫等。不同的數(shù)據(jù)格式要求信息系統(tǒng)提供不同的訪問方式,增加了海洋數(shù)據(jù)融合的困難。
(2)海洋應(yīng)用與海洋科學(xué)數(shù)據(jù)存在差異。當(dāng)前數(shù)字海洋所規(guī)范的數(shù)據(jù)格式多為文本或者數(shù)據(jù)庫文件,但是在預(yù)報計算、分析等海洋科學(xué)領(lǐng)域所使用的大多為專業(yè)格式數(shù)據(jù),如NetCDF、Grid等,這種格式的不統(tǒng)一給數(shù)據(jù)交互帶來困難。
(3)數(shù)據(jù)分布廣泛,我國海域廣闊,沿海遍布著大大小小多個海洋機(jī)構(gòu),不同機(jī)構(gòu)掌握一定的海洋觀測數(shù)據(jù),缺乏統(tǒng)一的安排和協(xié)調(diào),也造成海洋觀測數(shù)據(jù)共享困難。
本文針對我國海洋觀測數(shù)據(jù)交互存在的實(shí)際困難,提出一套解決方案,在構(gòu)建基于NetCDF通用觀測數(shù)據(jù)交換格式的基礎(chǔ)上,設(shè)計海洋觀測數(shù)據(jù)交換平臺,并在天津海洋觀測數(shù)據(jù)展示平臺項目中進(jìn)行驗證。
1 相關(guān)研究
近年來,針對海洋領(lǐng)域數(shù)據(jù)交換和集成,有許多研究機(jī)構(gòu)做了大量工作,取得了豐富的研究成果。美國海軍和國家海洋大氣局實(shí)施開發(fā)了IOOS[1-2](Integrated Ocean Observing System)項目,目的是統(tǒng)一分散在各部門的海洋觀測數(shù)據(jù),提供共享信息,IOOS框架采用分層設(shè)計,并以用戶需求為驅(qū)動,通過各層間的數(shù)據(jù)流整合,達(dá)到觀測數(shù)據(jù)集成的目的。IOOS的分段子系統(tǒng)DMAC[3](Data Management and Communications)則主要負(fù)責(zé)海洋數(shù)據(jù)的傳輸和通訊,DMAC定義了一套共同遵守的、通用的標(biāo)準(zhǔn),實(shí)現(xiàn)海洋觀測數(shù)據(jù)互操作框架。海洋交互觀測網(wǎng)ORION[4](Ocean Research Interactive Observatory Networks)項目為科學(xué)家、教育者和普通公眾對海洋的交互、連續(xù)訪問提供了一個平臺。美國NSF、SURA、ONR和NOAA-CSC等組織資助了海洋元數(shù)據(jù)互操作項目MMI [5](Marine Metadata Interoperation)提供了一個開放的資源共享平臺,便于組織和個人將與海洋相關(guān)的信息資源注冊到MMI中,然后進(jìn)行共享。由歐盟資助的MarineXML項目[6]則用于驗證XML技術(shù)在提高海洋信息部門之間,特別是海洋觀測部門之間數(shù)據(jù)互操作性中所起的作用。該項目開發(fā)并改進(jìn)海洋標(biāo)記語言MML。
上述項目從不同角度解決海洋觀測數(shù)據(jù)的交換與共享,但是上述項目沒有搭建起海洋應(yīng)用與海洋科研之間的信息共享橋梁,此外,上述項目沒有為用戶提供一個屏蔽數(shù)據(jù)共享細(xì)節(jié)的界面,本文設(shè)計的海洋觀測數(shù)據(jù)交換平臺則更多地從用戶易用的角度給出協(xié)同應(yīng)用與科研的海洋觀測數(shù)據(jù)信息共享解決方案。
2 基于NetCDF的交換數(shù)據(jù)格式定義
NetCDF(Network Common Data Form)[7-8]網(wǎng)絡(luò)通用數(shù)據(jù)格式由UCAR在其Unidata項目中提出。NetCDF利用矩陣方式存儲數(shù)據(jù),具有自描述性、結(jié)構(gòu)獨(dú)立性、隨機(jī)訪問性、可追加性、可共享性等特點(diǎn),廣泛應(yīng)用于海洋觀測領(lǐng)域存儲和交換數(shù)據(jù)。根據(jù)我國海洋觀測數(shù)據(jù)交換的應(yīng)用需求,定義基于NetCDF的海洋觀測交換數(shù)據(jù)格式,如圖1所示。
基于NetCDF的海洋觀測交換數(shù)據(jù)定義領(lǐng)域內(nèi)觀測數(shù)據(jù)交換的一般標(biāo)準(zhǔn),通過交換數(shù)據(jù),使得具有普遍異構(gòu)性的海洋觀測數(shù)據(jù)以一種通用標(biāo)準(zhǔn)樣式被各類web服務(wù)所調(diào)用,解決數(shù)據(jù)交互困難的問題。海洋觀測交換數(shù)據(jù)所定義的格式包括六部分內(nèi)容。
(1)ObservationData(觀測數(shù)據(jù)):建立海洋觀測交換數(shù)據(jù)標(biāo)識,用于標(biāo)識一個交換數(shù)據(jù)文件,其中,id為數(shù)據(jù)標(biāo)簽,name為數(shù)據(jù)解釋,ObservationData建立的交換數(shù)據(jù)文件包含一個維度,多個變量;
(2)Dimension(維度):解釋海洋觀測交換數(shù)據(jù)形式,一個海洋觀測交換數(shù)據(jù)文件包含唯一一組維度定義,Dimension給出交換數(shù)據(jù)各數(shù)據(jù)項之間的排列,本文給出維度的固定格式,包括:數(shù)據(jù)層次說明(level)、緯度(latitude)、經(jīng)度(longitude)和時間(time);
(3)Variables(變量):對于維度中各參數(shù)的說明,包括參數(shù)名、對應(yīng)參數(shù)類型以及參數(shù)的取值;
(4)DataType(數(shù)據(jù)類型):通用數(shù)據(jù)類型說明;
(5)Attributes(屬性):變量所包含的屬性說明,其組成為屬性名(name)、屬性類型(type)、屬性值(value),屬性是海洋交換數(shù)據(jù)的元數(shù)據(jù)說明,解釋包含作者、生成時間、數(shù)據(jù)來源等信息;
(6)Data(數(shù)據(jù)):海洋觀測交換數(shù)據(jù)內(nèi)容,所定義的數(shù)據(jù)內(nèi)涵與變量中聲明的數(shù)據(jù)標(biāo)簽一致。
圖2利用實(shí)例說明海洋觀測交換數(shù)據(jù)形式。





