楊靜 河南大學(xué)軟件學(xué)院
云計算環(huán)境下大GML空間數(shù)據(jù)并行存取關(guān)鍵問題研究
楊靜 河南大學(xué)軟件學(xué)院
隨著互聯(lián)網(wǎng)、物聯(lián)網(wǎng)和我國對地觀測等技術(shù)的不斷成熟以及大GML應(yīng)用領(lǐng)域的不斷擴(kuò)展,GML空間數(shù)據(jù)在不斷地增長,大GML數(shù)據(jù)時代已經(jīng)來臨。但是傳統(tǒng)的空間數(shù)據(jù)庫計算難以滿足大GML數(shù)據(jù)的所需要的高性能數(shù)據(jù)處理要求,而最近幾年流行的云計算技術(shù)具有高擴(kuò)展性、高可靠性等特點,可以較好的解決大GML空間數(shù)據(jù)并行存取問題。
云計算 大GML空間數(shù)據(jù) 并行存取
通常,將互聯(lián)網(wǎng)或網(wǎng)絡(luò)比作云,而云計算是基于互聯(lián)網(wǎng)的相關(guān)服務(wù)的增加、使用和交付模式。云計算具有很強(qiáng)大的運算能力,能達(dá)到每秒10萬億次的運算,可以通過這種強(qiáng)大的模擬計算分析核爆炸,進(jìn)行天氣變化預(yù)測,市場發(fā)展趨勢等其它的復(fù)雜模型。用戶使用云計算,可通過筆記本、移動端等方式接入到數(shù)據(jù)中心,然后根據(jù)自己的需求建模并分析計算[1]。
云計算涉及到的相關(guān)技術(shù)比較多,目前主要有編程模型、存取技術(shù)以及虛擬化技術(shù)等。
(一)編程模型:MapReduce模型是目前較為常用的編程計算模型,最早是由Google公司的Je ff Dean等人提出用于大數(shù)據(jù)的操作以及對應(yīng)數(shù)據(jù)建模處理分析?;诖耍琈apReduce模型在JeffDean等人的發(fā)展完善下,在Google公司里應(yīng)用非常廣泛。MapReduce模型可應(yīng)用于分布式排序、反向索引構(gòu)建、機(jī)器學(xué)習(xí)、機(jī)器分析以及文檔的聚類分析等等。MapReduce是指通過一組輸入的數(shù)據(jù)key/value對(鍵值對)產(chǎn)生另一組輸出的鍵值對。對于MapReduce編程系統(tǒng)的使用,程序員只需對業(yè)務(wù)的邏輯進(jìn)行分析歸納總結(jié),設(shè)計出能對應(yīng)Map和Reduce函數(shù)的程序語言,使用方便并且效率高。通過使用MapReduce編程系統(tǒng)還能實現(xiàn)具體的分布式、高并發(fā)機(jī)制。
(二)存取技術(shù):存取技術(shù)是云計算系統(tǒng)中非常關(guān)鍵的一個技術(shù),它是以數(shù)據(jù)管理和存取為核心的技術(shù)體系,由于云計算系統(tǒng)的作用特點,其在運作時往往需要有很強(qiáng)大的存儲設(shè)備和硬件系統(tǒng),才能真正實現(xiàn)對大量繁雜且種類不同的數(shù)據(jù)進(jìn)行存儲和訪問,這些系統(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)實世界對象信息的標(biāo)識語言,也是一種開放的”標(biāo)準(zhǔn),規(guī)定中采用的是運用標(biāo)題的級為標(biāo)準(zhǔn)來劃分文檔,將文檔分為章節(jié)、重要小節(jié)和次重要小節(jié),并且不會強(qiáng)制要求使用XML標(biāo)識就可以對文檔中的各部件及其之間的關(guān)系進(jìn)行描述。GML將現(xiàn)實世界的各個物質(zhì)統(tǒng)籌為要素,并且繼承了XML的所有優(yōu)點特性,提供了一套基本的幾何對象標(biāo)簽和公共的數(shù)據(jù)模型,現(xiàn)在流行的GML模型主要有幾何模型、要素模型和拓?fù)淠P偷鹊?。是開放的但同時也有約束和限制,比如對于所有兼容GML的系統(tǒng)來說,GML技術(shù)都要求每一個設(shè)備機(jī)器都要采用GML提供的幾何地物標(biāo)簽來表示地物特征的幾何屬性,這種約束條件也給用戶在某些程度上帶來了一些便利。
(一)幾何模型:現(xiàn)階段幾何模型分為基本幾何、聚合幾何和復(fù)雜幾何。目前常用3.X版本。
(二)要素模型:地理要素包含一系列的空間與非空間屬性。要素模式feature.xsd能提供創(chuàng)建GML要素和要素集合的框架。它定義了抽象和具體的要素元素及類型。
(三)拓?fù)淠P停嚎臻g拓?fù)涫荊ML3.0版本新增加的內(nèi)容,通過使用拓?fù)浠狽ode、Edge、Face、TopoSolid以及這些基元之間的聯(lián)系描述來構(gòu)建拓?fù)潢P(guān)系,拓?fù)浠ǔS脕肀磉_(dá)幾何基元Point、Curve、Surface、Solid。
根據(jù)云計算的特點,先把GML文檔實例對應(yīng)的Schema文檔解析出來存放在相應(yīng)的文檔里面,GML文檔存儲模型如下表1所示。
表1 GML模式文檔的邏輯存儲模型
在HBase表中列出Geometry來更好地表述空間幾何形狀以屬性,在Geometry下再設(shè)五列,分別為:MBR列族表示為存儲表達(dá)地理空間對象,Numpts列族表示存儲表達(dá)空間對象幾何形狀所擁有特征點的個數(shù),Points列族表示幾何形狀對象所擁有特征點的個數(shù),SRID列族表示存儲空間參考系的標(biāo)識和ElemInfoArray列族表示對象幾何形狀中橢圓弧、圓弧、直線以及Bessel曲線連接這些其他信息。
一般來說,主要從兩個方面考慮GML的空間數(shù)據(jù)并行查詢。第一個是對所需查詢內(nèi)容的關(guān)鍵字進(jìn)行檢索查詢;第二個是縮小搜索空間進(jìn)行精準(zhǔn)查詢,具體表現(xiàn)為根據(jù)給定的空間關(guān)系確定對應(yīng)的搜索空間,不能盲目隨機(jī)搜索查詢。
GML的數(shù)據(jù)對象包括數(shù)據(jù)的幾何屬性也包括其他的一些普通屬性,對于某些特定的數(shù)據(jù)對象,還具有拓?fù)涞膶傩?。對于大量的GML數(shù)據(jù)對象通常需要先進(jìn)行數(shù)據(jù)的過濾處理,一般先進(jìn)行全局索引來獲得查詢的空間對象所存儲的位置信息,然后根據(jù)局部索引對空間對象進(jìn)行子查詢的并行處理并得到結(jié)果。
本文重點介紹了云計算平臺的相關(guān)技術(shù)、GML簡介及其主要模型以及分析了在云計算環(huán)境下GML空間數(shù)據(jù)并行存取的模型選擇相關(guān)問題。
[1]吳學(xué)饒.云計算環(huán)境下大GML空間數(shù)據(jù)并行存取關(guān)鍵技術(shù)研究[D].江西理工大學(xué),2015.
[2]劉艷俊,郭志恒,敖杰剛.云計算環(huán)境下GML的并行查詢研究[J].測繪標(biāo)準(zhǔn)化,2012,(02)∶23-25.
楊靜(1997-),河南開封人,河南大學(xué),本科,研究方向:大數(shù)據(jù)、計算機(jī)算法;通訊作者:王振。