• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于MongoDB的遙感規(guī)格化數(shù)據(jù)云平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)

      2016-02-19 22:05馬駿張飛龍
      計(jì)算機(jī)時(shí)代 2016年2期
      關(guān)鍵詞:云平臺(tái)海量

      馬駿+張飛龍

      DOI:10.16644/j.cnki.cn33-1094/tp.2016.02.015

      摘 ?要: 隨著遙感影像規(guī)格化數(shù)據(jù)的數(shù)據(jù)量以PB級(jí)別不斷增加,海量的遙感影像規(guī)格化數(shù)據(jù)就需要采用更加合適的云存儲(chǔ)平臺(tái)系統(tǒng)?;趥鹘y(tǒng)關(guān)系型數(shù)據(jù)庫的云平臺(tái)系統(tǒng)在高并發(fā)讀寫、擴(kuò)展性等方面無法滿足當(dāng)前大數(shù)據(jù)量的需求,因此研究了一種基于MongoDB的遙感規(guī)格化數(shù)據(jù)云平臺(tái)系統(tǒng),與現(xiàn)有的云平臺(tái)系統(tǒng)相比,此平臺(tái)在性能、穩(wěn)定性、擴(kuò)展性方面都有很大提升。

      關(guān)鍵詞: 遙感規(guī)格化數(shù)據(jù); MongoDB; 海量; 云平臺(tái)

      中圖分類號(hào):TP399 ? ? ? ? ?文獻(xiàn)標(biāo)志碼:A ? ? 文章編號(hào):1006-8228(2016)02-49-04

      Design and implementation of remote sensing normalized data cloud platform

      Ma Jun1,2, Zhang Feilong1

      (1. Department of Computer Science and Technology, Henan University, Kaifeng, Henan 475004, China;

      2. Data and Knowledge Engineering Research Institute, Henan University)

      Abstract: Along with the increase of the PB level of remote sensing normalized data, massive remote sensing normalized data needs to use a more suitable cloud storage platform system. Remote sensing normalized data cloud platform based on traditional relational database cannot meet the needs of the current large volume of data in high concurrent read write, scalability. Therefore, this paper studies the remote sensing normalized data cloud platform based on MongoDB, compared with the prior platform system this platform have greatly improved in performance, stability and scalability.

      Key words: remote sensing normalized data; MongoDB; massive; cloud platform

      0 引言

      高分應(yīng)用綜合數(shù)據(jù)庫系統(tǒng)是高分應(yīng)用鏈條中的重要組成部分,是必需的基礎(chǔ)支撐條件。高分應(yīng)用綜合數(shù)據(jù)庫系統(tǒng)主要負(fù)責(zé)收集、保管、維護(hù)和提供高分衛(wèi)星信息產(chǎn)品研發(fā)、生產(chǎn)、驗(yàn)證、服務(wù)所需的數(shù)據(jù)信息資源,是高分應(yīng)用鏈條中不可或缺的數(shù)據(jù)支撐,也是高分應(yīng)用示范系統(tǒng)建設(shè)和推廣應(yīng)用的重要基礎(chǔ)。其中,規(guī)格化影像產(chǎn)品數(shù)據(jù)作為其主要的產(chǎn)品數(shù)據(jù)類型也是整個(gè)系統(tǒng)工作的重中之重。規(guī)格化影像產(chǎn)品,即對原始數(shù)據(jù)進(jìn)行幾何、輻射等預(yù)處理后形成干凈準(zhǔn)確的影像,在對其按照標(biāo)準(zhǔn)分辨率層級(jí)進(jìn)行重采樣,最后為保證定量化處理精度按標(biāo)準(zhǔn)格網(wǎng)裁切成1000*1000的規(guī)格化影像?,F(xiàn)有系統(tǒng)的規(guī)格化數(shù)據(jù)云平臺(tái)主要是采用了Sqlite數(shù)據(jù)庫作為底層索引[1-2]。

      Sqlite具有很好的兼容性、跨平臺(tái)性和較小的規(guī)模等特點(diǎn),但是在數(shù)量日益增大的今天,Sqlite的存儲(chǔ)大小限制、穩(wěn)定性和對并發(fā)讀寫等方面的不足也開始影響規(guī)格化數(shù)據(jù)云平臺(tái)的整體性能[3-4]。為了提高規(guī)格化云平臺(tái)的數(shù)據(jù)的整體性能,本文設(shè)計(jì)了基于非關(guān)系型數(shù)據(jù)庫MongoDB的規(guī)格化云平臺(tái)系統(tǒng),并通過對比現(xiàn)有的云平臺(tái)系統(tǒng),證明本文方案的可行性。

      MongoDB是10gen公司與2009年研發(fā)的一份開源的基于分布式文件存儲(chǔ)的NOSQL數(shù)據(jù)庫系統(tǒng)。MongoDB是一個(gè)介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫的,他支持的數(shù)據(jù)結(jié)構(gòu)非常松散,是類似json的bjson格式,因此可以存儲(chǔ)比較復(fù)雜的數(shù)據(jù)類型。MongoDB最大的特點(diǎn)是他支持的查詢語言非常強(qiáng)大,其語法有點(diǎn)類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實(shí)現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對數(shù)據(jù)建立索引。它是一個(gè)面向集合的,模式自由的文檔型數(shù)據(jù)庫[5]。MongoDB采用主/從和復(fù)制集兩種復(fù)制冗余方式。MongoDB相較于傳統(tǒng)的關(guān)系型數(shù)據(jù)庫有著易于使用、易于擴(kuò)展、豐富的功能和卓越的性能,在面對海量數(shù)據(jù)的挑戰(zhàn)時(shí)更加有優(yōu)勢。

      1 云平臺(tái)的總體部署

      遙感規(guī)格化云平臺(tái)主要是實(shí)現(xiàn)對遙感瓦片數(shù)據(jù)的存儲(chǔ)、檢索和管理。數(shù)據(jù)采用虛擬分布式存儲(chǔ)技術(shù)散列的存放在各個(gè)數(shù)據(jù)存儲(chǔ)站點(diǎn)上,分布式存儲(chǔ)技術(shù)是通過一系列管理調(diào)度策略將靜態(tài)的虛擬磁盤空間單元映射到動(dòng)態(tài)的物理存儲(chǔ)站點(diǎn)上,從而建立一個(gè)邏輯上靜態(tài)、物理上動(dòng)態(tài)可擴(kuò)展的分布式存儲(chǔ)空間。 數(shù)據(jù)所對應(yīng)的元數(shù)據(jù)信息(包括瓦片數(shù)據(jù)名、衛(wèi)星、傳感器、拍攝時(shí)間、層級(jí)、行號(hào)、列號(hào)、類型)則存放在分布式的云數(shù)據(jù)庫上?,F(xiàn)有系統(tǒng)的云數(shù)據(jù)庫由Sqlite實(shí)現(xiàn),Sqlite數(shù)據(jù)庫服務(wù)獨(dú)立分布于各個(gè)存儲(chǔ)節(jié)點(diǎn),通過每個(gè)存儲(chǔ)節(jié)點(diǎn)上部署的站點(diǎn)服務(wù)操作數(shù)據(jù)庫以此實(shí)現(xiàn)分布式的信息存儲(chǔ)和檢索。在進(jìn)行數(shù)據(jù)存儲(chǔ)的操作時(shí),由數(shù)據(jù)存儲(chǔ)服務(wù)將數(shù)據(jù)存放到虛擬分布式磁盤上,然后調(diào)用每個(gè)存儲(chǔ)節(jié)點(diǎn)的站點(diǎn)服務(wù)進(jìn)行元數(shù)據(jù)索引的建立,即站點(diǎn)服務(wù)將元數(shù)據(jù)信息索存放在各自節(jié)點(diǎn)所部署的Sqlite數(shù)據(jù)庫中。在查詢時(shí),客戶端發(fā)送查詢請求,各個(gè)節(jié)點(diǎn)的站點(diǎn)服務(wù)查詢各自節(jié)點(diǎn)所部署的Sqlite數(shù)據(jù)庫中對應(yīng)的元數(shù)據(jù)信息,然后將結(jié)果進(jìn)行歸約,返回給客戶端。

      基于MongoDB的云平臺(tái)系統(tǒng)在進(jìn)行數(shù)據(jù)存儲(chǔ)操作時(shí),由數(shù)據(jù)存儲(chǔ)服務(wù)將數(shù)據(jù)存放到虛擬分布式磁盤上,然后調(diào)用MongoDB路由在MongoDB集群上建立元數(shù)據(jù)的索引,利用MongoDB的分片、副本集等特性實(shí)現(xiàn)元數(shù)據(jù)信息的分布式存儲(chǔ)。在進(jìn)行數(shù)據(jù)檢索時(shí),客戶端直接向MongoDB路由發(fā)送數(shù)據(jù)查詢請求,MongoDB路由調(diào)用MongoDB集群的并發(fā)檢索,將查詢到的元數(shù)據(jù)信息返回給客戶端[6-7]?;贛ongoDB的云平臺(tái)系統(tǒng)的架構(gòu)如圖1所示。

      2 MongoDB集群部署實(shí)現(xiàn)

      在本次實(shí)驗(yàn)部署中,采用配置相同的三臺(tái)機(jī)器作為測試機(jī)來構(gòu)建MongoDB集群,具體的服務(wù)配置分配和物理部署圖如圖2所示。

      MongoDB集群中的每臺(tái)MongoDB服務(wù)器開啟了MongoDB路由mongos服務(wù)、MongoDB配置config server服務(wù)、數(shù)據(jù)分片shard server服務(wù)(包括主分片、副本分片和仲裁分片)。其中ConfigSvr:配置服務(wù)器相當(dāng)于集群的大腦,保存著集群和分片的元數(shù)據(jù),即各分片包含哪些數(shù)據(jù)的信息。Mongos:是用戶和集群間的交互點(diǎn),其職責(zé)是隱藏分片內(nèi)部的復(fù)雜性并向用戶提供一個(gè)簡潔的單服務(wù)器接口,允許把集群當(dāng)作一臺(tái)服務(wù)器。shard:即MongoDB主分片,用于存儲(chǔ)實(shí)際的數(shù)據(jù)塊。使得每臺(tái)服務(wù)器比較均衡的承擔(dān)一定的路由操作和I/O操作,數(shù)據(jù)能夠有效的散列的分布在各個(gè)MongoDB服務(wù)器上,提高服務(wù)器的資源利用率和實(shí)現(xiàn)集群的負(fù)載均衡,大大提高集群的整體性能表現(xiàn)。replica set:即MongoDB副本集,副本節(jié)點(diǎn)在主節(jié)點(diǎn)掛掉后通過心跳機(jī)制檢測到后,就會(huì)在集群內(nèi)發(fā)起主節(jié)點(diǎn)的選舉機(jī)制,自動(dòng)選舉一位新的主服務(wù)器,提高系統(tǒng)的可靠性和自動(dòng)故障的回復(fù)。arbiter:即MongoDB仲裁,仲裁節(jié)點(diǎn)不存儲(chǔ)數(shù)據(jù),只是負(fù)責(zé)故障轉(zhuǎn)移的群體投票,這樣就少了數(shù)據(jù)復(fù)制的壓力[8-9]。

      3 實(shí)驗(yàn)結(jié)果分析

      3.1 開發(fā)的軟硬件環(huán)境

      本次實(shí)驗(yàn)MongoDB集群有三臺(tái)軟硬件配置相同的服務(wù)器級(jí)別的機(jī)器構(gòu)成,服務(wù)器的配置為:

      操作系統(tǒng):Windows7旗艦版(64位)

      數(shù)據(jù)庫:MongoDB 3.0.1,MySql 5.5

      Cpu:Intel Core i7-2600

      核數(shù):4核8線程

      內(nèi)存:16g

      3.2 測試方案設(shè)計(jì)以及結(jié)果

      ⑴ 規(guī)格化數(shù)據(jù)的批量存儲(chǔ)的性能對比測試。

      從圖3可以看出,規(guī)格化數(shù)據(jù)的存儲(chǔ)MongoDB集群的效率整體上要高于基于傳統(tǒng)關(guān)系型數(shù)據(jù)庫Sqlite,大概是其2.8倍。在不斷增加實(shí)驗(yàn)樣本插入大數(shù)據(jù)量瓦片數(shù)據(jù)的情況下,MongoDB集群與Sqlite的插入效率比依然維持在2.8左右。由此可見,基于MongoDB的規(guī)格化云平臺(tái)系I同相較于現(xiàn)有有著明顯的優(yōu)勢,即使在大數(shù)據(jù)量的情況下,依然能保證相當(dāng)?shù)牟迦胄省?/p>

      ⑵ 在一定數(shù)據(jù)量基礎(chǔ)上查詢1000條特定條件的規(guī)格化數(shù)據(jù)性能對比測試,查詢的條件為規(guī)格化數(shù)據(jù)的層級(jí)、行列號(hào)信息。

      從圖4可以看出,在數(shù)據(jù)量比較小的情況下,二者的性能差異不大,隨著數(shù)據(jù)量的增大,現(xiàn)有系統(tǒng)的查詢所需要的時(shí)間開始急劇上升,而基于MongoDB的規(guī)格化云平臺(tái)查詢所需時(shí)間上升的比較平緩。由此,在數(shù)據(jù)量不斷增大的情況下,基于MongoDB的 規(guī)格化云平臺(tái)系統(tǒng)具有查詢性能上的優(yōu)勢。

      3.3 遙感規(guī)格化數(shù)據(jù)云平臺(tái)對比分析

      通過圖3、圖4的對比分析,在數(shù)據(jù)量不斷增加的情況下,基于MongoDB的規(guī)格化云平臺(tái)系統(tǒng)在數(shù)據(jù)存儲(chǔ)和檢索方面依然具有良好的性能表現(xiàn),在性能上相比于現(xiàn)有的云平臺(tái)系統(tǒng)有著較大的優(yōu)勢,能夠滿足數(shù)據(jù)量日益增長所帶來的壓力。

      降低了客戶端、存儲(chǔ)服務(wù)與站點(diǎn)服務(wù)之間的耦合,基于MongoDB的云平臺(tái)系統(tǒng)不再是數(shù)據(jù)和數(shù)據(jù)庫信息一體化的結(jié)構(gòu),二者在邏輯上實(shí)現(xiàn)了分離,存儲(chǔ)服務(wù)和客戶端就不再依賴于原有的站點(diǎn)服務(wù)提供的并發(fā)存儲(chǔ)和檢索,而依賴于MongoDB集群提供的服務(wù)。

      降低了站點(diǎn)服務(wù)的壓力:由于在本系統(tǒng)中站點(diǎn)服務(wù)同時(shí)承擔(dān)著大量的數(shù)據(jù)訂單處理和同時(shí)支持其他數(shù)據(jù)格式的服務(wù),而其中規(guī)格化數(shù)據(jù)的服務(wù)將依賴于MongoDB集群,不再依賴于站點(diǎn)服務(wù)。

      更好的擴(kuò)展性和靈活性:現(xiàn)有的云平臺(tái)系統(tǒng)在擴(kuò)展時(shí)需要同時(shí)進(jìn)行存儲(chǔ)節(jié)點(diǎn)和Sqlite數(shù)據(jù)庫服務(wù)兩方面的擴(kuò)展,而基于MongoDB的云平臺(tái)系統(tǒng)則是在存儲(chǔ)空間不足時(shí)只需要擴(kuò)展存儲(chǔ)空間、在數(shù)據(jù)庫性能不足時(shí)適當(dāng)?shù)恼{(diào)整MongoDB集群。

      更好的容錯(cuò)性:利用MongoDB的副本集可以實(shí)現(xiàn)雙機(jī)熱備的功能,提高了系統(tǒng)的容錯(cuò)性[10]。

      4 結(jié)束語

      針對規(guī)格化數(shù)據(jù)的海量性、離散性和不斷增長的特點(diǎn),本文給出了基于MongoDB的規(guī)格化云平臺(tái)系統(tǒng),通過構(gòu)建MongoDB集群,代替現(xiàn)有的站點(diǎn)服務(wù)和Sqlite數(shù)據(jù)庫服務(wù)。實(shí)驗(yàn)結(jié)果表明:相較于傳統(tǒng)數(shù)據(jù)庫,MongoDB集群在并發(fā)讀寫、快速檢索、負(fù)載均衡、容錯(cuò)性和擴(kuò)展性都有了很大的提升,在構(gòu)建分布式系統(tǒng)上有著很大的優(yōu)勢。適應(yīng)于現(xiàn)在海量的不斷增長的遙感規(guī)格化影像數(shù)據(jù)。但是目前MongoDB對內(nèi)存的要求比較高,不如傳統(tǒng)關(guān)系型數(shù)據(jù)庫成熟,其分片機(jī)制、內(nèi)存管理機(jī)制和緩存機(jī)制還有待進(jìn)一步的深入研究。

      參考文獻(xiàn)(References):

      [1] 王棟,鄭逢斌,賴積保,余濤,李家國,郭珊.基于五層十五級(jí)遙

      感數(shù)據(jù)結(jié)構(gòu)的并行算法研究[J].微計(jì)算機(jī)信息,2012.1.

      [2] 李朝奎,楊武,殷智慧,張強(qiáng).MongoDB的遙感影像分布式存

      儲(chǔ)策略研究[J].測繪通報(bào),2014.5.

      [3] 段龍方.面向遙感數(shù)據(jù)的云數(shù)據(jù)庫技術(shù)研究與應(yīng)用[D].河南

      大學(xué),2014.

      [4] 謝志偉.基于SQLite的遙感影像數(shù)據(jù)庫設(shè)計(jì)[D]. 遼寧工程技

      術(shù)大學(xué),2012.

      [5] 潘凡.從MySQL到MongoDB——視覺中國的NoSQL之路[J].

      程序員,2010.6.

      [6] 王光磊.MongoDB數(shù)據(jù)庫的應(yīng)用研究和方案優(yōu)化[J].中國科

      技信息,2011.20.

      [7] 王振輝,王振鐸.MongoDB中數(shù)據(jù)分頁優(yōu)化技術(shù)[J].計(jì)算機(jī)系

      統(tǒng)應(yīng)用,2015.6.

      [8] 鄧志飛,應(yīng)良佳,王軍威.基于IODA算法MongoDB負(fù)載均衡

      的改進(jìn)[J].現(xiàn)代電信科技,2013.7.

      [9] 梁海.MongoDB數(shù)據(jù)庫中Sharding技術(shù)應(yīng)用研究[J].計(jì)算機(jī)

      技術(shù)與發(fā)展,2014.7:60-62,67

      [10] 邱儒瓊,鄭麗娜,李兵.基于MongoDB的電子地圖瓦片數(shù)據(jù)

      存儲(chǔ)和服務(wù)研究[J].地理空間信息,2014.

      猜你喜歡
      云平臺(tái)海量
      一種傅里葉域海量數(shù)據(jù)高速譜聚類方法
      海量快遞垃圾正在“圍城”——“綠色快遞”勢在必行
      Docker技術(shù)在Web服務(wù)系統(tǒng)中的應(yīng)用研究
      高職院校開展基于云平臺(tái)網(wǎng)絡(luò)教學(xué)的探索與思考
      企業(yè)云平臺(tái)建設(shè)研究
      基于云平臺(tái)的高職院校開放性職業(yè)培訓(xùn)工作體系建設(shè)研究
      多通道海量數(shù)據(jù)記錄系統(tǒng)設(shè)計(jì)
      一種海量衛(wèi)星導(dǎo)航軌跡點(diǎn)地圖匹配方法
      基于文件系統(tǒng)的分布式海量空間數(shù)據(jù)高效存儲(chǔ)與組織研究
      东城区| 乌海市| 工布江达县| 板桥市| 芜湖县| 吉首市| 江永县| 日土县| 贵定县| 同江市| 洞口县| 额尔古纳市| 阳曲县| 湖南省| 郸城县| 互助| 宝应县| 武夷山市| 蓝山县| 陆川县| 南川市| 桂东县| 常山县| 禄劝| 黄龙县| 庐江县| 澎湖县| 蒙城县| 呈贡县| 盖州市| 崇仁县| 娄底市| 徐汇区| 和林格尔县| 无锡市| 鄯善县| 固镇县| 合川市| 崇明县| 德昌县| 昭通市|