国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Libevent的柵格數(shù)據(jù)服務(wù)引擎設(shè)計(jì)與實(shí)現(xiàn)

2016-05-04 07:06代軍普
關(guān)鍵詞:WEB服務(wù)柵格數(shù)據(jù)

代軍普

(中國(guó)人民解放軍 61175部隊(duì), 江蘇 南京 210049)

?

基于Libevent的柵格數(shù)據(jù)服務(wù)引擎設(shè)計(jì)與實(shí)現(xiàn)

代軍普

(中國(guó)人民解放軍 61175部隊(duì), 江蘇 南京 210049)

摘要:針對(duì)網(wǎng)絡(luò)化三維可視化應(yīng)用系統(tǒng)柵格數(shù)據(jù)服務(wù)需求,設(shè)計(jì)了柵格數(shù)據(jù)服務(wù)引擎的總體框架和相關(guān)數(shù)據(jù)操作接口,探討了基于libevent的柵格數(shù)據(jù)服務(wù)引擎的具體實(shí)現(xiàn)方法,構(gòu)建了一套輕量級(jí)、高性能、易操作的柵格數(shù)據(jù)服務(wù)引擎,該引擎性能大大優(yōu)于主流商業(yè)軟件,在高分遙感影像數(shù)據(jù)管理應(yīng)用中發(fā)揮了重要作用.

關(guān)鍵詞:空間數(shù)據(jù)引擎; 柵格數(shù)據(jù); Web服務(wù); Libevent

隨著對(duì)地觀測(cè)數(shù)據(jù)獲取能力的逐步提高和航空、航天偵察體系的逐漸完善,空間對(duì)地觀測(cè)數(shù)據(jù)在時(shí)間分辨率、空間分辨率和光譜分辨率等方面都得到迅速提高.如何收集、處理、存儲(chǔ)、分發(fā)和管理各種地理空間數(shù)據(jù),通過“網(wǎng)絡(luò)中心數(shù)據(jù)”策略和網(wǎng)絡(luò)數(shù)據(jù)服務(wù)全面提高地理空間數(shù)據(jù)服務(wù)支持能力,確保無論何時(shí)何地都能為用戶提供完整可用的高精度地理空間數(shù)據(jù)服務(wù),是地理空間數(shù)據(jù)服務(wù)應(yīng)用的重要研究?jī)?nèi)容,地理空間數(shù)據(jù)服務(wù)引擎技術(shù)研究是實(shí)現(xiàn)該目標(biāo)的重要途徑.

美國(guó)環(huán)境系統(tǒng)研究所(Environmental Systems Research Institute,ESRI)最早提出了空間數(shù)據(jù)庫(kù)引擎(Spatial Database Engine,SDE)的概念并進(jìn)行實(shí)踐.SDE是一個(gè)向關(guān)系數(shù)據(jù)庫(kù)中加入空間數(shù)據(jù)及其位置、形狀等要素信息的空間數(shù)據(jù)模型,實(shí)際上是一組基于空間數(shù)據(jù)庫(kù)的程序集[1].目前,大型數(shù)據(jù)庫(kù)廠商和GIS軟件商都在致力于開發(fā)空間數(shù)據(jù)庫(kù)引擎,代表性的產(chǎn)品有Oracle公司的Oracle SDO、ESRI公司的ArcSDE、Informix公司的DataBlade、MapInfo公司的SpatialWare、北京超圖公司的SuperMap SDX+等,這些商用空間數(shù)據(jù)庫(kù)引擎通常都支持比較豐富的地理空間數(shù)據(jù)模型,并且與主流關(guān)系數(shù)據(jù)庫(kù)的兼容性較好,功能和通用性都比較強(qiáng).但在過于強(qiáng)調(diào)功能和通用性的情況下,導(dǎo)致軟件體量龐大、安裝配置難度高、接口和二次開發(fā)復(fù)雜,在靈活性和功能定制方面都存在不足,服務(wù)性能難以滿足三維可視化應(yīng)用系統(tǒng)的網(wǎng)絡(luò)化柵格數(shù)據(jù)服務(wù)支持.為此本文主要針對(duì)柵格數(shù)據(jù)的特點(diǎn)和三維可視化應(yīng)用系統(tǒng)的網(wǎng)絡(luò)化柵格數(shù)據(jù)服務(wù)應(yīng)用需求,基于libevnet設(shè)計(jì)并實(shí)現(xiàn)了一套輕量級(jí)、高性能、易操作的柵格數(shù)據(jù)服務(wù)引擎(GeoXtreme Engine,GXEngine),作為柵格數(shù)據(jù)庫(kù)管理系統(tǒng)和應(yīng)用程序間的中間件,為用戶提供一組對(duì)海量柵格數(shù)據(jù)進(jìn)行操作的開放接口,在海量柵格數(shù)據(jù)的管理和分發(fā)應(yīng)用服務(wù)中發(fā)揮了重要作用.

1柵格數(shù)據(jù)服務(wù)引擎設(shè)計(jì)

本文提及的柵格數(shù)據(jù)服務(wù)引擎的作用對(duì)象主要包括遙感影像、柵格地圖和數(shù)字高程模型等柵格數(shù)據(jù).由于數(shù)據(jù)類型固定、數(shù)據(jù)量大但結(jié)構(gòu)簡(jiǎn)單,在柵格數(shù)據(jù)服務(wù)引擎設(shè)計(jì)過程中不需要考慮復(fù)雜的數(shù)據(jù)模型和通用性.為了與柵格數(shù)據(jù)的特點(diǎn)以及存貯管理和應(yīng)用需求相適應(yīng),在設(shè)計(jì)柵格數(shù)據(jù)服務(wù)引擎時(shí)主要考慮了以下幾個(gè)基本要求[2-4]:

(1)數(shù)據(jù)一體化存儲(chǔ)管理.保證了數(shù)據(jù)的完整性,柵格數(shù)據(jù)管理系統(tǒng)要能統(tǒng)一存儲(chǔ)柵格數(shù)據(jù)及其屬性數(shù)據(jù),同時(shí)支持本地文件、數(shù)據(jù)庫(kù)等多種存貯管理方式,并能實(shí)現(xiàn)文件與數(shù)據(jù)庫(kù)表的相互轉(zhuǎn)換.

(2)統(tǒng)一開放的數(shù)據(jù)訪問接口.對(duì)用戶提供統(tǒng)一開放的數(shù)據(jù)訪問接口,通過該接口,用戶可以完成存儲(chǔ)、讀取、檢索、管理、更新數(shù)據(jù)等一系列基本數(shù)據(jù)操作.

(3)多種服務(wù)應(yīng)用模式:柵格數(shù)據(jù)服務(wù)應(yīng)支持通過本地和Web等多種服務(wù)模式,可滿足本地、C/S、B/S等多種服務(wù)應(yīng)用模式的數(shù)據(jù)訪問需求.

(4)多用戶并發(fā)訪問.在確保數(shù)據(jù)的一致性和安全性的基礎(chǔ)上支持多用戶并發(fā)訪問控制.

(5)高效的空間數(shù)據(jù)查詢檢索.柵格數(shù)據(jù)服務(wù)引擎可通過高效的索引機(jī)制和緩存機(jī)制來組織和管理柵格數(shù)據(jù)管理系統(tǒng)中空間數(shù)據(jù),并能提供高效的空間數(shù)據(jù)查詢和檢索,能滿足可視化應(yīng)用數(shù)據(jù)服務(wù)需求.

(6)完善的安全訪問機(jī)制.提供比較完善的安全訪問機(jī)制,確保數(shù)據(jù)的安全和合理使用,同時(shí)保持柵格數(shù)據(jù)服務(wù)系統(tǒng)的安全和穩(wěn)定性.

1.1功能設(shè)計(jì)

根據(jù)以上對(duì)柵格數(shù)據(jù)服務(wù)引擎的分析,柵格數(shù)據(jù)服務(wù)引擎應(yīng)包括柵格數(shù)據(jù)上載更新、柵格數(shù)據(jù)提取及提供柵格數(shù)據(jù)服務(wù)的數(shù)據(jù)存貯管理、運(yùn)行維護(hù)等關(guān)鍵后臺(tái)支撐等功能模塊[4-6],其總體功能及結(jié)構(gòu)關(guān)系如圖1所示.

圖1 柵格數(shù)據(jù)服務(wù)引擎內(nèi)部功能模塊關(guān)系

數(shù)據(jù)存貯管理:在對(duì)海量多源異構(gòu)柵格數(shù)據(jù)進(jìn)行統(tǒng)一編碼的基礎(chǔ)上,一體化組織各類數(shù)據(jù)產(chǎn)品并進(jìn)行存貯,為用戶提供數(shù)據(jù)錄入、數(shù)據(jù)檢索、數(shù)據(jù)下載等后臺(tái)支撐管理服務(wù).

柵格數(shù)據(jù)上載更新:柵格數(shù)據(jù)類型繁多,包括各種來源、各種時(shí)相的多源多分辨率數(shù)據(jù),同時(shí)數(shù)據(jù)量非常大,數(shù)據(jù)管理復(fù)雜,因此數(shù)據(jù)管理是柵格數(shù)據(jù)服務(wù)的一項(xiàng)關(guān)鍵后臺(tái)支撐技術(shù),數(shù)據(jù)管理應(yīng)該采用面向服務(wù)的方式實(shí)現(xiàn).

柵格數(shù)據(jù)檢索:將柵格數(shù)據(jù)對(duì)象中的重要信息抽出,加以組織,賦予語(yǔ)意,建立關(guān)聯(lián)關(guān)系,同時(shí)根據(jù)數(shù)據(jù)存貯編碼規(guī)范,進(jìn)行簡(jiǎn)單、復(fù)雜或綜合的信息查詢,以快速高效地確定柵格數(shù)據(jù)資源的有效性和位置所在,促進(jìn)所需柵格數(shù)據(jù)資源的發(fā)現(xiàn)和檢索.

柵格數(shù)據(jù)提取:提供統(tǒng)一的訪問接口,能夠以本地、數(shù)據(jù)庫(kù)、Web等多種模式實(shí)現(xiàn)不同柵格數(shù)據(jù)的統(tǒng)一訪問和透明操作,滿足用戶的柵格數(shù)據(jù)服務(wù)應(yīng)用需求.

后臺(tái)運(yùn)維管理:后臺(tái)運(yùn)維管理作用于系統(tǒng)構(gòu)造及系統(tǒng)運(yùn)行的全過程,系統(tǒng)運(yùn)行管理平臺(tái)的主要功能是維護(hù)系統(tǒng)的基本信息,實(shí)現(xiàn)系統(tǒng)初始化、通信、并發(fā)控制、安全機(jī)制、日志管理等,進(jìn)而保障柵格數(shù)據(jù)服務(wù)引擎支撐服務(wù)的正常運(yùn)行.

1.2服務(wù)接口設(shè)計(jì)

柵格數(shù)據(jù)庫(kù)管理系統(tǒng)后臺(tái)需要解決大量數(shù)據(jù)存貯管理、并發(fā)控制、安全訪問等方面的基礎(chǔ)支撐工作,以提高數(shù)據(jù)的訪問效率和用戶的易操作性[6];但對(duì)用戶來說,柵格數(shù)據(jù)服務(wù)引擎需要針對(duì)不同的文件類型與組織結(jié)構(gòu),運(yùn)用虛擬化思想,將多源、異構(gòu)、多時(shí)相的影像數(shù)據(jù)實(shí)體資源虛擬化成統(tǒng)一的邏輯資源視圖的描述方法,為虛擬文件的可視化表達(dá)提供統(tǒng)一的訪問接口,實(shí)現(xiàn)不同柵格數(shù)據(jù)的統(tǒng)一訪問方式和透明操作.

為滿足封裝設(shè)計(jì)和柵格數(shù)據(jù)通信、數(shù)據(jù)存貯、管理和處理等任務(wù)目標(biāo),采用面向?qū)ο蟮脑O(shè)計(jì)思想和方法對(duì)柵格數(shù)據(jù)服務(wù)引擎進(jìn)行設(shè)計(jì),柵格數(shù)據(jù)服務(wù)引擎提供的外部服務(wù)接口主要以基于COM組件技術(shù)的數(shù)據(jù)訪問接口提供,具體包括如下幾個(gè)主要接口:

IGX_MainCtrl(主控接口);

IGX_DBInfo(數(shù)據(jù)源信息查詢接口);

IGX_DBConnect(連接接口);

IGX_DBIndex(柵格數(shù)據(jù)索引接口);

IGX_DBManager(柵格數(shù)據(jù)管理接口);

IGX_Util(實(shí)用工具接口);

IGX_Security(數(shù)據(jù)和用戶安全機(jī)制接口)

客戶端應(yīng)用程序利用柵格數(shù)據(jù)服務(wù)引擎提供的外部接口進(jìn)行柵格數(shù)據(jù)上載更新操作時(shí)通常要經(jīng)歷創(chuàng)建主控接口、連接?xùn)鸥駭?shù)據(jù)、查詢或創(chuàng)建數(shù)據(jù)管理對(duì)象、數(shù)據(jù)區(qū)域空間索引、柵格數(shù)據(jù)上載更新等操作.數(shù)據(jù)的上載更新主要支持本地操作.數(shù)據(jù)服務(wù)通常要經(jīng)歷創(chuàng)建主控接口、連接?xùn)鸥駭?shù)據(jù)、查詢數(shù)據(jù)管理對(duì)象、目標(biāo)區(qū)域數(shù)據(jù)空間索引、柵格數(shù)據(jù)獲取等操作,在網(wǎng)絡(luò)及Web服務(wù)環(huán)境下還需要對(duì)用戶進(jìn)行安全機(jī)制驗(yàn)證.

2基于libevent的柵格數(shù)據(jù)服務(wù)引擎實(shí)現(xiàn)

在柵格數(shù)據(jù)服務(wù)引擎Web服務(wù)應(yīng)用中,本文使用libevent作為其網(wǎng)絡(luò)底層庫(kù),使得在進(jìn)行Web服務(wù)接口開發(fā)過程中只需要專注于服務(wù)事件本身的響應(yīng)和處理,而不必關(guān)心網(wǎng)絡(luò)服務(wù)的底層協(xié)議和實(shí)現(xiàn),可降低開發(fā)難度,又能發(fā)揮成熟第三方庫(kù)長(zhǎng)迭代開發(fā)周期形成的穩(wěn)定、高效優(yōu)勢(shì),更好地保證了在柵格數(shù)據(jù)服務(wù)器連接數(shù)增加的情況下,也能充分發(fā)揮I/O性能.

2.1Libevent簡(jiǎn)介

Libevent是一個(gè)輕量級(jí)的開源高性能網(wǎng)絡(luò)庫(kù),使用者眾多.作為底層的網(wǎng)絡(luò)庫(kù),Libevent已經(jīng)在Netchat、 memcached、Vomit Nylon等中廣泛的使用.Libevent有幾個(gè)顯著的亮點(diǎn):輕量級(jí),專注于網(wǎng)絡(luò);事件驅(qū)動(dòng),性能高;源代碼精煉、易讀;跨平臺(tái),支持Windows、Linux、BSD和Mac OS等;支持多種I/O多路復(fù)用;支持定時(shí)器、信號(hào)等事件;注冊(cè)事件優(yōu)先級(jí)等[5].

Libevent本身就是一個(gè)典型的事件驅(qū)動(dòng)設(shè)計(jì)模式--Reactor模型,具有快速響應(yīng)能力、簡(jiǎn)單高效的編程接口、可擴(kuò)展性強(qiáng)、可復(fù)用性高等優(yōu)點(diǎn),是編寫高性能網(wǎng)絡(luò)服務(wù)器的必備模式之一.

2.2基于libevent的Web服務(wù)實(shí)現(xiàn)

Libevent庫(kù)的使用極大地簡(jiǎn)化了柵格數(shù)據(jù)Web服務(wù)的實(shí)現(xiàn),使得編寫Web高并發(fā)響應(yīng)柵格數(shù)據(jù)服務(wù)器變得更加容易.利用libevent構(gòu)建Web服務(wù)對(duì)客戶端的數(shù)據(jù)請(qǐng)求進(jìn)行響應(yīng)的整個(gè)過程主要包括如下幾個(gè)步驟(http://libevent.org):

(1)初始化:初始化libevent API和相關(guān)環(huán)境,設(shè)置服務(wù)器端的IP地址及監(jiān)聽端口;

(2)創(chuàng)建HTTP服務(wù):在event_base上新建一個(gè)evhttp,將這個(gè)evhttp綁定到監(jiān)聽的IP和端口號(hào).

(3)設(shè)置HTTP回調(diào)函數(shù):使用evhttp_set_gencb設(shè)置Http Server的處理請(qǐng)求的回調(diào)函數(shù).

(4)啟動(dòng)HTTP Server:等待請(qǐng)求進(jìn)入事件循環(huán).

在libevent回調(diào)函數(shù)中,可以獲取客戶端請(qǐng)求(request的HTTP Header和參數(shù)等),進(jìn)行響應(yīng)的處理,再將結(jié)果發(fā)送給客戶端(response的HTTP Header和內(nèi)容,如二進(jìn)制柵格數(shù)據(jù)).libevent除了能設(shè)置通用回調(diào)函數(shù)外,還可以針對(duì)特定的路徑請(qǐng)求設(shè)置對(duì)應(yīng)的特殊回調(diào)處理函數(shù),事件處理過程與通用事件函數(shù)處理相似.

2.3libevent多線程模型

由于Libevent本身不是多線程安全的,不能充分利用CPU的多核計(jì)算與處理能力.為彌補(bǔ)libevent存在的這一缺陷,本文借鑒memcached(http://memcached.org)的多線程模型,建立了消息通知和同步層機(jī)制相結(jié)合的libevent多線程模型,借助該模型實(shí)現(xiàn)了多線程環(huán)境下的libevent正確安全使用,從而充分發(fā)揮了CPU的多核計(jì)算和處理能力,大大提高了柵格數(shù)據(jù)服務(wù)器的服務(wù)能力和性能.

圖2 libevent多線程模型示意圖

libevent多線程模型的結(jié)構(gòu)和關(guān)聯(lián)關(guān)系如圖2所示,具體實(shí)現(xiàn)時(shí)主要包括如下幾個(gè)步驟:

(1)系統(tǒng)初始化時(shí),預(yù)先創(chuàng)建主線程和一系列工作線程組成的線程池,每個(gè)線程包括主線程都有自己獨(dú)立的libevent實(shí)例event_base;

(2)在主線程的main event_base中對(duì)socket的鏈接請(qǐng)求事件進(jìn)行監(jiān)控 (listen),當(dāng)新的鏈接請(qǐng)求到達(dá)時(shí),主線程將接收到的請(qǐng)求封裝為連接隊(duì)列項(xiàng)(CQ_ITEM,Connect Queue Item)后將其分配到線程池中的某個(gè)工作線程的工作隊(duì)列中,工作線程的查找分配是用Round-robin算法實(shí)現(xiàn),并通過線程注冊(cè)的管道(pipe)通知到線程;

(3)每個(gè)線程都有一個(gè)thread event_base監(jiān)控本身的pipe事件已經(jīng)連接socket事件,當(dāng)線程的pipe收到主線程通知后, 將新的鏈接socket注冊(cè)到thread event_base,接收請(qǐng)求,隨后由工作線程從連接隊(duì)列中取出CQ_ITEM來處理該連接的所有后續(xù)事件.

3試驗(yàn)及應(yīng)用實(shí)例

本文的技術(shù)方法在Windows平臺(tái)下開發(fā)了柵格數(shù)據(jù)服務(wù)引擎[7-8],下面就柵格數(shù)據(jù)服務(wù)的試驗(yàn)情況進(jìn)行簡(jiǎn)要介紹.

3.1試驗(yàn)數(shù)據(jù)情況

全球范圍柵格數(shù)據(jù)體量非常大,通常作為基礎(chǔ)底圖進(jìn)行使用,對(duì)數(shù)據(jù)的現(xiàn)勢(shì)性要求不是很高.為此直接使用網(wǎng)絡(luò)可供獲取的各種公開來源數(shù)據(jù),完成了全球范圍柵格數(shù)據(jù)的下載、完整性檢查、分層分塊和入庫(kù)管理[9-10],具體包括Google、Baidu、天地圖及其他網(wǎng)站獲取的正射遙感影像數(shù)據(jù)(DOM)、矢量柵格化數(shù)據(jù)(MAP)、SRTM90米地形數(shù)據(jù)、ASTER GDEM30米地形數(shù)據(jù),試驗(yàn)數(shù)據(jù)按照Tile分塊、金字塔分層、Block大文件的方式進(jìn)行存貯管理.試驗(yàn)數(shù)據(jù)基本情況如表1所示,總計(jì)約5.3TB.圖3是全球柵格數(shù)據(jù)處理果示意圖,其中左圖為地圖數(shù)據(jù),右上為遙感影像數(shù)據(jù),右下為DEM數(shù)據(jù).

表1試驗(yàn)數(shù)據(jù)基本情況

數(shù)據(jù)名稱Tile尺寸Block尺寸金字塔層數(shù)據(jù)來源數(shù)據(jù)量DOM256256*2561-15層Google、天地圖等4.07TBMAP256256*2561-16層Google、Baidu等828GBDEM256128*1281-9層SRTM90米155GB10層ASTER30米130GB

圖3 全球柵格數(shù)據(jù)處理結(jié)果示意圖

3.2柵格數(shù)據(jù)服務(wù)試驗(yàn)

為驗(yàn)證柵格數(shù)據(jù)服務(wù)引擎的功能和性能,本文進(jìn)行了柵格數(shù)據(jù)服務(wù)驗(yàn)證,試驗(yàn)用柵格數(shù)據(jù)服務(wù)器環(huán)境為Windows Server 2008 R2 64位操作系統(tǒng),Intel i7-2600 CPU、主頻3.4GHz、8核,硬盤容量15TB.試驗(yàn)主要包括以下幾個(gè)方面:

(1)數(shù)據(jù)下載速率試驗(yàn).數(shù)據(jù)下載服務(wù)是柵格數(shù)據(jù)服務(wù)引擎的最基本要求,圖4為對(duì)興趣區(qū)域柵格數(shù)據(jù)的管理和下載功能進(jìn)行驗(yàn)證的試驗(yàn)結(jié)果,左圖為DEM數(shù)據(jù)下載試驗(yàn)結(jié)果示意圖,右圖為正射影像數(shù)據(jù)下載結(jié)果示意圖.試驗(yàn)結(jié)果表明在千兆網(wǎng)絡(luò)環(huán)境下通過本引擎進(jìn)行數(shù)據(jù)下載的平均速率可達(dá)30MB/s,明顯優(yōu)于相同試驗(yàn)環(huán)境下ArcGIS Server 10.1可達(dá)到的15.8MB/s的平均數(shù)據(jù)下載速率,本文設(shè)計(jì)實(shí)現(xiàn)的柵格數(shù)據(jù)服務(wù)引擎的效率明顯優(yōu)于ArcGIS Server.

圖4 柵格數(shù)據(jù)下載服務(wù)

(2)可視化應(yīng)用系統(tǒng)柵格數(shù)據(jù)服務(wù)支持.為進(jìn)一步驗(yàn)證柵格數(shù)據(jù)服務(wù)引擎的性能,在試驗(yàn)過程中采用客戶機(jī)/應(yīng)用服務(wù)器/數(shù)據(jù)服務(wù)器模式,以海量空間數(shù)據(jù)庫(kù)為數(shù)據(jù)服務(wù)器+高效的數(shù)據(jù)處理服務(wù)器+普通PC為客戶端作為柵格數(shù)據(jù)管理與服務(wù)的基本架構(gòu)體系,通過Web服務(wù)的形式為應(yīng)用系統(tǒng)提供網(wǎng)絡(luò)化柵格數(shù)據(jù)服務(wù)支持,已經(jīng)在一系列應(yīng)用平臺(tái)開發(fā)中得到了成功應(yīng)用.圖5為在高分對(duì)地觀測(cè)應(yīng)用項(xiàng)目某項(xiàng)目中進(jìn)行應(yīng)用的試驗(yàn)情況,在網(wǎng)絡(luò)帶寬100M/s,虛擬用戶數(shù)50個(gè)的情況下,能實(shí)現(xiàn)平滑的放大、縮小和漫游操作,試驗(yàn)結(jié)果表明本文的研究成果能通過Web方式為應(yīng)用系統(tǒng)開發(fā)提供穩(wěn)定、可靠的柵格數(shù)據(jù)服務(wù)支持,引擎性能足以滿足三維可視化應(yīng)用系統(tǒng)對(duì)網(wǎng)絡(luò)化柵格數(shù)據(jù)服務(wù)的實(shí)際應(yīng)用需求.

圖5 柵格數(shù)據(jù)服務(wù)應(yīng)用試驗(yàn)(高分應(yīng)用項(xiàng)目)

4總結(jié)與展望

本文基于libevnet設(shè)計(jì)并實(shí)現(xiàn)了一套輕量級(jí)、高性能、易操作的柵格數(shù)據(jù)服務(wù)引擎,實(shí)現(xiàn)了ArcgisServer和ArcSDE在柵格數(shù)據(jù)管理和服務(wù)訪問方面的基本功能,本引擎體量小,安裝完畢后大約只需要10MB磁盤空間,安裝配置和數(shù)據(jù)訪問方面也更簡(jiǎn)單、更靈活,試驗(yàn)結(jié)果表明本引擎的性能大大優(yōu)于Arcgis系列軟件,能夠有效實(shí)現(xiàn)多源海量柵格數(shù)據(jù)的管理并提供網(wǎng)絡(luò)化柵格數(shù)據(jù)服務(wù),能滿足包括三維可視化實(shí)時(shí)渲染在內(nèi)的各類Web應(yīng)用系統(tǒng)對(duì)柵格數(shù)據(jù)服務(wù)提出的性能要求.該研究成果已經(jīng)成功應(yīng)用于高分遙感影像網(wǎng)絡(luò)化三維數(shù)據(jù)服務(wù),在全球海量地理空間數(shù)據(jù)高效共享分發(fā)和服務(wù)應(yīng)用等方面也發(fā)揮了重要作用.但是,目前該數(shù)據(jù)服務(wù)引擎目前僅能利用單機(jī)服務(wù)器的存貯和計(jì)算資源,尚無法發(fā)揮多服務(wù)器或服務(wù)器集群的性能和威力,對(duì)于海量用戶的多并發(fā)服務(wù)應(yīng)用能力還存在不足,有待于在今后的工作中進(jìn)一步研究和完善.

參考文獻(xiàn):

[1]吳光強(qiáng). 軍事地理空間數(shù)據(jù)庫(kù)引擎的設(shè)計(jì)與實(shí)現(xiàn)[D]. 長(zhǎng)沙:中南大學(xué). 2010.

[2]Lindstrom P,Pascucci V. Visualization of large terrains Made Easy [C]//proceedings of IEEE Visualization San Diego:IEEE Press,2011:363-576.

[3]Ammann L,Genevaux O,Dischler J M.Hybrid rendering of dynamic heightfields using ray-casting and mesh rasterization [C]//Proceedings of Graphics Interface.Ottawa:Canada,Interface 2010:161-168.

[4]王超. 基于空間數(shù)據(jù)庫(kù)的柵格數(shù)據(jù)存儲(chǔ)管理關(guān)鍵技術(shù)研究[D]. 長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué),2009.

[5]劉義,陳犖,景寧,等. 利用MapReduce進(jìn)行批量遙感影像瓦片金字塔構(gòu)建[J]. 武漢大學(xué)學(xué)報(bào)(信息科學(xué)版),2013,38(3):278-282.

[6]杜清運(yùn), 虞昌彬, 任福. 利用嵌套金字塔模型進(jìn)行瓦片地圖數(shù)據(jù)組織[J]. 武漢大學(xué)學(xué)報(bào)(信息科學(xué)版), 2011,5(36):564-567.

[7]李浩松,朱欣焰,李京偉,等. WebGIS空間數(shù)據(jù)分布式緩存技術(shù)研究[J]. 武漢大學(xué)學(xué)報(bào)(信息科學(xué)版). 2005.12.

[8]Google Earth & Google Map——數(shù)據(jù)存儲(chǔ)、管理、表現(xiàn)及開發(fā)機(jī)制.[EB/OL].(2011-01-24)[2015-06-19].http://www tuicool.com/arties/YvEJBvq.

[9]陳蕊. SRTM高程數(shù)據(jù)空值區(qū)域的填補(bǔ)方法及分析[D]. 昆明:昆明理工大學(xué). 2008.

[10]張朝忙,劉慶生,劉高煥,等. SRTM 3與ASTER GDEM數(shù)據(jù)處理及應(yīng)用進(jìn)展[J].地理與地理信息科學(xué).2012,28(5):29-34.

(編輯:劉寶江)

Design and implementation of grid data service engine based on Libevent

DAI Jun-pu

(61175 Troops,The Chinese People′s Liberation Army, Nanjing 210049,China)

Abstract:Aiming at the requirement of grid data service of Network visualization application system, the overall framework and relevant data operation interface of grid data service engine are designed,and the specific implementation method of grid data service engine based on libevent is discussed, and a grid data service engine with a set of lightweight, high performance and easy operation is constructed.The engine performance is much better than the mainstream commercial software, which plays an important role in the high score remote sensing image data management applications.

Key words:space data engine; grid data; Web service; Libevent

中圖分類號(hào):P237

文獻(xiàn)標(biāo)志碼:A

文章編號(hào):1672-6197(2016)04-0070-05

作者簡(jiǎn)介:代軍普,男,daijunpu@163.com

收稿日期:2015-10-18

猜你喜歡
WEB服務(wù)柵格數(shù)據(jù)
連續(xù)型柵格數(shù)據(jù)的預(yù)測(cè)系統(tǒng)研究與應(yīng)用
基于Web服務(wù)的SPSS與.NET系統(tǒng)集成開發(fā)
基于線性回歸的航班延誤預(yù)測(cè)研究與系統(tǒng)開發(fā)
面向移動(dòng)GIS的快速檢索方法研究
基于GDAL的標(biāo)準(zhǔn)圖幅生成及數(shù)據(jù)批量裁剪方法*1
教學(xué)工作量管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
一種基于SOA的web異構(gòu)數(shù)據(jù)集成方法研究
基于ArcGISEngine的南水北調(diào)工程基礎(chǔ)柵格數(shù)據(jù)管理
基于ArcGIS Engine的柵格數(shù)據(jù)轉(zhuǎn)換矢量數(shù)據(jù)
基于oracle的統(tǒng)一瓦片分塊柵格數(shù)據(jù)庫(kù)模型