李國慶 黃震春
2 (清華大學(xué)計算機科學(xué)與技術(shù)系 北京 100084) (ligq@radi.ac.cn)
遙感大數(shù)據(jù)的基礎(chǔ)設(shè)施:集成、管理與按需服務(wù)
李國慶1黃震春2
2(清華大學(xué)計算機科學(xué)與技術(shù)系 北京 100084) (ligq@radi.ac.cn)
隨著遙感技術(shù)的不斷進步,遙感數(shù)據(jù)的數(shù)據(jù)量越來越大,種類越來越多,分布越來越分散,遙感應(yīng)用的復(fù)雜程度和個性化程度也不斷提高,遙感正在走向大數(shù)據(jù)時代.而目前遙感數(shù)據(jù)基礎(chǔ)設(shè)施在容量、可擴展性、易用性和性能等方面都難以滿足遙感應(yīng)用的需求,成為了遙感科學(xué)與工程從獲取到最終產(chǎn)品這個流程中的瓶頸.為此,首先從遙感數(shù)據(jù)的本質(zhì)出發(fā),討論了遙感數(shù)據(jù)基礎(chǔ)設(shè)施應(yīng)當(dāng)具備的分布、異構(gòu)、時空連續(xù)和按需數(shù)據(jù)處理等特性,并依據(jù)遙感數(shù)據(jù)基礎(chǔ)設(shè)施的基本服務(wù)單元、分布性、時空連續(xù)性和按需處理支持能力將遙感數(shù)據(jù)基礎(chǔ)設(shè)施分成6類.其次,針對這6類遙感數(shù)據(jù)基礎(chǔ)設(shè)施展現(xiàn)出的特性,設(shè)計了實現(xiàn)這些基礎(chǔ)設(shè)施可以采用的體系結(jié)構(gòu),并指出了其中實現(xiàn)的技術(shù)難點和解決思路.最后,就遙感數(shù)據(jù)基礎(chǔ)設(shè)施設(shè)計和實現(xiàn)過程中涉及到的數(shù)據(jù)收集與整合、數(shù)據(jù)組織與管理、數(shù)據(jù)服務(wù)接口、按需數(shù)據(jù)處理等方面的技術(shù)方案進行了深入的討論.在這些技術(shù)的支持下,遙感數(shù)據(jù)基礎(chǔ)設(shè)施能夠做到分布化、智能化和平臺化,支持遙感科學(xué)的合作研究和工程上的協(xié)同應(yīng)用.
數(shù)據(jù)基礎(chǔ)設(shè)施;遙感大數(shù)據(jù);按需處理;數(shù)據(jù)集成;數(shù)據(jù)管理
隨著遙感技術(shù)的不斷發(fā)展進步,新的遙感衛(wèi)星不斷發(fā)射,新的傳感器不斷投入使用,遙感數(shù)據(jù)的時空分辨率越來越高,遙感數(shù)據(jù)的種類和數(shù)量也在不斷增加.例如,2015年歐空局(Europe Space Agency, ESA)存檔的遙感數(shù)據(jù)量就已經(jīng)達到了1.5PB,而且這個數(shù)字還在不斷增加.與此同時,計算能力的不斷提升使得全球范圍的復(fù)雜模擬已經(jīng)成為可能.這種數(shù)據(jù)和計算能力上的雙重進步為遙感科學(xué)的發(fā)展提供了更好的條件,也為遙感科學(xué)基于“第四范式”進行基于大數(shù)據(jù)分析的研究提供了可能[1].
大數(shù)據(jù),指無法在一定時間范圍內(nèi)用常規(guī)軟件工具進行獲取、管理和分析處理的數(shù)據(jù)集合,其主要特點可以用5V來描述,包括Volume(數(shù)據(jù)量巨大)、Velocity(高速積累)、Variety(種類多樣)、Value(價值密度低)、Veracity(數(shù)據(jù)質(zhì)量難以保證)[2].這些特性大多數(shù)能夠在遙感數(shù)據(jù)中得到體現(xiàn)[3].首先,在數(shù)據(jù)量巨大之外,各種歷史和技術(shù)原因?qū)е逻b感數(shù)據(jù)還具有非常明顯的異構(gòu)特性:不同傳感器、不同衛(wèi)星平臺、不同數(shù)據(jù)格式、不同存檔結(jié)構(gòu)等.同時,遙感數(shù)據(jù)經(jīng)常需要被高速處理,尤其是那些諸如災(zāi)害預(yù)警和響應(yīng)、全球制圖、高分辨率實時反演這樣的實時或準(zhǔn)實時遙感應(yīng)用.所以,遙感數(shù)據(jù)被認(rèn)為是一種比較典型的大數(shù)據(jù),遙感數(shù)據(jù)分析應(yīng)用也被視為一種大數(shù)據(jù)應(yīng)用,解決遙感數(shù)據(jù)的收集、整理、管理、存儲、分析、處理、分發(fā)等過程中所遇到的一系列技術(shù)難題,為地學(xué)研究工作者提供遙感大數(shù)據(jù)的管理與按需處理服務(wù),對于基于遙感數(shù)據(jù)的地學(xué)研究具有非常重要的意義.
隨著遙感數(shù)據(jù)在種類和數(shù)量上的不斷增加,以及遙感應(yīng)用場景的不斷復(fù)雜化和個性化,遙感數(shù)據(jù)基礎(chǔ)設(shè)施在存儲容量、訪問時間、可擴展性、數(shù)據(jù)安全性、數(shù)據(jù)服務(wù)質(zhì)量等方面面臨著巨大的挑戰(zhàn).一方面,在傳統(tǒng)的政府主導(dǎo)的公益應(yīng)用中,數(shù)據(jù)時空分辨率的不斷提高帶來了數(shù)據(jù)量和計算量的急劇增加,面向國家、區(qū)域和國際的環(huán)境變化、社會、經(jīng)濟等重大問題以及面向災(zāi)害和災(zāi)難等嚴(yán)重突發(fā)事件的各種遙感數(shù)據(jù)應(yīng)用不斷給遙感數(shù)據(jù)存儲服務(wù)系統(tǒng)提出更高的要求.衛(wèi)星、無人機、地面?zhèn)鞲衅鞯挠^測能力也已經(jīng)達到PB量級,基本具備了逐日的米級觀測的能力.在這種情況下,以集中式離線和準(zhǔn)在線方式進行遙感數(shù)據(jù)存儲與服務(wù)的傳統(tǒng)數(shù)據(jù)基礎(chǔ)設(shè)施已經(jīng)遠(yuǎn)遠(yuǎn)無法滿足當(dāng)前與未來遙感數(shù)據(jù)存儲、共享與應(yīng)用的高速、海量、安全、穩(wěn)定和合理成本等要求.數(shù)據(jù)基礎(chǔ)設(shè)施已經(jīng)成為遙感數(shù)據(jù)應(yīng)用這個木桶中的低木板.
另一方面,在地理信息系統(tǒng)和定位導(dǎo)航等技術(shù)逐漸商業(yè)化公眾化之后,遙感數(shù)據(jù)觀測與服務(wù)也正在從政府主導(dǎo)的公益應(yīng)用向公眾與商業(yè)機構(gòu)主導(dǎo)的商業(yè)與公眾應(yīng)用擴展.商業(yè)與公眾應(yīng)用逐漸成為遙感數(shù)據(jù)觀測與服務(wù)的主要用戶.以Google為例,2004年收購Keyhole公司并推出了谷歌地球(Google Earth),2008年收購了ImageAmerica并開始啟動專用衛(wèi)星系列的發(fā)射,2014年收購了微小衛(wèi)星云廠商SkyBox,形成了自己強大的全球亞米級高分辨觀測能力.除此之外,一些具有強烈個性化色彩的遙感數(shù)據(jù)觀測應(yīng)用也不斷出現(xiàn),例如,期貨公司通過沙特儲油罐連續(xù)圖像的反演來估算沙特的石油產(chǎn)量進而估計歐佩克的產(chǎn)量,從而為期貨貿(mào)易提供指導(dǎo),通過衛(wèi)星影像跟蹤進出富士康的貨車數(shù)量來估算Apple產(chǎn)品產(chǎn)量和半導(dǎo)體市場價格等.
以Google為代表的業(yè)界巨頭們的一系列動作代表了公眾和商業(yè)機構(gòu)拓展遙感數(shù)據(jù)應(yīng)用市場的決心,同時也預(yù)示著遙感數(shù)據(jù)基礎(chǔ)設(shè)施將必須為適應(yīng)這些商業(yè)與公眾應(yīng)用的需求而做出相應(yīng)的變化.除了和公益應(yīng)用類似的高速、海量、安全、穩(wěn)定和合理成本等要求之外,商業(yè)與公眾應(yīng)用的多樣化特性也給遙感數(shù)據(jù)基礎(chǔ)設(shè)施提出了具有強烈個性化色彩的多樣化的遙感數(shù)據(jù)存儲服務(wù)需求,傳統(tǒng)的以收集數(shù)據(jù)為主要目標(biāo)的、離線低速和手段單一的數(shù)據(jù)基礎(chǔ)設(shè)施遠(yuǎn)遠(yuǎn)無法滿足公眾的遙感數(shù)據(jù)處理需求對數(shù)據(jù)存儲和管理的更高更個性化的要求.地球觀測的公眾化不僅在工程層面對于地球觀測的傳感器、平臺、通訊、地面單元和應(yīng)用模式提出了巨大的挑戰(zhàn),也在科學(xué)層面對地球觀測的基本理論和模型提出了新目標(biāo),進而在管理層面對于地球觀測的政策、管理和可持續(xù)發(fā)展模式都提出了新的問題.遙感數(shù)據(jù)基礎(chǔ)設(shè)施必須針對這些挑戰(zhàn)從遙感數(shù)據(jù)的認(rèn)識、組織、管理、存儲、分發(fā)、處理等諸多方面予以回應(yīng).
針對這些挑戰(zhàn),學(xué)術(shù)界和業(yè)界已經(jīng)在數(shù)據(jù)的組織、管理與服務(wù)等方面做出了一些努力,開放地理空間協(xié)會(Open Geospatial Consortium, OGC)在數(shù)據(jù)管理與服務(wù)方面的系列標(biāo)準(zhǔn)就是這些努力中影響比較大的一個.Web Coverage Service,Web Feature Service,Web Map Service,Catalogue Service,Web Map Tile Service,OpenSearch Geo等組成了通過HTTP實現(xiàn)數(shù)據(jù)共享和服務(wù)的一組標(biāo)準(zhǔn)化共享協(xié)議,用以支持不同組織不同類型的空間觀測數(shù)據(jù)的有序共享和發(fā)布[4].世界上最主要的對地觀測政府間合作組織地球預(yù)測組織(Group on Earth Observations, GEO)在其2005—2015十年規(guī)劃中所建立的Global Earth Observation System of Systems (GEOSS)試圖通過在多個機構(gòu)組成的聯(lián)邦內(nèi)部制定或采用標(biāo)準(zhǔn)的協(xié)議進行觀測數(shù)據(jù)與模型數(shù)據(jù)的共享服務(wù)與訪問,并通過Clearinghouse、Registries、處理服務(wù)、工作流等實現(xiàn)數(shù)據(jù)之間的有機協(xié)調(diào),將聯(lián)邦內(nèi)部各機構(gòu)所提供的數(shù)據(jù)組織到一起,形成全局?jǐn)?shù)據(jù)視圖,最終達到協(xié)同解決科學(xué)與現(xiàn)實問題的目標(biāo)[5].目前,GEOSS的數(shù)據(jù)基礎(chǔ)設(shè)施已經(jīng)支持了災(zāi)害、全球變化、水、農(nóng)業(yè)、能源等9個領(lǐng)域的應(yīng)用.
除此之外,在不斷發(fā)展的信息科學(xué)技術(shù)的推動下,網(wǎng)格、云等各種現(xiàn)代分布式計算的研究成果也不斷被應(yīng)用到遙感數(shù)據(jù)基礎(chǔ)設(shè)施之中.例如,Cossu等人在ESA的網(wǎng)格項目支持下建立的用于高速遙感數(shù)據(jù)共享與處理的機遇網(wǎng)格的遙感數(shù)據(jù)服務(wù)環(huán)境G-POD[6],GEO的基于網(wǎng)格的數(shù)據(jù)共享的探索與實踐[7],Li等人在空間信息網(wǎng)格(SIG)的支持下建立的跨組織共享和分發(fā)空間數(shù)據(jù)的新型數(shù)據(jù)服務(wù)系統(tǒng)[8],Huang在網(wǎng)格和數(shù)據(jù)密集型計算技術(shù)支持下基于按需數(shù)據(jù)服務(wù)和元數(shù)據(jù)適配器構(gòu)建全局統(tǒng)一視圖的新型遙感數(shù)據(jù)基礎(chǔ)設(shè)施的探索[9].隨著云計算技術(shù)的不斷發(fā)展,云存儲和MapReduce計算模型等的成熟,雖然云計算在性能和安全性等方面還存在一些不足[10],但其優(yōu)秀的并行處理能力和可管理特性使得云計算技術(shù)在遙感數(shù)據(jù)管理方面得到越來越多的應(yīng)用.其中最有代表性的事件當(dāng)屬NASA 將其部分?jǐn)?shù)據(jù)服務(wù)轉(zhuǎn)移到亞馬遜的AWS 平臺之上,并結(jié)合亞馬遜提供的計算資源和工作流管理工具建立了NASA NEX 平臺[11],用來提供數(shù)據(jù)服務(wù)、高性能計算服務(wù)和科學(xué)工作流支持.
但是,目前的遙感數(shù)據(jù)基礎(chǔ)設(shè)施研究大多數(shù)還處于將已有的遙感數(shù)據(jù)通過標(biāo)準(zhǔn)的接口進行共享和分發(fā)的階段,其解決的問題是如何將已有的已經(jīng)按照傳統(tǒng)的離線、低速的管理模式進行存檔和管理的數(shù)據(jù)以標(biāo)準(zhǔn)化的方式進行共享,并沒有涉及到提高數(shù)據(jù)存儲能力、降低數(shù)據(jù)訪問時間、提高數(shù)據(jù)服務(wù)質(zhì)量等遙感數(shù)據(jù)基礎(chǔ)設(shè)施迫切需要解決的技術(shù)問題,對于個性化、高維度、時空連續(xù)的數(shù)據(jù)服務(wù)需求所需要的對遙感數(shù)據(jù)在組織理論和管理方法上的變革更是沒有涉及.
本文首先從遙感數(shù)據(jù)的本質(zhì)出發(fā),討論了地學(xué)科學(xué)研究對遙感數(shù)據(jù)集成與服務(wù)的需求,并根據(jù)所提供服務(wù)能力的不同對遙感數(shù)據(jù)基礎(chǔ)設(shè)施予以分類;然后,針對各種不同類型的遙感數(shù)據(jù)基礎(chǔ)設(shè)施,本文給出了可行的體系結(jié)構(gòu),并針對服務(wù)實現(xiàn)過程中會遇到的一系列問題給出了解決方案;最后,本文還對遙感數(shù)據(jù)基礎(chǔ)設(shè)施的未來發(fā)展提出了展望.
Fig. 1 Classical storage and management of remotesensing data圖1 傳統(tǒng)的遙感數(shù)據(jù)存儲與管理方法
在傳統(tǒng)的遙感數(shù)據(jù)基礎(chǔ)設(shè)施(或者稱為遙感數(shù)據(jù)服務(wù))中,數(shù)據(jù)被認(rèn)為是一些互相孤立的實體,這些實體使用元數(shù)據(jù)說明其空間位置、描述時間、光譜、波段、專題等特性,并以一定的格式(一般以文件的形式)存儲、分發(fā)和處理,如圖1所示.在使用時,應(yīng)用通常通過某種接口對存儲在空間機構(gòu)的元數(shù)據(jù)進行查詢,在已有的數(shù)據(jù)中找到合適的數(shù)據(jù)集并篩選出需要的數(shù)據(jù)實體,再經(jīng)過一個數(shù)據(jù)準(zhǔn)備階段之后,將按照一定格式打包的空間數(shù)據(jù)下載到本地,供下一步的處理和可視化工作使用.
這種遙感數(shù)據(jù)的存儲與管理體系簡單、實用、易于實現(xiàn),是當(dāng)前遙感數(shù)據(jù)存儲與管理最常見的方法.但是,這種存儲與管理體系存在著很多弱點,比如不能反映遙感數(shù)據(jù)的本質(zhì)、只能簡單地將已有的數(shù)據(jù)予以共享而無法實現(xiàn)數(shù)據(jù)的按需服務(wù)、從不同數(shù)據(jù)中心獲取數(shù)據(jù)可能需要使用不同的接口、數(shù)據(jù)的訪問時延比較長等.
從本質(zhì)上來講,各種遙感數(shù)據(jù)都是客觀世界的映像,反映了客觀世界中某時空區(qū)間內(nèi)的某種特性.因此,遙感數(shù)據(jù)應(yīng)當(dāng)具有用來表征空間(位置)、時間和被觀測特性的3類維度.空間包括3個維度,用來標(biāo)識數(shù)據(jù)反映的客觀世界的位置,時間有1個維度,用來說明數(shù)據(jù)反映的客觀世界的某個特定時刻(或時間區(qū)間),被觀測特性可以包括傳感器類型、波段類型、專題類型等多個可能的維度,這些特性可能具有一定的相關(guān)性,需要在分析其相關(guān)性的基礎(chǔ)上最終歸納為幾個確定的維度.
對于某個確定的時間、確定的空間位置和確定的被觀測特性,客觀世界一定有一個確定的值與之對應(yīng).例如,在2016年2月12日北京時間2:10:10(確定的時間),我的辦公室窗外(確定的位置:40°00′08.0″N,116°20′01.4″E,60m.a.s.l)的氣溫(確定的被觀測特性)是2.1℃(一個確定的值),窗前是一片落葉的樹木(地表分類這個被觀測特性為某個確定值).
在確定了空間、時間和被觀測特性3類維度之后,客觀世界就能夠被映射到由這3類維度組成的一個連續(xù)的高維數(shù)據(jù)空間之中,這個高維數(shù)據(jù)空間中的每一個點都對應(yīng)于客觀世界某位置某時間某被觀測特性的觀測值.通過在這個高維連續(xù)數(shù)據(jù)空間中的各個維度定位,我們就可以尋找到需要的對客觀世界的觀測結(jié)果.這個過程可以由一個多元函數(shù)來表示:
f(latitude,longitude,altitude,time,characteri-stics)→value.
例如,我們前面給出的例子就可以表示為:
f(40.0022,116.3336,60,1455214210000,“temperature”)→2.1.
既然遙感數(shù)據(jù)的本質(zhì)是這樣一個多元函數(shù),那么針對這個函數(shù)最常見的2個操作getValue和findArea就應(yīng)該是遙感數(shù)據(jù)服務(wù)的基本操作.其中,getValue用來根據(jù)指定的特定時間、位置和被觀測特性取得一個確定的整數(shù)、浮點數(shù)或者字符串等數(shù)據(jù)類型的觀測值.其函數(shù)原型可以描述為:
valuegetValue(pos,time,characteristics);
或者批量讀取觀測值以取得更好的服務(wù)性能:
valueArraygetValues(area,timeSpan,charac-teristicsList);
反之,從指定的空間區(qū)域中查找符合某種條件(例如地表氣溫高于零度)的子區(qū)域也是非常常用的一個操作:
areafindArea(area,condition).
不考慮服務(wù)性能,getValue和findArea兩個操作足以滿足各種遙感應(yīng)用對數(shù)據(jù)基礎(chǔ)設(shè)施的需求.在這2個操作中,getValue更加適用于柵格數(shù)據(jù),而findArea更加適用于矢量數(shù)據(jù).
總的來講,遙感數(shù)據(jù)基礎(chǔ)設(shè)施面臨著如下3種主要挑戰(zhàn):
1) 分布與異構(gòu).遙感數(shù)據(jù)通常由遍布全球的各個空間機構(gòu)所擁有和保存,這些數(shù)據(jù)在數(shù)據(jù)格式、管理方法、訪問方法和數(shù)據(jù)政策等方面體現(xiàn)出明顯的異構(gòu)性.考慮到遙感數(shù)據(jù)通常具有非常大的數(shù)據(jù)量,通過廣域網(wǎng)傳輸遙感數(shù)據(jù)將帶來非常大額時間開銷,所以將這些分布于全球不同空間機構(gòu)的異構(gòu)遙感數(shù)據(jù)組織在一起成為一個有機的整體并提供數(shù)據(jù)服務(wù)將是一件非常復(fù)雜的事情.
Fig. 2 Available data fragment in the high dimensionaldata space圖2 高維遙感數(shù)據(jù)空間中的已有數(shù)據(jù)碎片
2) 數(shù)據(jù)缺失.理想情況下,遙感數(shù)據(jù)應(yīng)當(dāng)覆蓋全球任何時間、任何地點和任何觀測特性.但是對全球任何時間、任何地點和任何觀測特性進行觀測并將得到的遙感數(shù)據(jù)存儲起來和提供服務(wù)是不現(xiàn)實的,也是沒有必要的.從數(shù)據(jù)空間來看,從各種傳感器和遙感數(shù)據(jù)分析模型得到的遙感數(shù)據(jù)實際上只是高維的遙感數(shù)據(jù)空間中的一些碎片(如圖2所示),理想的遙感數(shù)據(jù)基礎(chǔ)設(shè)施應(yīng)當(dāng)能夠通過插值或反演等數(shù)據(jù)處理的手段以這些數(shù)據(jù)碎片為基礎(chǔ)重建出整個數(shù)據(jù)空間中的所有數(shù)據(jù),從而達到彌補缺失數(shù)據(jù)的目的.
但是,這種重建也受到很多限制.首先,由于插值和反演等遙感數(shù)據(jù)處理算法的缺乏,并不是所有的缺失數(shù)據(jù)都能夠通過插值或反演等遙感數(shù)據(jù)算法得到重建.其次,由于插值和反演等遙感數(shù)據(jù)處理無論在處理模型上還是在處理精度上都存在不確定性,通過插值和反演等數(shù)據(jù)處理得到重建的缺失數(shù)據(jù)可能在精度和準(zhǔn)確程度上有著一定的不足.最后,插值和反演算法需要的巨大計算量也對遙感數(shù)據(jù)基礎(chǔ)設(shè)施提出了更高的計算能力需求.
3) 服務(wù)效率.由于遙感數(shù)據(jù)的數(shù)據(jù)量大,處理方法多樣且復(fù)雜,遙感數(shù)據(jù)基礎(chǔ)設(shè)施對于高性能、高吞吐率和低成本的要求非常迫切.同時,越來越多的全球范圍的數(shù)據(jù)共享、覆蓋全球范圍的遙感應(yīng)用以及跨越地域和組織的協(xié)同研究使得高帶寬和低時延的遙感數(shù)據(jù)傳輸也顯得非常重要.
在目前遙感數(shù)據(jù)的使用模式中,遙感數(shù)據(jù)的處理通常是在用戶所在的遙感數(shù)據(jù)處理工作站上使用用戶提供的處理程序完成的,這就需要將原始的遙感數(shù)據(jù)從數(shù)據(jù)提供者通過廣域網(wǎng)傳輸?shù)接脩舻倪b感數(shù)據(jù)處理工作站上.由于遙感數(shù)據(jù)的數(shù)據(jù)量通常比較大,通過廣域網(wǎng)絡(luò)傳輸遙感數(shù)據(jù)所需要的時間也比較長,這就帶來了一些額外的時間開銷.因此,在遙感數(shù)據(jù)提供者一端提供按需處理的能力,允許用戶將他們的數(shù)據(jù)處理模型提交到服務(wù)端運行,直接得到他們需要的處理結(jié)果,對于減少額外的數(shù)據(jù)傳輸開銷,提高工作效率有著很大的意義.
除此之外,遙感數(shù)據(jù)基礎(chǔ)設(shè)施還面臨著一系列其他挑戰(zhàn),如服務(wù)性能、可管理性和數(shù)據(jù)質(zhì)量控制等.其中,數(shù)據(jù)質(zhì)量管理對遙感數(shù)據(jù)基礎(chǔ)設(shè)施非常重要.遙感數(shù)據(jù)基礎(chǔ)設(shè)施中的數(shù)據(jù)質(zhì)量問題可以被簡化地視為服務(wù)所提供的數(shù)據(jù)與被觀測實體實際數(shù)據(jù)之間的差異,它可能來自于傳感器的誤差、數(shù)據(jù)處理過程中的人為失誤或者計算模型帶來的系統(tǒng)誤差等.用戶反饋與數(shù)據(jù)溯源是被用來解決數(shù)據(jù)質(zhì)量問題的常用手段.根據(jù)用戶對數(shù)據(jù)基礎(chǔ)設(shè)施所提供數(shù)據(jù)的主觀評價,數(shù)據(jù)基礎(chǔ)設(shè)施可以根據(jù)對原始數(shù)據(jù)和數(shù)據(jù)處理模型進行溯源,并更進一步對于存儲的數(shù)據(jù)和處理模型的可信性和可靠性進行進一步的評價.
作為一種通過虛擬化實現(xiàn)動態(tài)可伸縮的大規(guī)模計算資源、存儲、平臺、軟件的管理并通過因特網(wǎng)為用戶提供服務(wù)的技術(shù)手段[12],云計算可以被認(rèn)為是一種解決服務(wù)性能和可管理性的可行方案.同時,指令級并行、線程級并行、集群計算、分布式計算等各種高性能計算方面的技術(shù),以及高性能網(wǎng)絡(luò)傳輸方面的研究成果都能夠被用于提高遙感數(shù)據(jù)基礎(chǔ)設(shè)施的性能.
總結(jié)起來,理想的遙感數(shù)據(jù)基礎(chǔ)設(shè)施應(yīng)當(dāng)具有如下特征:1)以有語義特征(如波段、區(qū)域)的遙感數(shù)據(jù)對象而不是原始的遙感數(shù)據(jù)文件為基本服務(wù)對象;2)將分布異構(gòu)的遙感數(shù)據(jù)集成到一起并提供統(tǒng)一的服務(wù)接口;3)支持通過插值或反演等方法生成缺失的遙感數(shù)據(jù);4)實現(xiàn)按需的遙感數(shù)據(jù)處理以支持用戶上載其數(shù)據(jù)處理模型在數(shù)據(jù)端按需處理遙感數(shù)據(jù).根據(jù)遙感數(shù)據(jù)基礎(chǔ)設(shè)施的基本服務(wù)單元、分布性、時空連續(xù)性、按需處理服務(wù)能力等特性,遙感數(shù)據(jù)基礎(chǔ)設(shè)施可以被分為6類,如表1所示:
Table 1 Classes of Remote Sensing Data Infrastructures表1 遙感數(shù)據(jù)基礎(chǔ)設(shè)施的分類
由于實現(xiàn)簡單,第Ⅰ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施是目前最為常見的集中式遙感數(shù)據(jù)服務(wù).這類遙感數(shù)據(jù)服務(wù)通常只能以景或條帶為單位提供存儲在一個單一的存儲系統(tǒng)(文件系統(tǒng)或數(shù)據(jù)庫)中的遙感數(shù)據(jù),這些遙感數(shù)據(jù)被用戶以其原始的影像文件的形式下載使用.而第Ⅱ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施目前存在少量可用的實例(如“綜合定量遙感產(chǎn)品服務(wù)規(guī)范與運營系統(tǒng)”中的“分布式衛(wèi)星數(shù)據(jù)服務(wù)系統(tǒng)”).它們在第Ⅰ類的基礎(chǔ)上增加了分布性和異構(gòu)性,允許將多個地理上分布的異構(gòu)遙感數(shù)據(jù)源通過一系列的中間件整合為一個整體提供服務(wù),但其服務(wù)基本單元依舊是以景或條帶為單位的原始的影像文件.
第Ⅲ~Ⅵ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施通過遙感數(shù)據(jù)的剖分與拼接,試圖實現(xiàn)更加本質(zhì)化的遙感數(shù)據(jù)服務(wù)接口,即以遙感數(shù)據(jù)對象(如波段、Bounding Box等)為基本服務(wù)單元,根據(jù)用戶的需求將預(yù)先剖分好的數(shù)據(jù)拼接為用戶需要的遙感數(shù)據(jù)對象,并返回給用戶.目前有一些基于地理信息系統(tǒng)(geographic information system, GIS)的遙感數(shù)據(jù)服務(wù)實例可以被視為第Ⅲ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施,OGC的WCS和WFS是這些服務(wù)常見的服務(wù)接口.其余幾類遙感數(shù)據(jù)基礎(chǔ)設(shè)施由于其復(fù)雜性目前尚無廣泛使用的實例.其中,第Ⅳ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施在第Ⅲ類的基礎(chǔ)上增加了分布和異構(gòu)特性,第Ⅴ類則以差值和反演等方法在第Ⅳ類的基礎(chǔ)上增加了對遙感數(shù)據(jù)基礎(chǔ)設(shè)施的時空連續(xù)性的支持,第Ⅵ類基礎(chǔ)設(shè)施則通過對遙感數(shù)據(jù)數(shù)據(jù)分析處理模型的統(tǒng)一描述與調(diào)度在第Ⅴ類基礎(chǔ)設(shè)施的基礎(chǔ)上增加了對按需服務(wù)的支持,允許用戶將其處理分析模型上傳到服務(wù)平臺對遙感數(shù)據(jù)進行處理并得到處理結(jié)果,是我們所期待的理想的遙感數(shù)據(jù)基礎(chǔ)設(shè)施.OGC的WCPS(Web coverage process service)定義了一系列用于對Coverage進行按需處理服務(wù)的WCS擴展[13],為實現(xiàn)第Ⅴ類和第Ⅵ類基礎(chǔ)設(shè)施進行了一些非常有益的探索.
由于復(fù)雜程度的不同,不同類型的遙感數(shù)據(jù)基礎(chǔ)設(shè)施需要不同的體系結(jié)構(gòu)設(shè)計.對于第Ⅰ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施來講,圖3所示的體系結(jié)構(gòu)就足以滿足要求.在該體系結(jié)構(gòu)中,用于說明遙感數(shù)據(jù)獲取時間、覆蓋范圍、衛(wèi)星與傳感器等特性的元數(shù)據(jù)被存儲在數(shù)據(jù)庫中,用戶可以通過一個圖形用戶界面或者基于Web的用戶界面對這些元數(shù)據(jù)進行查詢,根據(jù)諸如覆蓋范圍、獲取時間、衛(wèi)星與傳感器名等條件找到合適的遙感影像,并通過HTTP或FTP等協(xié)議以文件的形式下載這些遙感影像用于進一步的分析處理.
Fig. 3 Architecture for data infrastructures in class Ⅰ圖3 第Ⅰ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施的體系結(jié)構(gòu)
在這個過程中,第Ⅰ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施會為用戶提供諸如query(area,timeSpan,characteristicsList)和access(dataID)的API用于遙感影像數(shù)據(jù)的查詢與下載.其中,query用于從元數(shù)據(jù)庫中根據(jù)數(shù)據(jù)覆蓋范圍、獲取時間、觀測特性(衛(wèi)星、傳感器、觀測主題)等條件查詢元數(shù)據(jù),并將查找到的元數(shù)據(jù)返回給用戶以供選擇.在用戶得到這些返回結(jié)果之后,即可從中選取合適的數(shù)據(jù),使用其數(shù)據(jù)ID作為參數(shù)調(diào)用access,啟動數(shù)據(jù)獲取過程,請求數(shù)據(jù)源準(zhǔn)備對應(yīng)的影像數(shù)據(jù)并將其以HTTP或FTP服務(wù)的形式提供下載.
圖4中所展示的2種體系結(jié)構(gòu)都可以將圖3所示的第Ⅰ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施增加分布和異構(gòu)特性,從而形成第Ⅱ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施.由于遙感數(shù)據(jù)文件數(shù)據(jù)量巨大,數(shù)據(jù)傳輸?shù)臅r間開銷比較大,所以遙感數(shù)據(jù)文件通常被用戶直接下載以避免多次數(shù)據(jù)傳輸帶來額外的開銷.
Fig. 4 Architecture for data infrastructures in class Ⅱ圖4 第Ⅱ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施的體系結(jié)構(gòu)
分布式的遙感數(shù)據(jù)基礎(chǔ)設(shè)施主要解決的是元數(shù)據(jù)的收集、整理、組織和集成服務(wù)問題.根據(jù)元數(shù)據(jù)集成方式的不同,第Ⅱ類數(shù)據(jù)基礎(chǔ)設(shè)施可以有“在線”和“離線”2種實現(xiàn)方式.“離線”方式周期性地從數(shù)據(jù)提供者將元數(shù)據(jù)收集到一起,形成一個定期更新的中央元數(shù)據(jù)庫(這個中央元數(shù)據(jù)可能是分布可擴展的),并依靠此中央元數(shù)據(jù)庫為用戶提供元數(shù)據(jù)的查詢服務(wù)(圖4(a)).“離線”方式服務(wù)性能較高,但元數(shù)據(jù)的定時收集使得數(shù)據(jù)基礎(chǔ)設(shè)施在數(shù)據(jù)提供者的元數(shù)據(jù)修改時會出現(xiàn)部分的元數(shù)據(jù)不一致.例如,在元數(shù)據(jù)被收集之前,數(shù)據(jù)提供者最新獲取的遙感影像數(shù)據(jù)無法被用戶查詢使用.
與之相反,“在線”方式并不保存和維護中央元數(shù)據(jù)庫,而是通過“在線”翻譯和轉(zhuǎn)發(fā)用戶對元數(shù)據(jù)的查詢請求和數(shù)據(jù)源的查詢結(jié)果的方式來形成一個虛擬的中央元數(shù)據(jù)庫,從而達到將分布式異構(gòu)數(shù)據(jù)組織到一起提供一站式服務(wù)的目的(圖4(b)).“在線”方式不會出現(xiàn)“離線”方式有可能出現(xiàn)的元數(shù)據(jù)不一致的現(xiàn)象,但是由于用戶的每次查詢請求都會被轉(zhuǎn)發(fā)到所有數(shù)據(jù)源,查詢的效率較低,對數(shù)據(jù)源的壓力也比較大.
考慮到遙感數(shù)據(jù)一旦存檔就不應(yīng)當(dāng)再被修改和刪除的特性,“在線”方式和“離線”方式可以被結(jié)合起來使用,通過“離線”方式中周期性更新的中央元數(shù)據(jù)庫來提供高性能的查詢服務(wù),并減少對數(shù)據(jù)源的查詢請求;同時對于那些尚未得到收集的元數(shù)據(jù)以“在線”的方式進行實時的轉(zhuǎn)發(fā),以保證元數(shù)據(jù)查詢結(jié)果的全局一致.
無論“離線”方式還是“在線”方式,第Ⅱ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施通常提供和第Ⅰ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施類似的query()和access()等API用于遙感影像數(shù)據(jù)的查詢與下載.由于各遙感數(shù)據(jù)源通常使用不同的協(xié)議提供其元數(shù)據(jù)的查詢服務(wù),所以第Ⅱ類數(shù)據(jù)基礎(chǔ)設(shè)施必須使用諸如元數(shù)據(jù)適配器等方式將這些遙感數(shù)據(jù)源之間的異構(gòu)性予以消除,以達到一站式服務(wù)的目的.
在第Ⅰ類和第Ⅱ類數(shù)據(jù)基礎(chǔ)設(shè)施中,遙感數(shù)據(jù)以原始的影像文件的形式存儲和提供服務(wù).在這種情況下,獲取某特定區(qū)域或波段的遙感數(shù)據(jù)就必須要經(jīng)過2步:1)從遙感數(shù)據(jù)基礎(chǔ)設(shè)施中找到并下載包含指定區(qū)域的遙感影像文件;2)從下載的遙感影像文件中抽取出需要的區(qū)域或者波段的數(shù)據(jù).這時,第1步下載到的數(shù)據(jù)中就存在無用的部分,也就是說出現(xiàn)了冗余的數(shù)據(jù)傳輸.例如,在運行全球干旱指數(shù)分析時,只有Band2,Band6和BandState三個波段被用于NDVI算法分析,這就意味著下載的MOD09數(shù)據(jù)的13個波段中超過34的數(shù)據(jù)是無用的.這種無用的數(shù)據(jù)傳輸帶來了額外的網(wǎng)絡(luò)傳輸開銷,降低了遙感數(shù)據(jù)處理過程的效率.
為了避免第Ⅰ類和第Ⅱ類數(shù)據(jù)基礎(chǔ)設(shè)施中這種額外開銷,其他幾類數(shù)據(jù)基礎(chǔ)設(shè)施不再使用原始的影像文件作為基本的數(shù)據(jù)服務(wù)單元,而是直接給用戶提供合適的遙感數(shù)據(jù)對象(如某個區(qū)域某個傳感器的遙感數(shù)據(jù)).為了達到此目的,這些遙感數(shù)據(jù)基礎(chǔ)設(shè)施首先必須針對不同的分辨率(如10 km、1 km、100 m等)定義一套網(wǎng)格分劃體系,將整個地球劃分為一系列的基本網(wǎng)格.原始的遙感數(shù)據(jù)將根據(jù)定義的分劃體系被分割為一系列分片數(shù)據(jù),并存儲在數(shù)據(jù)庫或文件系統(tǒng)中.當(dāng)用戶發(fā)起服務(wù)請求時,這些分片數(shù)據(jù)將被根據(jù)用戶給定的需求拼接,形成遙感數(shù)據(jù)對象交給用戶.
為了達到以遙感數(shù)據(jù)對象為基本服務(wù)單元的目的,第Ⅲ類和第Ⅳ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施應(yīng)當(dāng)采用圖5所示的基本體系結(jié)構(gòu).原始的遙感數(shù)據(jù)應(yīng)當(dāng)按照基本網(wǎng)格分割為分片數(shù)據(jù)后再存儲,這就使得數(shù)據(jù)分割和數(shù)據(jù)拼接成為第Ⅲ類及以上的遙感數(shù)據(jù)基礎(chǔ)設(shè)施必須具備的功能.
Fig. 5 Architecture for data infrastructures in class Ⅲ and Ⅳ圖5 第Ⅲ類和第Ⅳ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施的體系結(jié)構(gòu)
由于其數(shù)據(jù)地理上的分布性,第Ⅳ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施中數(shù)據(jù)分割和拼接的實現(xiàn)要比第Ⅲ類基礎(chǔ)設(shè)施復(fù)雜.首先,數(shù)據(jù)的分割要在原始數(shù)據(jù)存儲的節(jié)點“附近”進行,從而避免大量原始數(shù)據(jù)通過相對來講帶寬較低延遲較高的廣域網(wǎng)絡(luò)傳輸,提高數(shù)據(jù)分割的效率;其次,數(shù)據(jù)基礎(chǔ)設(shè)施必須從各個分布于廣域網(wǎng)上的不同存儲節(jié)點收集分片數(shù)據(jù),這種跨越廣域網(wǎng)的數(shù)據(jù)收集會給數(shù)據(jù)基礎(chǔ)設(shè)施帶來額外的數(shù)據(jù)傳輸開銷.因此,在第Ⅳ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施中,如何對分片數(shù)據(jù)進行合理的冗余復(fù)制和存儲優(yōu)化,以使得遙感數(shù)據(jù)基礎(chǔ)設(shè)施在使用這些分片數(shù)據(jù)時能夠在比較“近”的存儲節(jié)點上獲得,從而減少分片數(shù)據(jù)傳輸所需要的時間開銷,將是對提高基礎(chǔ)設(shè)施的數(shù)據(jù)服務(wù)性能非常有意義的一個問題.
另外,第Ⅲ類及以上的遙感數(shù)據(jù)基礎(chǔ)設(shè)施應(yīng)當(dāng)在提供的API上也與第Ⅰ類和第Ⅱ類基礎(chǔ)設(shè)施有所不同.由于第Ⅲ類及以上的遙感數(shù)據(jù)基礎(chǔ)設(shè)施以遙感數(shù)據(jù)對象為基本服務(wù)單元,那么這些服務(wù)提供第1節(jié)中所列出的getValue()和findArea()這些操作作為其編程接口就顯得非常自然了.在這些編程接口的支持下,用戶(或客戶端)可以根據(jù)覆蓋范圍、數(shù)據(jù)采集時間、觀測要素等條件直接獲得需要的數(shù)據(jù).和第Ⅰ、Ⅱ類服務(wù)所提供的查詢-獲取-下載的服務(wù)方式相比,這種服務(wù)方式更加簡潔、方便,同時也避免了冗余數(shù)據(jù)傳輸帶來的額外開銷.
和前幾類服務(wù)相比,第Ⅴ和第Ⅵ類基礎(chǔ)設(shè)施更加依賴于高性能按需計算.在第Ⅴ類基礎(chǔ)設(shè)施中,當(dāng)用戶發(fā)起的數(shù)據(jù)請求由于數(shù)據(jù)缺失而無法完成服務(wù)時,數(shù)據(jù)基礎(chǔ)設(shè)施不再是簡單地返回一個代表“數(shù)據(jù)不存在”的說明信息,而是試圖找到合適的相關(guān)數(shù)據(jù),通過預(yù)先部署好的插值或反演算法從這些存在的相關(guān)數(shù)據(jù)中將用戶需要的數(shù)據(jù)重建出來,并返回給用戶,如圖6所示:
Fig. 6 Architecture for data infrastructures in class Ⅴ圖6 第Ⅴ類遙感數(shù)據(jù)基礎(chǔ)設(shè)施的體系結(jié)構(gòu)
由于將任何時間任何地點任何觀測目標(biāo)的數(shù)據(jù)一律予以存儲是不可能的,也是沒有必要的,因此,遙感數(shù)據(jù)基礎(chǔ)設(shè)施中的數(shù)據(jù)缺失問題也是不可避免的,第Ⅴ類數(shù)據(jù)基礎(chǔ)設(shè)施中對缺失數(shù)據(jù)的重建對于遙感數(shù)據(jù)基礎(chǔ)設(shè)施的使用者來講有著非常重要的意義.這種對缺失數(shù)據(jù)的重建則依賴于那些預(yù)先部署好的插值或反演算法,算法越豐富和精確,數(shù)據(jù)基礎(chǔ)設(shè)施對確實數(shù)據(jù)的填補能力也越強,填補得到的數(shù)據(jù)也越準(zhǔn)確.
在填補缺失數(shù)據(jù)的同時,第Ⅴ類數(shù)據(jù)基礎(chǔ)設(shè)施的數(shù)據(jù)重建也會帶來一系列其他問題.首先是數(shù)據(jù)的可信性.由于數(shù)據(jù)插值和反演算法不可避免地存在各種系統(tǒng)誤差,這些算法得到的數(shù)據(jù)和客觀世界的真實數(shù)據(jù)不可避免地存在差異.為了使用戶能夠更加準(zhǔn)確地了解這些差異,方便用戶對數(shù)據(jù)質(zhì)量進行更加精細(xì)的控制,第Ⅴ類數(shù)據(jù)基礎(chǔ)設(shè)施必須為用戶提供詳細(xì)的數(shù)據(jù)溯源信息,包括原始數(shù)據(jù)的來源和插值反演算法的實現(xiàn)方法等.在這個過程中,數(shù)據(jù)溯源模型(data provenance models)可以被用于對數(shù)據(jù)的可信性和質(zhì)量進行跟蹤.
另外,插值和反演算法一般計算量都比較大,對于計算資源的要求也比較高,這就使得第Ⅴ類數(shù)據(jù)基礎(chǔ)設(shè)施通常需要比較強大的計算資源支持.與之類似,對插值和反演算法的優(yōu)化對于降低插值和反演帶來的開銷、提高數(shù)據(jù)服務(wù)效率也會有一定的幫助.另外,更好的調(diào)度算法可以尋找距離已有數(shù)據(jù)更“近”、性能更高的節(jié)點進行數(shù)據(jù)插值或反演處理,從而降低數(shù)據(jù)傳輸和處理的時間開銷,達到提高數(shù)據(jù)基礎(chǔ)設(shè)施整體性能的目的.
更進一步,當(dāng)數(shù)據(jù)基礎(chǔ)設(shè)施中配置了大量的通用計算資源,而且允許用戶將遙感數(shù)據(jù)分析模型以源代碼等形式上傳到這些計算節(jié)點上時,用戶就可以直接在這些計算節(jié)點上根據(jù)需要對遙感數(shù)據(jù)基礎(chǔ)設(shè)施中存儲的數(shù)據(jù)進行處理,并將計算結(jié)果展示給用戶.在這種情況下,用戶就無需再將原始數(shù)據(jù)下載到本地的工作站進行數(shù)據(jù)處理,從而避免了大量的原始數(shù)據(jù)在網(wǎng)絡(luò)上傳輸所帶來的時間開銷.這就是提供按需數(shù)據(jù)處理能力的第Ⅵ類數(shù)據(jù)基礎(chǔ)設(shè)施.配合一定的數(shù)據(jù)分析模型管理服務(wù),用戶可以使用第Ⅵ類數(shù)據(jù)基礎(chǔ)設(shè)施提供的數(shù)據(jù)服務(wù)能力和數(shù)據(jù)處理能力,根據(jù)其需求靈活地處理各種數(shù)據(jù),開發(fā)各種遙感應(yīng)用,實現(xiàn)科學(xué)和工程目標(biāo).
遙感數(shù)據(jù)基礎(chǔ)設(shè)施的實現(xiàn)依賴于一系列關(guān)鍵技術(shù)上的突破,例如數(shù)據(jù)組織與管理、數(shù)據(jù)收集與整合、按需數(shù)據(jù)處理等.
3.1 數(shù)據(jù)基礎(chǔ)設(shè)施中的數(shù)據(jù)收集與整合
在數(shù)據(jù)基礎(chǔ)設(shè)施中,為了提供一站式的遙感數(shù)據(jù)服務(wù),來自不同空間機構(gòu)的異構(gòu)遙感數(shù)據(jù),至少其元數(shù)據(jù)必須被收集到一起并加以整合.由于不同空間機構(gòu)提供遙感數(shù)據(jù)及其元數(shù)據(jù)的方式不同,收集這些數(shù)據(jù)與元數(shù)據(jù)的方法也隨之不同,如使用FTP,HTTP或其他網(wǎng)絡(luò)協(xié)議下載元數(shù)據(jù)文件,對元數(shù)據(jù)庫進行復(fù)制,使用預(yù)定義的網(wǎng)絡(luò)協(xié)議對元數(shù)據(jù)進行查詢,通過網(wǎng)絡(luò)爬蟲從空間機構(gòu)提供的Web站點爬取元數(shù)據(jù)等.
在這些方法中,使用FTP、HTTP或其他網(wǎng)絡(luò)協(xié)議下載元數(shù)據(jù)文件通常需要對元數(shù)據(jù)文件進行進一步的解析和整理,而且獲得這些元數(shù)據(jù)文件的難度也比較大;元數(shù)據(jù)庫的復(fù)制通常受限于數(shù)據(jù)政策而無法實現(xiàn);使用網(wǎng)絡(luò)爬蟲爬取元數(shù)據(jù)的技術(shù)難度較大,而且容易對空間機構(gòu)的網(wǎng)站造成比較大的壓力.所以,使用預(yù)定義的網(wǎng)絡(luò)協(xié)議對元數(shù)據(jù)進行查詢和獲取是一種比較靈活、常用和有效的方法.
由于Web的普遍使用,基于HTTP協(xié)議的請求-響應(yīng)模式在網(wǎng)絡(luò)應(yīng)用中非常流行.元數(shù)據(jù)查詢與獲取的協(xié)議也通?;贖TTP和請求-響應(yīng)模式,以SOAP或RESTful Web服務(wù)的形式實現(xiàn).這些協(xié)議通常包括查詢和獲取2類功能.其中,查詢功能根據(jù)給定條件查詢元數(shù)據(jù)庫,并將查詢結(jié)果以預(yù)先定義的格式予以返回.由于其可擴展性和靈活性,查詢結(jié)果通?;赬ML或JSON來定義.查詢和獲取通常使用異步訪問模型,例如一個基于SOAP的元數(shù)據(jù)查詢協(xié)議可能包括如下3個分別用來啟動一個查詢、獲取查詢結(jié)果和關(guān)閉一個查詢的操作:
啟動查詢:Stringquery(Stringrequest);
獲取結(jié)果:StringgetDescriptions(StringqueryID,intsize);
關(guān)閉查詢:voidcloseQuery(StringqueryID).
在這些元數(shù)據(jù)查詢操作里,query接收一個查詢條件字符串request,解析這個查詢條件,啟動一個新的查詢,并將查詢的ID作為響應(yīng)立即返回給用戶.查詢成功啟動后,getDescriptions使用這個查詢ID作為參數(shù),以XML串的形式讀取滿足條件的“下size個元數(shù)據(jù)項”,直到所有元數(shù)據(jù)都被讀取或者使用closeQuery關(guān)閉查詢?yōu)橹?
query的參數(shù)request以XML格式組織描述,例如一個用于查詢Landsat7衛(wèi)星、ETM+傳感器、覆蓋北京地區(qū)(115.7°E~117.4°E,39.4°N~41.6°N)、采集于2010年最后10 d的查詢串應(yīng)當(dāng)如圖7所示.
如圖7所示,參數(shù)request主要包括3類條件:第1類是以operator,attr和value三個元素組成的“簡單比較”條件,用于對衛(wèi)星名、傳感器名、觀測時間、影像云量等觀測參數(shù)進行相等、不等、大于、小于、相似于等簡單比較;第2類是以包含一組經(jīng)緯度最大最小值的bbox元素的“覆蓋范圍邊界”條件,用于對遙感數(shù)據(jù)的覆蓋范圍進行查詢;第3類條件為“邏輯復(fù)合條件”,它使用AND,OR和NOT等邏輯運算連接包括其他“邏輯復(fù)合條件”在內(nèi)的多個條件組成復(fù)雜的查詢條件,以滿足用戶多樣化的查詢需求.
Fig. 7 Example for XML description of query conditions
圖7 查詢條件的XML描述示例
query會啟動一個新的查詢并將這個查詢的queryID返回,這個queryID可以被用于調(diào)用getDescriptions,以從前向后依次遍歷的方式返回查找到的元數(shù)據(jù)(如圖8所示),也可以用于調(diào)用closeQuery關(guān)閉查詢以釋放查詢占用的系統(tǒng)資源.
Fig. 8 Example for XML description of query results
圖8 查詢結(jié)果的XML描述示例
除了查詢之外,基于SOAP同樣也可以定義一個由啟動獲取過程、讀取獲取結(jié)果和結(jié)束獲取過程3個操作組成的基于XML的異步遙感數(shù)據(jù)獲取協(xié)議:
啟動獲取過程:Stringaccess(StringdataID);
讀取結(jié)果:StringgetResult(StringaccessID);
結(jié)束獲取:voidcloseAccess(StringaccessID);
這組異步協(xié)議用來請求數(shù)據(jù)提供者根據(jù)給定的數(shù)據(jù)ID準(zhǔn)備數(shù)據(jù)并使該數(shù)據(jù)上線,允許用戶下載.數(shù)據(jù)ID通常情況下來自于前述查找協(xié)議返回的元數(shù)據(jù).當(dāng)access被調(diào)用時,數(shù)據(jù)源將啟動一個過程,找到用戶需要的數(shù)據(jù),在必要時將數(shù)據(jù)打包并復(fù)制到用戶可以下載的區(qū)域.同時,access為獲取過程分配一個accessID,這個accessID可以在調(diào)用getResult和closeAccess時作為參數(shù).當(dāng)getResult被調(diào)用時,根據(jù)數(shù)據(jù)準(zhǔn)備情況的不同,會有不同的結(jié)果XML串被返回,如圖9所示:
Fig. 9 Examples for XML description of access results
圖9 getResult的返回結(jié)果XML串示例
根據(jù)數(shù)據(jù)準(zhǔn)備情況的不同,結(jié)果XML串會包含取值為“RUNNING”、“ERROR”或者“OK”的state元素.圖9(a)中所示的“RUNNING”狀態(tài)代表數(shù)據(jù)尚未準(zhǔn)備完成,圖9(b)所示的“ERROR”狀態(tài)代表數(shù)據(jù)準(zhǔn)備過程中出現(xiàn)了異常,以至于無法提供數(shù)據(jù)下載,異常原因在caused元素中描述.如果數(shù)據(jù)準(zhǔn)備完成,圖9(c)所示的結(jié)果字符串將被返回,其中一組url元素用于指出不同用途的數(shù)據(jù)對應(yīng)的下載地址.最后,當(dāng)數(shù)據(jù)下載完成后,用戶應(yīng)當(dāng)調(diào)用closeAccess關(guān)閉獲取過程,允許數(shù)據(jù)源對該獲取過程中使用到的一些資源進行釋放,如釋放數(shù)據(jù)庫連接、刪除臨時文件等.
3.2 數(shù)據(jù)組織與管理
遙感數(shù)據(jù)通常由元數(shù)據(jù)和影像數(shù)據(jù)兩部分組成.元數(shù)據(jù)是用來描述諸如覆蓋范圍、創(chuàng)建時間、數(shù)據(jù)類型、格式、用途等詳細(xì)信息的文本,通常被存儲在數(shù)據(jù)文件或數(shù)據(jù)庫中.不幸的是,不同來源不同衛(wèi)星的遙感數(shù)據(jù)其元數(shù)據(jù)的格式和內(nèi)容相差很大.這些截然不同的元數(shù)據(jù)描述給元數(shù)據(jù)的統(tǒng)一組織和存儲帶來了不小的麻煩,定義一種靈活的、可擴展的元數(shù)據(jù)描述方法成為組織和存儲元數(shù)據(jù)的必要前提.從靈活性和可擴展性出發(fā),基于鍵值對的文檔是一種能夠更加靈活方便地描述遙感數(shù)據(jù)的覆蓋范圍、采集時間和衛(wèi)星傳感器等觀測特性的組織方案.不同種類和來源的遙感數(shù)據(jù)可以具有不同名稱的鍵值,鍵值的數(shù)據(jù)類型也可以不同(例如一個字符串、一個數(shù)、其他的文檔,或者字符串、數(shù)和文檔的列表等).XML和JSON是比較常用的2種元數(shù)據(jù)傳輸和交換的格式,例如,MODIS數(shù)據(jù)的元數(shù)據(jù)可以以JSON和XML格式分別描述如圖10所示:
Fig. 10 Format examples for meta-data exchange
圖10 元數(shù)據(jù)傳輸與交換格式
在存儲方面,由于元數(shù)據(jù)的結(jié)構(gòu)過于復(fù)雜和靈活,使用對數(shù)據(jù)結(jié)構(gòu)要求嚴(yán)格的傳統(tǒng)關(guān)系型數(shù)據(jù)庫存儲這些元數(shù)據(jù)顯得有些力不從心.因此,從靈活性和兼容性出發(fā),元數(shù)據(jù)存儲經(jīng)常使用NoSQL數(shù)據(jù)庫進行存儲,例如類似MongoDB的文檔數(shù)據(jù)庫或者類似Apache Cassandra的鍵值對存儲系統(tǒng).而且,很多NoSQL數(shù)據(jù)庫采用分布式的基本體系結(jié)構(gòu),其存儲規(guī)模的水平可擴展性對于存儲數(shù)據(jù)量巨大的元數(shù)據(jù)有著明顯的優(yōu)勢.但是,NoSQL數(shù)據(jù)庫的數(shù)據(jù)查詢能力通常較弱,尤其是對于復(fù)雜查詢的支持能力不足.為此,我們通常要通過額外建立倒排表或者結(jié)構(gòu)化索引等方式來提升元數(shù)據(jù)的查詢能力,而這些都會給元數(shù)據(jù)存儲的實現(xiàn)帶來額外的難度和開銷.
另一種可行的解決方案就是混合使用關(guān)系型數(shù)據(jù)庫和NoSQL數(shù)據(jù)庫.由于元數(shù)據(jù)中通常只有少量比較“通用”的域被用于數(shù)據(jù)查詢,比如衛(wèi)星名、傳感器名、數(shù)據(jù)覆蓋范圍、采集時間等,我們可以將這些數(shù)據(jù)從元數(shù)據(jù)中提取出來并存儲在關(guān)系型數(shù)據(jù)庫中用于查詢,而元數(shù)據(jù)的主體依舊保存在NoSQL數(shù)據(jù)庫中以保證其靈活性.這時,關(guān)系型數(shù)據(jù)庫作為一個“索引數(shù)據(jù)庫”來使用.
在圖11所示的解決方案中,數(shù)據(jù)ID、可查詢的域以及一個到NoSQL數(shù)據(jù)庫的引用指針被保存在分布式數(shù)據(jù)庫中,同時建立完善的數(shù)據(jù)索引以提高數(shù)據(jù)查詢的效率.數(shù)據(jù)基礎(chǔ)設(shè)施可以首先從關(guān)系數(shù)據(jù)庫中根據(jù)條件查詢到一組數(shù)據(jù)ID和到NoSQL數(shù)據(jù)庫的引用指針,再根據(jù)這些引用指針(通常是NoSQL數(shù)據(jù)庫中的數(shù)據(jù)ID)從NoSQL數(shù)據(jù)庫中迅速讀出元數(shù)據(jù)的全部內(nèi)容,從而達到快速查詢的目的.
Fig. 11 Hybrid meta-data storage圖11 結(jié)合關(guān)系數(shù)據(jù)庫與NoSQL數(shù)據(jù)庫的元數(shù)據(jù)存儲方案
另一方面,作為遙感數(shù)據(jù)主體的影像數(shù)據(jù)有矢量和柵格2種不同的數(shù)據(jù)模型.柵格數(shù)據(jù)是按網(wǎng)格單元的行與列排列、具有不同取值的陣列數(shù)據(jù),它使用大小相等、分布均勻、緊密相連的像元(網(wǎng)格單元)陣列來表示空間地物或現(xiàn)象分布的數(shù)據(jù)組織.柵格數(shù)據(jù)易于實現(xiàn),算法簡單,易于擴充、修改,直觀性強,是遙感影像數(shù)據(jù)常用的表示模型.但是,由于柵格數(shù)據(jù)需要針對每個網(wǎng)格單元給出觀測值,其數(shù)據(jù)量比較大,通常以文件的形式存儲在文件系統(tǒng)之中.另外,為了提高柵格數(shù)據(jù)的訪問效率,一種面向柵格數(shù)據(jù)的數(shù)據(jù)管理系統(tǒng)Array DBMS近年來也受到了一定程度的重視.
與柵格數(shù)據(jù)相反,矢量數(shù)據(jù)使用點、線、矩形、多邊形、圓和弧線等圖形來描述一個地理實體的空間分布.矢量數(shù)據(jù)通常結(jié)構(gòu)緊湊、數(shù)據(jù)量比較小,除了以文件的形式存儲在文件系統(tǒng)之外,還經(jīng)常以編碼的字符串或BLOB(二進制大對象)的形式存儲在關(guān)系數(shù)據(jù)庫或NoSQL數(shù)據(jù)庫中.無論矢量數(shù)據(jù)還是柵格數(shù)據(jù),無論這些數(shù)據(jù)以文件的形式被存儲在文件系統(tǒng)中還是以數(shù)據(jù)對象的形式存儲在數(shù)據(jù)庫中,遙感影像數(shù)據(jù)通常被賦予一個唯一ID,這個ID被用來將影像數(shù)據(jù)與元數(shù)據(jù)關(guān)聯(lián)在一起.
從數(shù)據(jù)的安全性和高效訪問出發(fā),遙感數(shù)據(jù)基礎(chǔ)設(shè)施可以將元數(shù)據(jù)和影像數(shù)據(jù)復(fù)制多份并將其存儲在地理上分布的多個不同的存儲節(jié)點中,從而避免存儲節(jié)點的故障帶來的數(shù)據(jù)丟失.另一方面,多個不同拷貝也使得遙感數(shù)據(jù)可以就近訪問,減少傳輸遙感數(shù)據(jù)所需要的時間;同時多個不同拷貝也可以有效地分散遙感數(shù)據(jù)查詢與獲取給存儲節(jié)點帶來的壓力,提高數(shù)據(jù)訪問的效率.與此同時,遙感數(shù)據(jù)基礎(chǔ)設(shè)施還可以建設(shè)在一些具有良好的可擴展性和伸縮性的分布式存儲系統(tǒng)之上,諸如分布式文件系統(tǒng)、云存儲系統(tǒng)、分布式數(shù)據(jù)庫等都可以為遙感數(shù)據(jù)基礎(chǔ)設(shè)施提供性能更好、擴展性更強、開銷更低的存儲基礎(chǔ).
3.3 數(shù)據(jù)服務(wù)接口
從本質(zhì)上來說,遙感數(shù)據(jù)基礎(chǔ)設(shè)施的最基本任務(wù)是根據(jù)用戶給出的時間、空間、觀測特性等條件,找到符合其需求的遙感數(shù)據(jù)并提供給用戶.所以,數(shù)據(jù)服務(wù)最基本的接口應(yīng)當(dāng)是用來根據(jù)給定的時間、空間位置和觀測特性返回確切觀測值(整數(shù)、浮點數(shù)、字符串或者空值等)的getValue,猝發(fā)返回一個時間范圍和空間區(qū)域(多數(shù)情況下是一個矩形)內(nèi)大量數(shù)據(jù)以提高服務(wù)性能的getValues,以及在指定時間、指定區(qū)域內(nèi)尋找某項或某幾項觀測值符合指定條件的子區(qū)域的findArea.這些服務(wù)功能接口的原型可以表示如下:
valuegetValue(position,time,characteristics);
valueArraygetValues(area,timeSpan,char-acteristicsList);
areafindArea(area,conditions).
在這些功能接口中,position應(yīng)當(dāng)是一個用經(jīng)緯度等方式描述的確定地點;time是一個確定的時間,timeSpan是由開始時間和結(jié)束時間所指定的一段時間間隔;characteristics用來指明觀測特性(如衛(wèi)星、傳感器、波段等),characteristicsList則是觀測特性的一個列表;area是感興趣的區(qū)域,通常用多邊形甚至矩形來描述;conditions是一個復(fù)雜的條件選項,其結(jié)構(gòu)和功能與3.1節(jié)中query的request參數(shù)相仿.
很明顯,前述幾種服務(wù)功能是建立在以遙感數(shù)據(jù)對象為基本服務(wù)單元這個前提下的,而以影像文件為基本服務(wù)單元的第I類和第Ⅱ類數(shù)據(jù)基礎(chǔ)設(shè)施就無法提供這些服務(wù)功能接口.對于第I類和第Ⅱ類數(shù)據(jù)基礎(chǔ)設(shè)施,其基本服務(wù)功能應(yīng)當(dāng)圍繞影像數(shù)據(jù)文件的查找和獲取來提供.因此,用來查詢可用遙感數(shù)據(jù)的query和用來獲取遙感數(shù)據(jù)文件以供下載的access應(yīng)當(dāng)是第I類和第Ⅱ類數(shù)據(jù)基礎(chǔ)設(shè)施最基本的服務(wù)功能.這些服務(wù)功能接口的原型可以表示為:
MetaDataListquery(conditions);
AccessResultaccess(dataID).
其中,conditions為條件選項,MetaDataList是以元數(shù)據(jù)列表形式描述的查詢結(jié)果;dataID是從元數(shù)據(jù)中分離出來的數(shù)據(jù)唯一ID,AccessResult則用來描述數(shù)據(jù)獲取得到的結(jié)果,包括數(shù)據(jù)能否下載、哪些用途的數(shù)據(jù)能夠從哪個URL下載等.除此之外,遙感數(shù)據(jù)基礎(chǔ)設(shè)施還有可能提供諸如根據(jù)給定條件統(tǒng)計數(shù)據(jù)的條目數(shù)和數(shù)據(jù)量等更多的附加功能以方便用戶的使用.
在Web的基礎(chǔ)上,基于XML,SOAP,WSDL,UDDI等一系列標(biāo)準(zhǔn)協(xié)議,Web服務(wù)由于其出色的平臺無關(guān)性、自描述性、可擴展性和靈活性而被廣泛使用于基于Internet的軟件服務(wù),成為目前面向服務(wù)的體系結(jié)構(gòu)(service oriented architecture, SOA)最常見的實現(xiàn)方式.使用Web服務(wù)技術(shù)來提供服務(wù)也是遙感數(shù)據(jù)基礎(chǔ)設(shè)施一種比較理想的實現(xiàn)方案.但是,比較復(fù)雜的協(xié)議,XML解析與驗證等過程也給基于SOAP的Web服務(wù)帶來一系列的額外開銷,在一定程度上影響了服務(wù)的效率.為此,輕量級的RESTful服務(wù)也經(jīng)常被用來提供高性能的遙感數(shù)據(jù)服務(wù).
REST即REpresentational State Transfer,是一種互聯(lián)網(wǎng)服務(wù)的架構(gòu)原則.RESTful服務(wù)將Web服務(wù)視為可以由其 URL 唯一標(biāo)識的資源,使用不同的HTTP方法(如GET,POST,PUT和DELETE)來表示對資源的不同操作(如讀取、新建、修改和刪除).和Web服務(wù)明確使用XML作為其編碼基礎(chǔ)不同,RESTful服務(wù)可以使用任何表示層編碼協(xié)議,如XML,JSON或者普通文本,這就使得RESTful服務(wù)的實現(xiàn)更加靈活.RESTful服務(wù)的編程模型簡單,諸如JSON等輕量級編碼方案的使用也減少了序列化和反序列化過程的復(fù)雜性,提高了服務(wù)效率.
Fig. 13 Workflow for on-demand remote sensing data analysis圖13 按需數(shù)據(jù)處理支持下的遙感數(shù)據(jù)分析過程
一個RESTful的遙感數(shù)據(jù)服務(wù)可能基于HTTP GET方法提供其getValue操作接口,讀取用戶給出的時間、位置和觀測特性信息,并返回一個諸如17或者226.0這樣的觀測值.例如,一個讀取TERRA衛(wèi)星、MODIS傳感器、2號波段指定地理位置和時間的觀測數(shù)值的HTTP GET命令可能會是:
在某些時候,遙感數(shù)據(jù)查詢或獲取的操作可能需要比較長的時間,容易引起客戶端程序的阻塞.為此,遙感數(shù)據(jù)基礎(chǔ)設(shè)施也可以將其接口操作以異步化的形式提供.比如,以輪詢方式異步化的遙感影像文件獲取操作可能會將操作access分為3個異步的操作:啟動一個獲取過程的startAccess,讀取獲取結(jié)果的getAccessResult和關(guān)閉獲取過程的closeAccess.這3個操作分別使用HTTP方法POST,GET和DELETE來調(diào)用.基于SOAP的Web服務(wù)也可以提供類似的異步化操作接口,以方便用戶的異步服務(wù)調(diào)用.
3.4 按需數(shù)據(jù)處理
當(dāng)前的遙感數(shù)據(jù)基礎(chǔ)設(shè)施普遍停留在簡單地將已有的存檔數(shù)據(jù)按照原樣提供出來的初級階段,用戶必須將服務(wù)所提供的數(shù)據(jù)通過網(wǎng)絡(luò)下載到本地以供繼續(xù)分析處理之用.由于這個下載過程通常要通過相對低帶寬、高時延的廣域網(wǎng),遙感數(shù)據(jù)的下載通常需要比較長的時間(如圖12所示).
Fig. 12 Classical workflow for remote sensing data analysis圖12 傳統(tǒng)遙感數(shù)據(jù)分析過程
在大多數(shù)情況下,遙感數(shù)據(jù)處理模型的輸出結(jié)果在數(shù)據(jù)量上要遠(yuǎn)遠(yuǎn)小于這些處理模型的輸入數(shù)據(jù),這就使得“就近計算”成為一種提高遙感數(shù)據(jù)分析處理效率的有效手段.所謂“就近計算”,就是在遙感數(shù)據(jù)基礎(chǔ)設(shè)施中部署具有比較強大計算能力的計算資源,并且使這些計算資源和遙感數(shù)據(jù)之間具有高帶寬、低時延的高性能網(wǎng)絡(luò)連接(大多數(shù)情況下是計算資源和數(shù)據(jù)資源位于同一個高速局域網(wǎng)之中).這樣,用戶就可以將其處理遙感數(shù)據(jù)所使用的遙感數(shù)據(jù)分析模型推送到數(shù)據(jù)基礎(chǔ)設(shè)施所提供的計算節(jié)點上按需地部署運行,再將數(shù)據(jù)量相對比較小的輸出結(jié)果通過廣域網(wǎng)返回給用戶(如圖13所示).
遙感數(shù)據(jù)的按需數(shù)據(jù)處理將對數(shù)據(jù)的處理計算從用戶的本地工作站轉(zhuǎn)移到了遙感數(shù)據(jù)基礎(chǔ)設(shè)施所提供的計算節(jié)點之上,一方面可以有效地利用遙感數(shù)據(jù)基礎(chǔ)設(shè)施提供的高性能計算資源對數(shù)據(jù)進行高速處理,另一方面可以避免海量的原始遙感數(shù)據(jù)在低帶寬、高時延的廣域網(wǎng)上的反復(fù)傳輸,對于提高遙感數(shù)據(jù)的處理速度有著非常明顯的效果.同時,按需數(shù)據(jù)處理也能夠給遙感數(shù)據(jù)基礎(chǔ)設(shè)施提供集成的數(shù)據(jù)處理能力,對于通過數(shù)據(jù)的插值和反演等操作實現(xiàn)時空無縫化的數(shù)據(jù)服務(wù)非常有利.但是,由于遙感數(shù)據(jù)分析模型的部署和運行可能依賴于不同的軟硬件環(huán)境,如硬件平臺、操作系統(tǒng)、編譯器、支持庫等,這就給遙感數(shù)據(jù)分析模型的按需部署和運行帶來了一些困難.
隨著虛擬化技術(shù)的不斷發(fā)展,虛擬機的運行效率不斷提高,其部署和管理也越來越方便,這就給使用虛擬機支持遙感數(shù)據(jù)分析模型的按需部署和運行提供了一種工程上可行的解決方案.數(shù)據(jù)基礎(chǔ)設(shè)施中的按需數(shù)據(jù)處理支持模塊可以為用戶提供一系列安裝了基本環(huán)境的虛擬機鏡像,用戶可以在這些虛擬機鏡像的基礎(chǔ)上按照其要求進行定制,使之滿足用戶的遙感數(shù)據(jù)分析模型的部署與運行需求.由于用戶可以在系統(tǒng)提供的基本環(huán)境虛擬機鏡像基礎(chǔ)之上進行深度定制,此方案對于遙感數(shù)據(jù)分析模型的匹配程度非常高,理論上可以支持任何遙感數(shù)據(jù)分析模型的部署和運行.
龐大的虛擬機鏡像無論在存儲還是在傳輸上對于按需數(shù)據(jù)處理的實現(xiàn)都是一個不小的負(fù)擔(dān).雖然可以通過增量傳輸和存儲以及容器技術(shù)等方法來減少傳輸和存儲過程中的冗余,提高系統(tǒng)鏡像傳輸和存儲的效率,但是這種為了靈活性而付出的代價依舊不可小視.另外,基于虛擬機的遙感數(shù)據(jù)分析模型的種類繁多,運行方法多樣,對這些數(shù)據(jù)分析模型進行描述和進一步的流程組合將會非常困難.相比起來,基于模型描述的按需數(shù)據(jù)處理技術(shù)就能夠在一定程度上解決這些問題.
限制遙感數(shù)據(jù)分析模型部署和運行的主要難點在于如何為遙感數(shù)據(jù)分析模型提供合適的運行時環(huán)境.如果能夠有一套標(biāo)準(zhǔn)規(guī)范能夠?qū)⑦b感數(shù)據(jù)分析模型所使用的運行時環(huán)境加以規(guī)范描述,從而使得這些運行時環(huán)境能夠準(zhǔn)確地被復(fù)現(xiàn),對運行時環(huán)境的描述就可以被遙感數(shù)據(jù)分析模型攜帶著上傳到按需數(shù)據(jù)處理系統(tǒng)中,指導(dǎo)按需數(shù)據(jù)處理系統(tǒng)選擇和構(gòu)建合適的運行時環(huán)境部署和運行遙感數(shù)據(jù)分析模型.更進一步,如果遙感數(shù)據(jù)分析模型能夠被以一套規(guī)范的形式予以描述,那么遵照此規(guī)范構(gòu)建的高性能并行運行時環(huán)境就可以支持這些遙感數(shù)據(jù)分析模型的高效運行.而且,規(guī)范化的描述也將有利于遙感數(shù)據(jù)分析模型的遷移、共享和流程化運行.
基于XML和JSON語言的強大描述能力,運行時環(huán)境的描述可以基于XML或JSON來規(guī)范.例如,一個“安裝有Windows 10 64bits操作系統(tǒng)、Visual Studio 2010編程環(huán)境的單機”的環(huán)境需求可以用圖14所示JSON或XML文檔描述.
Fig. 14 Examples for runtime environment description
圖14 運行時環(huán)境描述的示例
由于按需數(shù)據(jù)處理帶來的一系列好處,目前已經(jīng)出現(xiàn)了一些相關(guān)的研究.例如OGC的WCPS就試圖定義一種協(xié)議無關(guān)的處理語言以實現(xiàn)對多維覆蓋的按需抽取、處理和分析[13].另外,論文[14]也試圖將遙感數(shù)據(jù)處理所需要的工具從用戶所在的工作站遷移到數(shù)據(jù)提供者一端,以提高數(shù)據(jù)處理流程的速度.但是這些研究基本上還是處在解決單個問題的階段,并沒有針對遙感數(shù)據(jù)分析模型的按需部署與應(yīng)用問題做全景式的分析與探索.
為了驗證按需數(shù)據(jù)處理為遙感數(shù)據(jù)基礎(chǔ)設(shè)施帶來的性能增益,我們建立了一個簡單的原型系統(tǒng),并在該原型系統(tǒng)上以基于歸一化水指數(shù)NDWI[15]的干旱檢測為典型應(yīng)用進行了性能測試.該原型系統(tǒng)運行在2臺以千兆位以太網(wǎng)連接的桌面型服務(wù)器上,每臺服務(wù)器配有一個i5-4570@3.20 GHz CPU,16 GB存儲器和4 TB硬盤.這2臺桌面型服務(wù)器中的一臺用來模擬提供按需數(shù)據(jù)處理功能的數(shù)據(jù)基礎(chǔ)設(shè)施服務(wù)端,另一臺用來模擬用戶端的工作站.
Fig. 15 Performance test results of on-demand processing圖15 按需數(shù)據(jù)處理的性能測試
在該原型系統(tǒng)中,數(shù)據(jù)處理模型被以Java字節(jié)碼的形式描述,并被按需地部署到一個具有JDK和HDF運行庫的64位Windows環(huán)境之中,按需數(shù)據(jù)處理的運行時環(huán)境描述采用XML格式.其描述如下:
我們使用從2000—2010年這11年間的4 d中覆蓋h27v05和h27v06的MOD09數(shù)據(jù)共88個HDF格式的遙感數(shù)據(jù)作為測試數(shù)據(jù),測試數(shù)據(jù)總量為約6.43 GB,作為處理結(jié)果的AWI文件數(shù)據(jù)總量約483 MB.
根據(jù)我們在多個典型網(wǎng)絡(luò)環(huán)境下進行遙感影像數(shù)據(jù)下載的測試,通過Internet進行遙感影像下載的數(shù)據(jù)傳輸率通常在1~10 MBs之間,因此我們使用軟件將數(shù)據(jù)傳輸帶寬分別限制在1 MBs,4 MBs,10 MBs,以及不做限制(此時的數(shù)據(jù)傳輸帶寬上限應(yīng)當(dāng)是硬件限制的1 Gbps,即125 MBs)進行性能測試.在不同數(shù)據(jù)傳輸帶寬限制下的性能測試結(jié)果如圖15所示,其中Classical表示傳統(tǒng)的數(shù)據(jù)處理流程,ODP表示按需數(shù)據(jù)處理.在圖15中,柱狀圖為不同處理方法各步驟所消耗的時間(左上右下斜線部分為數(shù)據(jù)傳輸與模型部署時間,右上左下斜線部分為模型運行時間),折線圖為不同處理方法的運行效率(定義為模型運行時間占總時間的百分比).
從圖15中可以看出,無論網(wǎng)絡(luò)帶寬高達1 Gbps還是低至1 MBs,按需數(shù)據(jù)處理都能表現(xiàn)出相對于傳統(tǒng)數(shù)據(jù)處理方法更明顯的性能增益,數(shù)據(jù)處理總時間明顯縮短,處理效率明顯提高.和傳統(tǒng)的數(shù)據(jù)處理方式相比,按需數(shù)據(jù)處理所需要的總處理時間縮短了60%~90%,而且這種性能增益在低帶寬的網(wǎng)絡(luò)環(huán)境下顯得更加明顯.
按需數(shù)據(jù)處理對于遙感數(shù)據(jù)基礎(chǔ)設(shè)施來講具有非常重要的意義.首先,正如本文實驗所證明,按需數(shù)據(jù)處理將數(shù)據(jù)的處理過程從用戶端移動到了數(shù)據(jù)服務(wù)端,避免大量原始影像數(shù)據(jù)通過廣域網(wǎng)絡(luò)傳輸帶來的網(wǎng)絡(luò)開銷,提高遙感處理的整體效率.其次,分布式的數(shù)據(jù)基礎(chǔ)設(shè)施可以通過對遙感數(shù)據(jù)分析模型的有效調(diào)度,使這些分析模型在盡可能接近數(shù)據(jù)的高性能計算資源上運行,這種“就近計算”的調(diào)度能夠有效地提高遙感數(shù)據(jù)分析模型的運行效率.最后,更加重要的是,在用戶將遙感數(shù)據(jù)分析模型推送到遙感數(shù)據(jù)基礎(chǔ)設(shè)施中之后,用戶可以依照其意愿將這些分析模型與其他用戶共享,將來自不同機構(gòu)的分析模型組織在一起,更好地支持遙感數(shù)據(jù)的分析和研究.在這種情況下,遙感數(shù)據(jù)基礎(chǔ)設(shè)施就能夠更好地為遙感科學(xué)研究和工程應(yīng)用提供PaaS(platform-as-a-service)和SaaS(software-as-a-service)服務(wù).在這個基礎(chǔ)設(shè)施提供的各種基本環(huán)境、數(shù)據(jù)、工具、庫等的支持下,用戶可以方便地開發(fā)和共享遙感數(shù)據(jù)分析模型,實現(xiàn)合作研究和協(xié)同應(yīng)用.
隨著遙感數(shù)據(jù)量的不斷增加、遙感應(yīng)用在規(guī)模上的不斷擴大和實現(xiàn)上的不斷復(fù)雜化多樣化、以及跨地域跨組織合作研究需求的不斷增加,遙感科學(xué)與工程應(yīng)用對于大數(shù)據(jù)時代的遙感數(shù)據(jù)基礎(chǔ)設(shè)施在地域分布性、可擴展性、可用性、易用性和性能表現(xiàn)等方面的要求越來越高.傳統(tǒng)的遙感數(shù)據(jù)基礎(chǔ)設(shè)施大多數(shù)以影像文件為基本服務(wù)單元,只能將單一機構(gòu)的存檔數(shù)據(jù)通過Web界面等方式提供給用戶查詢和下載,在服務(wù)效率和易用性等方面遠(yuǎn)遠(yuǎn)不能滿足不斷發(fā)展的遙感科學(xué)與工程應(yīng)用的需求.
從本質(zhì)上來講,遙感數(shù)據(jù)是對客觀世界的數(shù)值化反映,是一個由時間、空間和觀測特性所組成的高維數(shù)據(jù)空間.對于確定的時間、空間和觀測特性,遙感數(shù)據(jù)應(yīng)當(dāng)有確定的取值.相應(yīng)地,遙感數(shù)據(jù)基礎(chǔ)設(shè)施應(yīng)當(dāng)以形式化、規(guī)范化的訪問接口,為遙感應(yīng)用提供以getValues和findArea為代表的數(shù)據(jù)服務(wù)操作,允許用戶根據(jù)遙感數(shù)據(jù)的高維空間各維度的數(shù)值直接得到相應(yīng)的觀測值,或者根據(jù)給定的條件在遙感數(shù)據(jù)的高維空間中確定符合條件的子空間.這樣的遙感數(shù)據(jù)基礎(chǔ)設(shè)施會更加本質(zhì)和易用.
根據(jù)遙感數(shù)據(jù)基礎(chǔ)設(shè)施的基本服務(wù)單元、分布性、數(shù)據(jù)的時空連續(xù)性和按需處理支持,本文將遙感數(shù)據(jù)基礎(chǔ)設(shè)施分成了6類,并從系統(tǒng)構(gòu)造的角度,討論了構(gòu)建這6類遙感數(shù)據(jù)基礎(chǔ)設(shè)施所應(yīng)采用的體系結(jié)構(gòu),指出了各類型遙感數(shù)據(jù)基礎(chǔ)設(shè)施實現(xiàn)的關(guān)鍵問題.在此基礎(chǔ)上,本文還就各類遙感數(shù)據(jù)基礎(chǔ)設(shè)施在構(gòu)建過程中需要考慮的數(shù)據(jù)收集與整合、數(shù)據(jù)組織與管理、數(shù)據(jù)服務(wù)接口、按需數(shù)據(jù)處理等方面的實現(xiàn)方案進行了深入的討論.在這些技術(shù)的支持下,遙感數(shù)據(jù)基礎(chǔ)設(shè)施能夠做到分布化、智能化和平臺化,達到數(shù)據(jù)與處理“存算一體”的目標(biāo),并在此基礎(chǔ)上實現(xiàn)遙感數(shù)據(jù)分析模型的共享和流程化,支持基于大數(shù)據(jù)的遙感科學(xué)合作研究和工程上的協(xié)同工作.
[1]Hey T, Tansley S, Tolle K. The Fourth Paradigm: Data-Intensive Scientific Discovery[M]. Redmond, WA: Microsoft Corporation. 2009: 252
[2]Demchenko Y, Grosso P, De Laat C, et al. Addressing big data issues in scientific data infrastructure [C] //Proc of 2013 Int Conf on Collaboration Technologies and Systems (CTS). Piscataway, NJ: IEEE, 2013: 48-55
[3]Ma Yan, Wu H, Wang L, et al. Remote sensing big data computing: Challenges and opportunities[J]. Future Generation Computer Systems, 2015, 51(2015): 47-60
[4]Open Geospatial Consortium (OGC). OGC?Standards and Supporting Documents[OL]. [2016-10-02]. http://www.opengeospatial.org/standards
[5]GEO. GEOSS Core Architecture Implementation Report [OL]. [2016-10-02]. http://portal.opengeospatial.org/files/?artifact_id=24315
[6]Cossu R, Bally P, Colin O, et al. ESA grid processing on demand for fast access to earth observation data and rapid mapping of flood events[G]. Munich, Germany: European Geosciences Union General Assembly. 2008
[7]Sekiguchi S, Tanaka Y, Kojima I, et al. Design principles and IT overviews of the GEO grid[J]. IEEE Systems Journal, 2008, 2(3): 374-389
[8]Li G, Liu D, Huang Z, et al. Spatial data service models in grid environment[C] //Proc of the Int Symp on Parallel and Distributed Processing and Applications. Berlin: Springer, 2006: 598-602
[9]Huang Z C. On-demand data service for the next generation spatial data infrastructure[C] //Proc of the 5th Int Conf on Semantics, Knowledge and Grid. Piscataway, NJ: IEEE, 2009: 286-289
[10]Iosup A, Ostermann S, Yigitbasi M N, et al. Performance analysis of cloud computing services for many-tasks scientific computing[J]. IEEE Trans on Parallel and Distributed Systems, 2011, 22(6): 931-45
[11]NASA. NASA NEX[OL]. [2015-02-28]. http://aws.amazon.com/cn/nasa/nex/ [2015-02-28]
[12]Foster I, Zhao Y, Raicu I, et al. Cloud computing and grid computing 360-degree compared[C] //Proc of 2008 Grid Computing Environments Workshop. Piscataway, NJ: IEEE, 2008: 1-10
[13]Baumann P. The OGC Web coverage processing service (WCPS) standard[J]. Geoinformatica, 2010, 14(4): 447-479
[14]Davis B N, Werpy J, Friesz A, et al. Interactive access to LP DAAC satellite data archives through a combination of open-source and custom middleware Web services[J]. IEEE Geoscience and Remote Sensing Magazine, 2015, 3(4): 8-20
[15]Gao B C. NDWI—A normalized difference water index for remote sensing of vegetation liquid water from space[J]. Remote sensing of environment, 1996, 58(3): 257-266
Li Guoqing, born in 1968. PhD, professor and PhD supervisor. Senior member of CCF. His main research interests include high performance geocomputation, spatial data infrastructure, and digital earth.
Huang Zhenchun, born in 1975. PhD, associate professor. His main research interests include remote sensing data processing, high performance computing, and distributed computing.
Data Infrastructure for Remote Sensing Big Data: Integration, Management and On-Demand Service
Li Guoqing1and Huang Zhenchun2
1(InstituteofRemoteSensingandDigitalEarth,ChineseAcademyofSciences,Beijing100094)2(DepartmentofComputerScienceandTechnology,TsinghuaUniversity,Beijing100084)
The increasing growth of remote sensing data and geoscience research pushes earth sciences strongly and poses great challenges to data infrastructures for remote sensing big data, including the collection, storage, management, analysis and delivery. The de-fact remote sensing data infrastructures become bottleneck of the workflows for remote sensing data analysis because of their capability, scalability and performance. In this paper, data infrastructures for remote sensing big data are catalogued into 6 classes based on the features such as basic service unit, distributivity, heterogeneous, space-time continuation and on-demand processing. Then, architectures are designed for all the 6 classes of data infrastructures, and some implementation technologies such as data collection and integration, data storage and management, data service interface, and on-demand data processing, are discussed. With the architecture designs and implementation technologies, data infrastructures for remote sensing big data will provide PaaS (platform-as-a-service) and SaaS(software-as-a-service) services for developing much more remote sensing data analysis applications. With continuously growing data, tools and libraries in the infrastructures, users can easily develop analysis models to process remote sensing big data, create new applications based on these models, and exchange their knowledge each other by sharing models.
data infrastructure; remote sensing big data; on-demand processing; data integration; data management
2016-11-15;
2016-12-27
國家重點研發(fā)計劃項目(2016YFB0501504); 海南省重大科技計劃項目(ZDKJ2016021) This work was supported by the National Key Research and Development Program of China (2016YFB0501504), and the Grant of Hainan Provincial Department of Science and Technology (ZDKJ2016021).
黃震春(huangzc@tsinghua.edu.cn)
TP315