基于OpenStack的海量影像入庫方案_第1頁
基于OpenStack的海量影像入庫方案_第2頁
基于OpenStack的海量影像入庫方案_第3頁
基于OpenStack的海量影像入庫方案_第4頁
基于OpenStack的海量影像入庫方案_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于OpenStack的海量影像入庫方案基于OpenStack的海量影像入庫方案目標(biāo)本測試是基于OpenStack環(huán)境和消息隊(duì)列,將海量影像數(shù)據(jù)導(dǎo)入到集中關(guān)系型數(shù)據(jù)庫,實(shí)現(xiàn)導(dǎo)入方式的并行性處理和自動化處理,體現(xiàn)云環(huán)境為GIS應(yīng)用帶來的價值。目標(biāo)本測試是基于OpenStack環(huán)境和消息隊(duì)列,將海量影像數(shù)據(jù)概述數(shù)據(jù)情況全球影像數(shù)據(jù)數(shù)據(jù)格式TIF數(shù)據(jù)量2.67TB數(shù)據(jù)分為南北半球,各占1-60分帶,大小在200MB7GB不等數(shù)據(jù)概述數(shù)據(jù)情況數(shù)據(jù)概述其他說明該數(shù)據(jù)為分帶數(shù)據(jù)N-02-00.tif N-02-15.tifN-02-20.tif N-03-15.tifN-03-00.tif N-03-45

2、.tifWGS_1984_UTM_zone_2NWGS_1984_UTM_zone_3N數(shù)據(jù)概述N-02-00.tif WGS_1984_UTM_z環(huán)境OpenStack:icehouseGIScript:2005 Python3RabbitMQ:3.2.4 Pika for PythonUbuntu:15.04SuperMap:iDesktop 7.1.2Oracle:11.2.0.4環(huán)境OpenStack:icehouse原理通過消息隊(duì)列,將所有影像數(shù)據(jù)按照帶號進(jìn)行邏輯劃分,帶號可以從tif影像的文件名稱獲得,然后將每個帶號下的tif影像的路徑寫到一個job文本文件中,通過消息服務(wù)發(fā)出這些

3、工作請求,python服務(wù)器接收相關(guān)的job文件,然后讀取job里面的tif文件,進(jìn)行創(chuàng)建影像數(shù)據(jù)集和影像導(dǎo)入追加鑲嵌,創(chuàng)建金字塔工作。02.Job04.Job05.Job/temp/data/geotiff/N-04-15.tif/temp/data/geotiff/N-04-25.tif分帶投影文件原理通過消息隊(duì)列,將所有影像數(shù)據(jù)按照帶號進(jìn)行邏輯劃分,帶號可流程Geotiff*.dbfRedhatGeotiff:/data/geotiffOracleMQ(VM)Python(VM)Python(VM)物理刀片存儲掛載Data:/temp/data/geotiffMQ:/temp/job/d

4、oing|done|todo/temp/tempmountmount02.Job04.Job05.Job/temp/data/geotiff/N-04-15.tif/temp/data/geotiff/N-04-25.tif分帶投影文件04.job02.job0、接收消息分發(fā)任務(wù)1、創(chuàng)建影像數(shù)據(jù)集 a.讀取N-02*.tif b.獲得參數(shù)及范圍 c.創(chuàng)建2、導(dǎo)入并追加鑲嵌影像3、繼續(xù)接收消息任務(wù)存儲層刀片層虛擬機(jī)層流程Geotiff*.dbfRedhatGeotiff:/d關(guān)于數(shù)據(jù)和路徑首先為數(shù)據(jù)庫服務(wù)器掛載約3TB的存儲,映射路徑為/data/geotiff,然后消息隊(duì)列虛擬機(jī)和Python

5、虛擬機(jī)通過mount命令將數(shù)據(jù)掛載到虛擬機(jī)本地,確保兩者的路徑信息完全一樣,這樣可以保證消息隊(duì)列分配的任務(wù),python機(jī)器可以訪問同樣的路徑獲得數(shù)據(jù)。GeotiffRedhatGeotiff:/data/geotiffOracleMQPythonPython物理刀片存儲掛載Data:/temp/data/geotiffMQ:/temp/job/doing|done|todo/temp/tempmountmount關(guān)于數(shù)據(jù)和路徑首先為數(shù)據(jù)庫服務(wù)器掛載約3TB的存儲,映射路徑導(dǎo)入策略-1導(dǎo)入并鑲嵌影像數(shù)據(jù)集Tif影像投影轉(zhuǎn)換創(chuàng)建金字塔Tif影像Tif影像創(chuàng)建全球影像數(shù)據(jù)集直接創(chuàng)建一個全球地理坐標(biāo)

6、系,然后將tif文件進(jìn)行投影轉(zhuǎn)換,再導(dǎo)入或者追加鑲嵌到全球影像數(shù)據(jù)集,最后創(chuàng)建金字塔。優(yōu)勢:投影一致,如果對全球影像數(shù)據(jù)進(jìn)行分布式集群切圖效率會很高。問題:目前我們的GIScript2005程序還沒有將投影轉(zhuǎn)換功能集成過來。導(dǎo)入策略-1導(dǎo)入并鑲嵌影像數(shù)據(jù)集Tif影像投影轉(zhuǎn)換創(chuàng)建Tif導(dǎo)入策略-2分幅影像數(shù)據(jù)集Tif影像Tif影像創(chuàng)建金字塔分幅影像數(shù)據(jù)集Tif影像Tif影像創(chuàng)建金字塔創(chuàng)建分幅投影的影像數(shù)據(jù)集,在創(chuàng)建影像數(shù)據(jù)集時需要注意獲得所包含tif文件的最大最小范圍,然后比較后獲得一個包絡(luò)矩形范圍,這樣才能保證所有的tif影像可以導(dǎo)入并鑲嵌到該影像數(shù)據(jù)集內(nèi)。優(yōu)勢:任務(wù)切分邏輯明顯,金字塔操作也

7、可以歸類到不同的Python虛擬機(jī)執(zhí)行。缺點(diǎn):如果最終需要切圖,因?yàn)樾枰獎?chuàng)建一個全球地圖投影的地圖,然后其他影像數(shù)據(jù)集進(jìn)行動態(tài)投影到一幅全球影像地圖,對影響切圖效率。導(dǎo)入策略-2分幅影像數(shù)據(jù)集Tif影像Tif影像創(chuàng)建分幅影像數(shù)創(chuàng)建影像數(shù)據(jù)集讀取影像獲得影像參數(shù)WidthHeightPixelFormatBound(L、T、B、R)BandCountBlockHeightBlockWidth影像列表循環(huán)比較影像Bounds獲得Min(left)Max(top)Max(right)Min(bottom)創(chuàng)建影像數(shù)據(jù)集創(chuàng)建影像數(shù)據(jù)集讀取影像獲得影像參數(shù)Width影像列表循環(huán)比較消息隊(duì)列關(guān)于消息隊(duì)列使

8、用了RabbitMQ作為消息服務(wù)器,根據(jù)相關(guān)原理介紹,將相關(guān)文件按照分帶進(jìn)行job文件的生成,然后發(fā)送到消息隊(duì)列中,針對消息的處理,劃分四個維度。將處理的任務(wù)(todo)、正在處理的任務(wù)(doing)、已經(jīng)完成處理的任務(wù)(done)、出錯的任務(wù)(error),也就是創(chuàng)建四個文件夾,Python客戶端接收任務(wù)時根據(jù)處理的情況,將job文件存放在不同的操作目錄中。Error消息隊(duì)列關(guān)于消息隊(duì)列使用了RabbitMQ作為消息服務(wù)器,根架構(gòu)圖架構(gòu)圖消息隊(duì)列關(guān)于消息隊(duì)列使用了RabbitMQ作為消息服務(wù)器,根據(jù)相關(guān)原理介紹,將相關(guān)文件按照分帶進(jìn)行job文件的生成,然后發(fā)送到消息隊(duì)列中,針對消息的處理,劃

9、分四個維度。將處理的任務(wù)(todo)、正在處理的任務(wù)(doing)、已經(jīng)完成處理的任務(wù)(done)、出錯的任務(wù)(error),也就是創(chuàng)建四個文件夾,Python客戶端接收任務(wù)時根據(jù)處理的情況,將job文件存放在不同的操作目錄中。消息隊(duì)列關(guān)于消息隊(duì)列使用了RabbitMQ作為消息服務(wù)器,根結(jié)果展示結(jié)果展示結(jié)果展示結(jié)果展示入庫效率對比方案1:使用一體機(jī)刀片服務(wù)器入庫,刀片服務(wù)器配置32個CPU核心,128GB內(nèi)存,將整個北半球的影像(1.95TB)入庫共花費(fèi)時間約23.77小時。而且入庫過程中造成了資源利用率低下,浪費(fèi)了大量的計(jì)算資源。入庫效率對比方案1:使用一體機(jī)刀片服務(wù)器入庫,刀片服務(wù)器配置入

10、庫效率對比方案2:可以將同資源的的刀片進(jìn)行虛擬化,基于OpenStack的私有云技術(shù),然后生成兩種虛擬機(jī)類型,消息服務(wù)器虛擬機(jī)和Python工作虛擬機(jī)。OpenStackRabbitMQ ServerPython Worker入庫效率對比方案2:可以將同資源的的刀片進(jìn)行虛擬化,基于Op入庫效率對比Python工作虛擬機(jī)可以根據(jù)資源情況虛擬多臺,例如本次設(shè)置的Python虛擬機(jī)的云主機(jī)配置類型為4個vCPU和4GB內(nèi)存,但是在入庫過程中發(fā)現(xiàn),其實(shí)虛擬機(jī)的CPU利用率并不高。本次測試開啟了1個消息服務(wù)器,和18個Python工作服務(wù)器,導(dǎo)入時間約5小時(由于不同的虛擬機(jī)接到的job的工作量不一樣),以最后一個導(dǎo)入完畢計(jì)算結(jié)束時間。入庫效率對比Python工作虛擬機(jī)可以根據(jù)資源情況虛擬多臺, 入庫效率對比單個刀片單個虛擬機(jī)(4核/4GB)單個tif(4-5GB)240s300-600s批量導(dǎo)入56GB約40分鐘41GB約112分鐘可見虛擬化對資源的損耗還是比較明顯的,但是考慮到整個程序?qū)φw的資源利用率不高,所以通過

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論