楊靜 河南大學軟件學院
云計算環(huán)境下大GML空間數(shù)據(jù)并行存取關(guān)鍵問題研究
楊靜 河南大學軟件學院
隨著互聯(lián)網(wǎng)、物聯(lián)網(wǎng)和我國對地觀測等技術(shù)的不斷成熟以及大GML應(yīng)用領(lǐng)域的不斷擴展,GML空間數(shù)據(jù)在不斷地增長,大GML數(shù)據(jù)時代已經(jīng)來臨。但是傳統(tǒng)的空間數(shù)據(jù)庫計算難以滿足大GML數(shù)據(jù)的所需要的高性能數(shù)據(jù)處理要求,而最近幾年流行的云計算技術(shù)具有高擴展性、高可靠性等特點,可以較好的解決大GML空間數(shù)據(jù)并行存取問題。
云計算 大GML空間數(shù)據(jù) 并行存取
通常,將互聯(lián)網(wǎng)或網(wǎng)絡(luò)比作云,而云計算是基于互聯(lián)網(wǎng)的相關(guān)服務(wù)的增加、使用和交付模式。云計算具有很強大的運算能力,能達到每秒10萬億次的運算,可以通過這種強大的模擬計算分析核爆炸,進行天氣變化預(yù)測,市場發(fā)展趨勢等其它的復(fù)雜模型。用戶使用云計算,可通過筆記本、移動端等方式接入到數(shù)據(jù)中心,然后根據(jù)自己的需求建模并分析計算[1]。
云計算涉及到的相關(guān)技術(shù)比較多,目前主要有編程模型、存取技術(shù)以及虛擬化技術(shù)等。
(一)編程模型:MapReduce模型是目前較為常用的編程計算模型,最早是由Google公司的Je ff Dean等人提出用于大數(shù)據(jù)的操作以及對應(yīng)數(shù)據(jù)建模處理分析。基于此,MapReduce模型在JeffDean等人的發(fā)展完善下,在Google公司里應(yīng)用非常廣泛。MapReduce模型可應(yīng)用于分布式排序、反向索引構(gòu)建、機器學習、機器分析以及文檔的聚類分析等等。MapReduce是指通過一組輸入的數(shù)據(jù)key/value對(鍵值對)產(chǎn)生另一組輸出的鍵值對。對于MapReduce編程系統(tǒng)的使用,程序員只需對業(yè)務(wù)的邏輯進行分析歸納總結(jié),設(shè)計出能對應(yīng)Map和Reduce函數(shù)的程序語言,使用方便并且效率高。通過使用MapReduce編程系統(tǒng)還能實現(xiàn)具體的分布式、高并發(fā)機制。
(二)存取技術(shù):存取技術(shù)是云計算系統(tǒng)中非常關(guān)鍵的一個技術(shù),它是以數(shù)據(jù)管理和存取為核心的技術(shù)體系,由于云計算系統(tǒng)的作用特點,其在運作時往往需要有很強大的存儲設(shè)備和硬件系統(tǒng),才能真正實現(xiàn)對大量繁雜且種類不同的數(shù)據(jù)進行存儲和訪問,這些系統(tǒng)和設(shè)備要協(xié)同工作并通過分布式文件系統(tǒng),集群技術(shù)等功能來完成業(yè)務(wù)和作業(yè),因此,存取技術(shù)是云計算中非常關(guān)鍵的一個技術(shù)環(huán)節(jié)。
(三)虛擬化技術(shù):虛擬化技術(shù)是云計算的關(guān)鍵技術(shù)之一,抽象化資源表示,并將實物轉(zhuǎn)化到邏輯層。通過虛擬化技術(shù)來實現(xiàn)云計算的大數(shù)據(jù)分析和存儲,但這并不意味著云計算只是簡單的虛擬化技術(shù),它需要互聯(lián)網(wǎng)各類技術(shù)交融[2]。
GML是一種IBM格式化文檔語言,是一種基于XML的用于編碼現(xiàn)實世界對象信息的標識語言,也是一種開放的”標準,規(guī)定中采用的是運用標題的級為標準來劃分文檔,將文檔分為章節(jié)、重要小節(jié)和次重要小節(jié),并且不會強制要求使用XML標識就可以對文檔中的各部件及其之間的關(guān)系進行描述。GML將現(xiàn)實世界的各個物質(zhì)統(tǒng)籌為要素,并且繼承了XML的所有優(yōu)點特性,提供了一套基本的幾何對象標簽和公共的數(shù)據(jù)模型,現(xiàn)在流行的GML模型主要有幾何模型、要素模型和拓撲模型等等。是開放的但同時也有約束和限制,比如對于所有兼容GML的系統(tǒng)來說,GML技術(shù)都要求每一個設(shè)備機器都要采用GML提供的幾何地物標簽來表示地物特征的幾何屬性,這種約束條件也給用戶在某些程度上帶來了一些便利。
(一)幾何模型:現(xiàn)階段幾何模型分為基本幾何、聚合幾何和復(fù)雜幾何。目前常用3.X版本。
(二)要素模型:地理要素包含一系列的空間與非空間屬性。要素模式feature.xsd能提供創(chuàng)建GML要素和要素集合的框架。它定義了抽象和具體的要素元素及類型。
(三)拓撲模型:空間拓撲是GML3.0版本新增加的內(nèi)容,通過使用拓撲基元Node、Edge、Face、TopoSolid以及這些基元之間的聯(lián)系描述來構(gòu)建拓撲關(guān)系,拓撲基元通常用來表達幾何基元Point、Curve、Surface、Solid。
根據(jù)云計算的特點,先把GML文檔實例對應(yīng)的Schema文檔解析出來存放在相應(yīng)的文檔里面,GML文檔存儲模型如下表1所示。

表1 GML模式文檔的邏輯存儲模型
在HBase表中列出Geometry來更好地表述空間幾何形狀以屬性,在Geometry下再設(shè)五列,分別為:MBR列族表示為存儲表達地理空間對象,Numpts列族表示存儲表達空間對象幾何形狀所擁有特征點的個數(shù),Points列族表示幾何形狀對象所擁有特征點的個數(shù),SRID列族表示存儲空間參考系的標識和ElemInfoArray列族表示對象幾何形狀中橢圓弧、圓弧、直線以及Bessel曲線連接這些其他信息。
一般來說,主要從兩個方面考慮GML的空間數(shù)據(jù)并行查詢。第一個是對所需查詢內(nèi)容的關(guān)鍵字進行檢索查詢;第二個是縮小搜索空間進行精準查詢,具體表現(xiàn)為根據(jù)給定的空間關(guān)系確定對應(yīng)的搜索空間,不能盲目隨機搜索查詢。
GML的數(shù)據(jù)對象包括數(shù)據(jù)的幾何屬性也包括其他的一些普通屬性,對于某些特定的數(shù)據(jù)對象,還具有拓撲的屬性。對于大量的GML數(shù)據(jù)對象通常需要先進行數(shù)據(jù)的過濾處理,一般先進行全局索引來獲得查詢的空間對象所存儲的位置信息,然后根據(jù)局部索引對空間對象進行子查詢的并行處理并得到結(jié)果。
本文重點介紹了云計算平臺的相關(guān)技術(shù)、GML簡介及其主要模型以及分析了在云計算環(huán)境下GML空間數(shù)據(jù)并行存取的模型選擇相關(guān)問題。
[1]吳學饒.云計算環(huán)境下大GML空間數(shù)據(jù)并行存取關(guān)鍵技術(shù)研究[D].江西理工大學,2015.
[2]劉艷俊,郭志恒,敖杰剛.云計算環(huán)境下GML的并行查詢研究[J].測繪標準化,2012,(02)∶23-25.
楊靜(1997-),河南開封人,河南大學,本科,研究方向:大數(shù)據(jù)、計算機算法;通訊作者:王振。