張 文 ,孟令奎 ,周 揚 ,趙 銘 ,涂振發(fā) ,婁書榮
(1. 武漢大學(xué)遙感信息工程學(xué)院,湖北 武漢 430079;2. 北京北方數(shù)慧系統(tǒng)技術(shù)有限公司,北京 100080)
為了更好地促進(jìn)水利工作的效率和水平,遙感技術(shù)被引入到水利行業(yè),并逐步得到認(rèn)可和重視,應(yīng)用日益廣泛。我國的水利遙感部門從 20 世紀(jì) 80年代開始,就應(yīng)用航天、航空遙感及衛(wèi)星技術(shù)輔助開展水利工作,并將遙感技術(shù)逐步推廣到旱澇災(zāi)情的監(jiān)測,水質(zhì)、水環(huán)境的動態(tài)監(jiān)測,水利工程規(guī)劃及水資源調(diào)查等各個領(lǐng)域,已發(fā)揮越來越關(guān)鍵的作用[1-2]。
隨著國家對水利遙感工作的重視,遙感與水利的結(jié)合必將更加緊密。而遙感數(shù)據(jù)具有數(shù)據(jù)更新快、數(shù)據(jù)量海量、存儲管理相對復(fù)雜等特點,面對不斷增加的水利遙感獲取手段,現(xiàn)有的管理方式已難以適應(yīng)日益增長的數(shù)據(jù)管理與應(yīng)用需求,迫切需要提升數(shù)據(jù)管理能力和效率,研究多源水利遙感數(shù)據(jù)的管理機(jī)制。
水利遙感數(shù)據(jù)是以遙感為數(shù)據(jù)的獲取手段,綜合地面、航空、航天和衛(wèi)星遙感等多種技術(shù)手段,以地球表面為觀測對象所獲取的各種光學(xué)和數(shù)字影像數(shù)據(jù)?,F(xiàn)階段,水利遙感數(shù)據(jù)已經(jīng)逐步形成以衛(wèi)星遙感影像為主,其他遙感數(shù)據(jù)為輔,涵蓋多源化、多光譜、多尺度和多時態(tài)遙感數(shù)據(jù)的數(shù)據(jù)集合。
水利遙感數(shù)據(jù)具有數(shù)據(jù)源多樣,數(shù)據(jù)格式各異、海量及處理任務(wù)繁重,但數(shù)據(jù)處理產(chǎn)品的管理水平偏低,產(chǎn)品利用率較低等特點。許多水利遙感產(chǎn)品受到存儲管理系統(tǒng)的局限,往往只能為小部分業(yè)務(wù)系統(tǒng)提供數(shù)據(jù),使得大量經(jīng)過處理的產(chǎn)品數(shù)據(jù)被閑置,造成數(shù)據(jù)資源的極大浪費。為了更好地利用水利遙感數(shù)據(jù)推動水利的發(fā)展,應(yīng)當(dāng)根據(jù)水利遙感數(shù)據(jù)的特點,結(jié)合水利業(yè)務(wù)需求,設(shè)計和建設(shè)合理的水利遙感數(shù)據(jù)管理系統(tǒng)。
水利遙感數(shù)據(jù)根據(jù)水利業(yè)務(wù)的應(yīng)用需求進(jìn)行處理后,所生成的產(chǎn)品包括矢量數(shù)字地圖、遙感影像產(chǎn)品、水利相關(guān)的大量屬性數(shù)據(jù)等,數(shù)據(jù)的類型較為復(fù)雜,數(shù)據(jù)量也很大。水利遙感數(shù)據(jù)及其處理產(chǎn)品的管理,是構(gòu)建水利業(yè)務(wù)系統(tǒng)的重要數(shù)據(jù)支撐,直接影響水利業(yè)務(wù)系統(tǒng)的運行效率。因此,有效的數(shù)據(jù)存儲管理模式,是水利遙感數(shù)據(jù)及其產(chǎn)品在水利行業(yè)中應(yīng)用的重要保障。目前,水利遙感數(shù)據(jù)及產(chǎn)品的管理主要包括基于文件和數(shù)據(jù)庫的 2 種管理模式[3-4]。
1.2.1 基于文件的管理模式
影像文件是水利遙感數(shù)據(jù)的基本單元,以文件為單位組織水利遙感數(shù)據(jù),并通過多層文件目錄的形式進(jìn)行管理是傳統(tǒng)的管理模式,目前仍在普遍使用中?;谖募墓芾砟J骄哂袛?shù)據(jù)組織方式簡單、訪問便捷的特點,有利于維護(hù)數(shù)據(jù)的真實性。但是這種以文件為單位的管理模式存在著較大的安全隱患,容易發(fā)生數(shù)據(jù)泄漏或丟失。同時,基于文件的存儲和組織模式本身不夠靈活,提供數(shù)據(jù)的模式相對單一,不利于上層水利業(yè)務(wù)系統(tǒng)的應(yīng)用和擴(kuò)展。相對來說,基于文件的管理模式更適合于原始數(shù)據(jù)的管理,能夠為各級處理產(chǎn)品的質(zhì)量回溯提供可靠的數(shù)據(jù)源保障。但是,面對內(nèi)容復(fù)雜、格式各異的各類加工和處理后的數(shù)據(jù)成果,文件管理則遠(yuǎn)遠(yuǎn)達(dá)不到要求。
1.2.2 基于數(shù)據(jù)庫的管理模式
隨著遙感在水利行業(yè)應(yīng)用的不斷普及,水利遙感數(shù)據(jù)及產(chǎn)品必將呈現(xiàn)出爆炸式增長的趨勢。數(shù)據(jù)存儲管理的安全性、訪問的并發(fā)性和檢索的高效性都成為水利遙感數(shù)據(jù)及產(chǎn)品管理和應(yīng)用的極大挑戰(zhàn),數(shù)據(jù)庫技術(shù)很好地解決了這些問題,是存儲和管理水利遙感數(shù)據(jù)及產(chǎn)品的重要選擇。數(shù)據(jù)庫管理模式通過結(jié)構(gòu)化的方式管理數(shù)據(jù),支持?jǐn)?shù)據(jù)塊級的訪問和檢索。相對于文件管理模式,數(shù)據(jù)庫模式更加易于擴(kuò)展,能夠靈活地為上層應(yīng)用提供不同粒度和層次的數(shù)據(jù)服務(wù),能更好地適應(yīng)水利業(yè)務(wù)系統(tǒng)的發(fā)展需求。
在從文件管理模式向數(shù)據(jù)庫管理模式的過渡中,還出現(xiàn)過文件-數(shù)據(jù)庫混合管理模式,主要原理是利用數(shù)據(jù)庫系統(tǒng)管理結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)的元信息,采用文件模式管理非結(jié)構(gòu)化的水利遙感影像等數(shù)據(jù)。盡管相比文件管理模式效率有所提高,但是采用文件模式管理水利遙感影像,難以解決數(shù)據(jù)的異構(gòu)性和系統(tǒng)在安全性、并發(fā)訪問、存取效率等方面的難題,因此并不普及??偟膩碚f,基于數(shù)據(jù)庫的管理模式不論是靈活性、安全性還是存取性能,都遠(yuǎn)遠(yuǎn)超越了文件系統(tǒng),是水利遙感數(shù)據(jù)管理的必然發(fā)展方向。
水利遙感數(shù)據(jù)及產(chǎn)品是空間數(shù)據(jù)的一部分,除了結(jié)構(gòu)化的屬性信息,還包含大量半結(jié)構(gòu)化、非結(jié)構(gòu)化的空間數(shù)據(jù),傳統(tǒng)的數(shù)據(jù)庫采用結(jié)構(gòu)化的方式管理數(shù)據(jù),難以直接實現(xiàn)對這些數(shù)據(jù)的管理。
空間數(shù)據(jù)庫引擎是利用數(shù)據(jù)庫進(jìn)行空間數(shù)據(jù)管理的核心技術(shù),位于應(yīng)用程序和數(shù)據(jù)庫管理系統(tǒng)之間,為各類空間數(shù)據(jù)在數(shù)據(jù)庫系統(tǒng)中的輸入和輸出提供統(tǒng)一接口,是開放且基于標(biāo)準(zhǔn)的中間件技術(shù)[3-4]??臻g數(shù)據(jù)庫引擎主要提供空間數(shù)據(jù)的基本處理、存儲、管理、檢索和訪問功能,是數(shù)據(jù)庫系統(tǒng)的“空間”擴(kuò)展模塊。目前,市場上較為成熟的空間數(shù)據(jù)庫引擎產(chǎn)品有很多,如 ArcSDE[5-7],Oracle Spatial[8-10]等,可以說各有千秋。根據(jù)存取機(jī)理、系統(tǒng)結(jié)構(gòu)、應(yīng)用需求等方面的不同,不同的空間數(shù)據(jù)庫引擎在具體的功能上存在著較大差異,但總的來說,都應(yīng)具有以下特點:
1)支持海量數(shù)據(jù)管理。空間數(shù)據(jù)本身具有海量特性,作為空間數(shù)據(jù)與數(shù)據(jù)庫系統(tǒng)之間的連接紐帶,空間數(shù)據(jù)庫引擎首先必須解決海量數(shù)據(jù)的存儲和管理能力。
2)安全管理與并發(fā)控制。安全性和并發(fā)性是網(wǎng)絡(luò)環(huán)境下數(shù)據(jù)管理的基本要求,空間數(shù)據(jù)庫引擎必須解決數(shù)據(jù)的存取安全,保障多用戶并發(fā)下的訪問性能。
3)開放的數(shù)據(jù)模型。空間數(shù)據(jù)庫引擎要保證多種異構(gòu)的空間數(shù)據(jù)能夠?qū)霐?shù)據(jù)庫,必須設(shè)計開放的數(shù)據(jù)模型,以支持異構(gòu)數(shù)據(jù)的統(tǒng)一存儲和管理。
空間數(shù)據(jù)庫引擎技術(shù)為水利遙感數(shù)據(jù)及產(chǎn)品的數(shù)據(jù)庫管理提供了技術(shù)保障,也使得多源水利遙感數(shù)據(jù)及產(chǎn)品的一體化管理成為可能?;诳臻g數(shù)據(jù)庫引擎的多源水利遙感數(shù)據(jù)一體化管理框架如圖 1所示。
空間數(shù)據(jù)庫引擎可以在水利遙感數(shù)據(jù)業(yè)務(wù)處理、數(shù)據(jù)庫管理和水利應(yīng)用等系統(tǒng)之間建立橋梁。以開放的數(shù)據(jù)模型為支撐,空間數(shù)據(jù)庫引擎向上層的水利遙感業(yè)務(wù)處理系統(tǒng)提供通用的數(shù)據(jù)存儲接口,支持包括矢量、柵格和屬性等多種類型的數(shù)據(jù)產(chǎn)品的存儲需求。同時,空間數(shù)據(jù)庫引擎能夠屏蔽水利遙感數(shù)據(jù)產(chǎn)品的復(fù)雜性和異構(gòu)性,向應(yīng)用系統(tǒng)提供統(tǒng)一的訪問接口。應(yīng)用系統(tǒng)無需關(guān)心數(shù)據(jù)的格式、存儲方式和位置,只需要向空間數(shù)據(jù)庫引擎發(fā)出訪問請求,系統(tǒng)自動根據(jù)請求對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行檢索,并將獲得的結(jié)果以統(tǒng)一的方式返回。當(dāng)水利應(yīng)用系統(tǒng)有再處理的數(shù)據(jù)產(chǎn)生時,也可以將數(shù)據(jù)通過空間數(shù)據(jù)庫引擎上傳到數(shù)據(jù)庫中管理,保證數(shù)據(jù)能被更多的應(yīng)用訪問和利用。
圖1 基于空間數(shù)據(jù)庫引擎的多源水利遙感數(shù)據(jù)一體化管理框架
結(jié)合水利遙感數(shù)據(jù)及產(chǎn)品的管理需求,以空間數(shù)據(jù)庫引擎為核心,開發(fā)了面向 Oracle 數(shù)據(jù)庫系統(tǒng),支持多源水利遙感數(shù)據(jù)存儲、檢索和訪問的數(shù)據(jù)管理系統(tǒng)。多源水利遙感數(shù)據(jù)管理系統(tǒng)采用 Visual Studio.Net 2005 為基本開發(fā)環(huán)境,基于 C# 語言開發(fā)。系統(tǒng)采用了 Client/Server 模式,支持對異構(gòu)的水利遙感影像、數(shù)字地圖,以及水利相關(guān)的屬性數(shù)據(jù)等的一體化存儲與管理??臻g數(shù)據(jù)庫引擎是服務(wù)器端的重要組件,主要支持多源水利遙感數(shù)據(jù)的存儲、檢索和訪問,保證用戶通過簡單的用戶界面操作就能夠完成多源水利遙感數(shù)據(jù)的入庫存儲和訪問、下載。
空間數(shù)據(jù)庫引擎的設(shè)計主要借鑒 Oracle Spatial和 ArcSDE 的思想,同時考慮到水利業(yè)務(wù)的具體需求,形成柵格、矢量和屬性 3 大數(shù)據(jù)管理模塊,具體結(jié)構(gòu)如圖 2 所示。
圖2 空間數(shù)據(jù)庫引擎的結(jié)構(gòu)圖
3.1.1 柵格數(shù)據(jù)引擎
柵格數(shù)據(jù)的管理通過通用柵格數(shù)據(jù)模型實現(xiàn),目前支持對 .bmp,.jpg,.tif 及 dem 數(shù)據(jù)的管理。其中,參考了 Oracle Spatial GeoRaster[9-10]的面向?qū)ο蟮乃枷?,將每個柵格數(shù)據(jù)作為 1 個對象進(jìn)行處理,并對數(shù)據(jù)模型的庫表數(shù)量進(jìn)行精簡;存儲策略上參考 ArcSDE 的方法,最終采用類似于 ArcSDE 并進(jìn)行精簡的“系統(tǒng)總表——柵格數(shù)據(jù)集——柵格數(shù)據(jù)塊”的分層模式。
在入庫的過程中,完成柵格金字塔的構(gòu)建和數(shù)據(jù)分塊存儲,系統(tǒng)默認(rèn)采用最鄰近像元法實現(xiàn)金字塔的重采樣??紤]到采用 128×128 的分塊大小在存儲空間利用率,存儲、數(shù)據(jù)傳輸效率等方面綜合效果最佳,系統(tǒng)選擇 128×128 為默認(rèn)的分塊大小。分塊和重采樣的過程都利用并行機(jī)制進(jìn)行處理,以提高系統(tǒng)的運行效率。柵格數(shù)據(jù)管理模塊為水利遙感數(shù)據(jù)及其影像產(chǎn)品的管理提供了基本保障。
3.1.2 矢量數(shù)據(jù)引擎
矢量數(shù)據(jù)的管理通過通用矢量數(shù)據(jù)模型實現(xiàn),目前主要支持 shpfile 和 dxf 數(shù)據(jù)的管理,并實現(xiàn)異構(gòu)矢量數(shù)據(jù)的統(tǒng)一 KML(Keyhole 標(biāo)記語言)輸出。模型的設(shè)計主要借鑒 ArcSDE 的矢量數(shù)據(jù)模型。矢量數(shù)據(jù)文件的解析和入庫過程通過并行機(jī)制進(jìn)行處理,數(shù)據(jù)的輸出能夠支持基于圖層的多文件數(shù)據(jù)輸出。矢量數(shù)據(jù)管理功能為數(shù)字水利專題圖的存儲和管理提供支持。
3.1.3 屬性數(shù)據(jù)引擎
考慮到水利遙感應(yīng)用中存在著大量水利業(yè)務(wù)相關(guān)的屬性數(shù)據(jù),因此,空間數(shù)據(jù)庫引擎的設(shè)計中保留了擴(kuò)展的屬性數(shù)據(jù)管理模塊,支持通用數(shù)據(jù)庫表的創(chuàng)建、刪除、更新及表項的檢索功能,支持面向水利屬性數(shù)據(jù)的二次開發(fā)。
此外,為了保障數(shù)據(jù)的安全和系統(tǒng)的檢索效率,在空間數(shù)據(jù)庫引擎的設(shè)計中,還引入索引優(yōu)化機(jī)制和雙層的用戶管理機(jī)制,這樣有助于提升空間數(shù)據(jù)庫引擎的存取管理性能。
客戶端是數(shù)據(jù)瀏覽系統(tǒng),數(shù)據(jù)瀏覽客戶端向服務(wù)器發(fā)送數(shù)據(jù)請求,由服務(wù)器從數(shù)據(jù)庫中直接取出請求的數(shù)據(jù)并返回給客戶端,供用戶瀏覽。數(shù)據(jù)瀏覽系統(tǒng)基于 OpenGL+ C# 開發(fā),支持高效的影像及矢量數(shù)據(jù)的渲染和繪制。由于影像數(shù)據(jù)采用了分塊存儲及金字塔分層結(jié)構(gòu)管理,矢量數(shù)據(jù)支持基于圖層的管理和輸出,同時客戶端采用了高速緩存技術(shù),因而能夠提供高質(zhì)量的瀏覽效果。影像數(shù)據(jù)會隨著用戶關(guān)注區(qū)域的縮小,不斷調(diào)用更高分辨率的數(shù)據(jù),為用戶提供 1 種由粗到細(xì)的動態(tài)視覺效果,同時盡可能地減小數(shù)據(jù)傳輸量。為了滿足用戶在數(shù)據(jù)瀏覽過程中的編輯需要,客戶端還能夠支持對矢量要素的編輯。系統(tǒng)的客戶端瀏覽效果如圖 3 所示。
圖3 系統(tǒng)的客戶端實時瀏覽效果圖
遙感影像數(shù)據(jù)是水利遙感數(shù)據(jù)及產(chǎn)品的主體,各級處理產(chǎn)品需要直接為不同的水利業(yè)務(wù)提供數(shù)據(jù)支持。同時,由于數(shù)據(jù)表現(xiàn)力豐富,能夠真實反映地表的特征,正射遙感影像多作為水利應(yīng)用系統(tǒng)的基礎(chǔ)數(shù)據(jù),在各種水利應(yīng)用系統(tǒng)中普遍被作為底圖使用。遙感影像數(shù)據(jù)本身數(shù)據(jù)量龐大,而且各級產(chǎn)品和新獲取數(shù)據(jù)的更新相對矢量數(shù)據(jù)更加頻繁,因此系統(tǒng)的性能主要取決于遙感影像數(shù)據(jù)的存取性能。
經(jīng)過實際測試,系統(tǒng)的入庫效率在影像分塊大小為 64×64 和 128×128 的情況下,分別比 ArcSDE提高了 50% 和 30%。系統(tǒng)能夠在 24 h 內(nèi),完成≥ 100 GB 數(shù)據(jù)的入庫存儲管理,這足以滿足海量水利遙感數(shù)據(jù)的實時存儲需求。同時,系統(tǒng)的數(shù)據(jù)出庫效率明顯優(yōu)于 ArcSDE。在數(shù)據(jù)尺寸比較小的情況下相比 ArcSDE 效率提高了 15%~30%,隨著數(shù)據(jù)尺寸的增大,入庫效率較 ArcSDE 提高 30% 以上。在分塊大小為 128×128 時,本系統(tǒng)的出庫效率相比ArcSDE 進(jìn)一步提高,平均提高幅度超過 50%,改進(jìn)效率明顯。
針對水利行業(yè)中日益增長的遙感數(shù)據(jù)產(chǎn)品應(yīng)用和管理需求,研究并提出了面向數(shù)據(jù)庫的多源水利遙感數(shù)據(jù)的一體化管理機(jī)制,開發(fā)并實現(xiàn)了基于空間數(shù)據(jù)庫引擎的多源水利遙感數(shù)據(jù)的一體化管理系統(tǒng)。該系統(tǒng)兼顧多種水利遙感數(shù)據(jù)及產(chǎn)品,能夠同時滿足柵格、矢量及屬性等多源數(shù)據(jù)的管理需求,有效簡化了多源數(shù)據(jù)的管理形式,將其統(tǒng)一采用空間數(shù)據(jù)庫引擎和數(shù)據(jù)庫技術(shù)進(jìn)行管理,使得多源水利遙感數(shù)據(jù)的管理具有更好的靈活性、擴(kuò)展性,也更易于維護(hù)和更新。經(jīng)過系統(tǒng)測試,證明該系統(tǒng)具有良好的數(shù)據(jù)存取性能,能夠為上層的水利應(yīng)用提供可靠的數(shù)據(jù)保障。當(dāng)然,目前系統(tǒng)仍然存在一些不足,需從以下 2 個方面進(jìn)行改進(jìn):
1)目前,該數(shù)據(jù)管理系統(tǒng)主要面向 Oracle 數(shù)據(jù)庫,作為通用的水利遙感數(shù)據(jù)管理平臺,顯然是不夠的,因此,下一步的工作主要是面向多種常用數(shù)據(jù)庫(包括 SQL Server 2000,SQL Server 2005,DB2 等)的擴(kuò)展,使得空間數(shù)據(jù)庫引擎能夠屏蔽數(shù)據(jù)庫系統(tǒng)的異構(gòu)性,提供存儲管理服務(wù)。
2)針對水利相關(guān)的屬性數(shù)據(jù),拓展屬性數(shù)據(jù)引擎,保證整個系統(tǒng)能夠結(jié)合水利業(yè)務(wù)實際情況,更好地滿足水利遙感數(shù)據(jù)及產(chǎn)品的存儲管理需求。
總之,遙感和水利業(yè)務(wù)的結(jié)合必將更加緊密,面向數(shù)據(jù)庫為水利遙感數(shù)據(jù)及產(chǎn)品研究和開發(fā)適合的數(shù)據(jù)存儲管理平臺,是水利遙感發(fā)展的必然需求,也必將推動遙感在水利行業(yè)更多、更廣、更深的應(yīng)用。
[1]鐘劭南. 水利遙感的應(yīng)用現(xiàn)狀與未來[J]. 中國航天,1999 (9): 8-12.
[2]路京選. 水利遙感應(yīng)用技術(shù)研究進(jìn)展回顧與展望[J]. 中國水利水電科學(xué)研究院學(xué)報,2008, 6 (3): 224-230.
[3]吳信才. 空間數(shù)據(jù)庫[M]. 北京:科學(xué)出版社,2009: 92-114.
[4]孫忠華. 時空過程數(shù)據(jù)引擎[D]. 武漢:武漢大學(xué),2004:3-10.
[5]Don Murray, Dale Lutz. ESRI's Spatial Database Engine[EB/OL]. [2011-01-05]. http://proceedings.esri.com/library/userconf/proc96/to100/pap094/p94.htm.
[6]Robert West. Understanding ArcSDE[M].USA: ESRI Press,2001: 2-51.
[7]夏凱. 主流空間數(shù)據(jù)庫引擎技術(shù)分析和優(yōu)化方法研究[D].杭州:浙江大學(xué),2004: 24-37.
[8]黃成,丁琳,張保鋼,等. Oracle GeoRaster 的數(shù)據(jù)存儲研究及其與 ArcSDE 性能的對比[J]. 北京測繪,2007 (1):5-8.
[9]Chuck Murray, Dan Abugov, Nicole Alexander, et al. Oracle Spatial User's Guide and Reference 10g Release2 (10.2)[M].USA: Oracle Corporation, 2006: 27-197.
[10]Chuck Murray, Janet Blowney. Oracle Spatial GeoRaster 10g Release2 (10.2) [M]. USA: Oracle Corporation, 2006:3-17.