存儲方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體來說,涉及一種存儲方法及系統(tǒng)。
【背景技術(shù)】
[0002]近些年,我國航天事業(yè)發(fā)展迅速,對地觀測技術(shù)突飛猛進,各種遙感儀器空間分辨率、光譜分辨率,時間分辨率不斷提高,各種不同應(yīng)用遙感影像的數(shù)據(jù)量急劇增長,積累了大量的影像數(shù)據(jù)。以ZY3號衛(wèi)星數(shù)據(jù)為例,在軌運行300天,產(chǎn)生的數(shù)據(jù)量高達17TB。隨著我國衛(wèi)星數(shù)量的增加和數(shù)據(jù)的積累,如何高效存儲和管理海量遙感影像數(shù)據(jù)已經(jīng)成為厄需解決的一大難題。
[0003]傳統(tǒng)的集中式管理系統(tǒng)難以滿足海量遙感影像數(shù)據(jù)的大容量,高并發(fā),擴展性強,安全性高等的要求,已經(jīng)很難用來高效存儲和管理海量遙感影像數(shù)據(jù)。近些年大規(guī)模分布式存儲系統(tǒng)得到快速發(fā)展,使用大規(guī)模分布式文件系統(tǒng)解決海量遙感數(shù)據(jù)存儲的問題逐漸進入了人們的視野。Google在Google地圖和Google Earth中采用了分布式存儲系統(tǒng)GFS來解決海量影像的存儲和管理,同時采用BigTable解決了小文件的問題。為了實現(xiàn)遙感影像快速瀏覽和檢索,Google針對遙感影像圖片進行存儲的影像金字塔模型,實質(zhì)上是對一大塊的影像圖片進行分塊處理,然后對數(shù)據(jù)根據(jù)用戶的需要一不同分辨率進行存儲與現(xiàn)實,形成一個自頂而下的文件金字塔結(jié)構(gòu)。采用“分層分塊”策略的瓦片金字塔對數(shù)據(jù)集進行多維度的剖分組織,不僅極大地縮短了數(shù)據(jù)的訪問時間,還可以實現(xiàn)不同分辨率數(shù)據(jù)之間的無縫瀏覽,是海量遙感數(shù)據(jù)組織的理想結(jié)構(gòu)。
[0004]傳統(tǒng)遙感影像數(shù)據(jù)的存儲與管理以集中式存儲和管理為主,遙感影像文件與元數(shù)據(jù)信息共同存儲與文件夾中,文件夾以目錄的形式進行管理。這種方法在數(shù)據(jù)存儲冗余備份、水平節(jié)點擴展、數(shù)據(jù)負載均衡和硬件成本上,無法滿足上述日益增長的數(shù)據(jù)存儲與計算需求。
[0005]隨著大規(guī)模分布式存儲系統(tǒng)的發(fā)展,已經(jīng)有一些研究和實踐利用分布式存儲系統(tǒng)存儲和管理海量遙感影像數(shù)據(jù),目前應(yīng)用較多的存儲方法是利用分布式系統(tǒng)(例如HDFS)存儲遙感影像數(shù)據(jù),用關(guān)系型數(shù)據(jù)庫(Oracle/MySQL等)存儲遙感影像的元數(shù)據(jù)對數(shù)據(jù)進行快速索引。這一方法在一定程度上解決了海量遙感影像數(shù)據(jù)的存儲和管理問題,但是也存在著諸多問題。首先,利用關(guān)系型數(shù)據(jù)庫存儲海量遙感影像的元數(shù)據(jù)同樣存在著性能瓶頸,隨著數(shù)據(jù)量的增加,元數(shù)據(jù)的表操作性能會逐漸降低。其次,在關(guān)系型數(shù)據(jù)庫中元數(shù)據(jù)的備份需要定期手動操作,這無疑增加了工作量和數(shù)據(jù)丟失的可能性。最后,通常情況下,遙感影像的大小在幾百兆到幾個G,因此,統(tǒng)一路徑下讀寫如此大的文件必然會導(dǎo)致讀寫效率不高的問題,若將文件切割,在海量遙感影像的情況下會導(dǎo)致分布式存儲系統(tǒng)的小文件問題和關(guān)系關(guān)系數(shù)據(jù)庫負擔(dān)的增加。
[0006]在開源界,有些學(xué)者利用HDFS和HBase來存儲海量遙感影像數(shù)據(jù),但是HDFS存在著空間利用率低的問題,這使得硬件設(shè)備不能充分被利用。同時,HDFS是利用Java語言開發(fā),其執(zhí)行效率不是很尚。
[0007]針對相關(guān)技術(shù)中的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0008]針對相關(guān)技術(shù)中的問題,本發(fā)明提出一種存儲方法及系統(tǒng),能夠滿足海量遙感影像數(shù)據(jù)大容量,高并發(fā),高安全等的要求,實現(xiàn)對海量遙感影像文件的存儲與管理,大大提高了對海量遙感影像文件的查詢效率以及對局部影像的定位能力。
[0009]本發(fā)明的技術(shù)方案是這樣實現(xiàn)的:
[0010]根據(jù)本發(fā)明的一個方面,提供了一種存儲方法,該存儲方法用于存儲海量遙感影像文件。
[0011]該存儲方法包括:
[0012]接收海量遙感影像文件;
[0013]根據(jù)四叉樹索引,將海量遙感影像文件分割為多個子遙感影像文件并記錄子遙感影像文件對應(yīng)的第一元數(shù)據(jù)信息;
[0014]存儲多個子遙感影像文件以及第一元數(shù)據(jù)信息。
[0015]在一個優(yōu)選的實施例中,第一元數(shù)據(jù)信息包括:
[0016]子遙感影像文件的數(shù)據(jù)信息以及存儲位置。
[0017]在一個優(yōu)選的實施例中,子遙感影像文件的數(shù)據(jù)信息為子遙感影像文件所對應(yīng)的地理覆蓋區(qū)域的參數(shù)。
[0018]在一個優(yōu)選的實施例中,存儲多個子遙感影像文件以及第一元數(shù)據(jù)信息之前進一步包括:
[0019]記錄海量遙感影像文件對應(yīng)的第二元數(shù)據(jù)信息,其中,第二元數(shù)據(jù)信息為海量遙感影像文件所對應(yīng)的地理覆蓋區(qū)域的參數(shù)。
[0020]在一個優(yōu)選的實施例中,存儲方法進一步包括:
[0021 ]對第一元數(shù)據(jù)信息進行備份。
[0022]根據(jù)本發(fā)明的另一方面,提供了一種存儲系統(tǒng),該存儲系統(tǒng)用于存儲海量遙感影像文件。
[0023]該存儲系統(tǒng)包括:
[0024]接收裝置,用于接收海量遙感影像文件;
[0025]編程模型MapReduce,用于根據(jù)四叉樹索引,將海量遙感影像文件分割為多個子遙感影像文件并記錄子遙感影像文件對應(yīng)的第一元數(shù)據(jù)信息;
[0026]并行存儲裝置,用于存儲多個子遙感影像文件;
[0027]分布式數(shù)據(jù)庫HBase,用于存儲第一元數(shù)據(jù)信息。
[0028]在一個優(yōu)選的實施例中,第一元數(shù)據(jù)信息包括:
[0029]子遙感影像文件的數(shù)據(jù)信息以及存儲位置。
[0030]在一個優(yōu)選的實施例中,子遙感影像文件的數(shù)據(jù)信息為子遙感影像文件所對應(yīng)的地理覆蓋區(qū)域的參數(shù)。
[0031]在一個優(yōu)選的實施例中,MapReduce進一步用于記錄海量遙感影像文件對應(yīng)的第二元數(shù)據(jù)信息,其中,第二元數(shù)據(jù)信息為海量遙感影像文件所對應(yīng)的地理覆蓋區(qū)域的參數(shù)。
[0032]在一個優(yōu)選的實施例中,HBase進一步用于對第一元數(shù)據(jù)信息進行備份。
[0033]本發(fā)明通過利用四叉樹索引將海量遙感影像文件分割成多個小文件,并將多個小文件進行存儲,從而實現(xiàn)了對海量遙感影像文件的存儲與管理,并且大大提高了對海量遙感影像文件的查詢效率以及對局部影像的定位能力。
【附圖說明】
[0034]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0035]圖1是根據(jù)本發(fā)明實施例的存儲方法的流程圖;
[0036]圖2是根據(jù)本發(fā)明實施例的存儲系統(tǒng)的不意圖;
[0037]圖3是根據(jù)本發(fā)明的具體實施例的存儲系統(tǒng)的示意圖。
【具體實施方式】
[0038]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0039]根據(jù)本發(fā)明的實施例,提供了一種存儲方法,該存儲方法用于存儲海量遙感影像文件。
[0040]如圖1所示,根據(jù)本發(fā)明實施例的存儲方法包括:
[0041 ]步驟SlOl,接收海量遙感影像文件。
[0042]步驟S103,根據(jù)四叉樹索引,將海量遙感影像文件分割為多個子遙感影像文件并記錄子遙感影像文件對應(yīng)的第一元數(shù)據(jù)信息。具體的,在一個優(yōu)選的實施例中,第一元數(shù)據(jù)信息包括子遙感影像文件的數(shù)據(jù)信息以及存儲位置。其中,子遙感影像文件的數(shù)據(jù)信息為子遙感影像文件所對應(yīng)的地理覆蓋區(qū)域的參數(shù)。在一個實施例中,在記錄第一元數(shù)據(jù)信息的同時,還包括記錄海量遙感影像文件對應(yīng)的第二元數(shù)據(jù)信息,其中,第二元數(shù)據(jù)信息為海量遙感影像文件所對應(yīng)的地理覆蓋區(qū)域的參數(shù)。
[0043]步驟S105,存儲多個子遙感影像文件以及第一元數(shù)據(jù)信息。在一個優(yōu)選的實施例中,該步驟還包括對第一元數(shù)據(jù)信息進行備份。
[0044]通過本發(fā)明的上述方案,能夠滿足海量遙感影像數(shù)據(jù)大容量,高并發(fā),高安全等的要求,實現(xiàn)對海量遙感影像文件的存儲與管理,大大提高了對海量遙感影像文件的查詢效率以及對局部影像的定位能力。
[0045]根據(jù)本發(fā)明的實施例,還提供了一種存儲系統(tǒng),該存儲系統(tǒng)用于存儲海量遙感影像文件。
[0046]如圖2所示,根據(jù)本發(fā)明實施例的存儲系統(tǒng)包括:
[0047]接收裝置21,用于接收海量遙感影像文件;
[0048]編程模型MapRedUCe22,用于根據(jù)四叉樹索引,將海量遙感影像文件分割為多個子遙感影像文件并記錄子遙感影像文件對應(yīng)的第一元數(shù)據(jù)信息