專利名稱:多時(shí)相瓦片數(shù)據(jù)集組織和游程編碼索引方法
技術(shù)領(lǐng)域:
本發(fā)明屬于對地觀測與導(dǎo)航技術(shù)領(lǐng)域,更具體是涉及一種多時(shí)相瓦片數(shù)據(jù)集組織和游程編碼索引方法,可用于高效地管理多時(shí)相地圖瓦片數(shù)據(jù)集。
背景技術(shù):
地圖瓦片是網(wǎng)絡(luò)地圖服務(wù)中常用的數(shù)據(jù)或緩存數(shù)據(jù)形式。通常情況下,瓦片數(shù)據(jù)集是按照影像金字塔模型組織的瓦片數(shù)據(jù)集合,其中瓦片數(shù)據(jù)集中的瓦片關(guān)系僅為空間位置關(guān)系,缺少歷史和版本信息,不利于全面掌握、管理具有時(shí)間特性的瓦片數(shù)據(jù)集。多時(shí)相瓦片數(shù)據(jù)集是多個(gè)特定時(shí)間或版本的瓦片數(shù)據(jù)集的邏輯集合,它有效地表達(dá)了瓦片數(shù)據(jù)集的時(shí)間信息、空間范圍信息、歷史信息或版本信息,可以較好地滿足任意時(shí)間、任意范圍、任意時(shí)相的瓦片數(shù)據(jù)集增加、插入等更新應(yīng)用需求,同時(shí)又可以保證不變動原有瓦片數(shù)據(jù)集。多時(shí)相瓦片數(shù)據(jù)集的組織與索引對于高效管理、查詢瓦片數(shù)據(jù)集,提高網(wǎng)絡(luò)地圖服務(wù)的性能具有重要意義。
發(fā)明內(nèi)容
為此,本發(fā)明提供一種多時(shí)相瓦片數(shù)據(jù)集組織和游程編碼索引方法。根據(jù)本發(fā)明的一個(gè)方面,一種多時(shí)相瓦片數(shù)據(jù)集游程編碼索引方法,其中,所述多時(shí)相瓦片數(shù)據(jù)集是由不同時(shí)相的數(shù)據(jù)集通過注冊的方法邏輯上形成的瓦片數(shù)據(jù)集,其中,所述游程編碼索引以行為單位,按照列的順序?qū)⑦B續(xù)的瓦片用開始的列號和結(jié)束的列號表示,所述游程編碼索引按照每行組成行數(shù)組,其中,行數(shù)組是連續(xù)的數(shù)組,其特征在于,該方法包括針對于特定瓦片的層級、行號、以及列號而進(jìn)行的以下步驟S10,判斷該層級是否在級別范圍內(nèi);S20,如果該層級不在所述級別范圍內(nèi),則對該層級建立新的游程編碼索引;S30,如果該層級在級別范圍內(nèi),則在該層級對應(yīng)的游程編碼索引中,判斷該行號是否存在于對應(yīng)的行數(shù)組中;S40,如果步驟S30的判斷的結(jié)果為否,則追加一個(gè)行數(shù)組;S50,如果步驟S30的判斷的結(jié)果為是,則在該行號對應(yīng)的行數(shù)組中遍歷游程編碼單元,判斷應(yīng)該添加或并入所述列號的位置。根據(jù)本發(fā)明的一個(gè)方面,提供了一種多時(shí)相瓦片數(shù)據(jù)集組織方法,包括由數(shù)據(jù)集元信息和不同時(shí)相的瓦片數(shù)據(jù)集信息組成所述多時(shí)相瓦片數(shù)據(jù)集,其中,所述多時(shí)相瓦片數(shù)據(jù)集是按照上述游程編碼索引方法進(jìn)行索引的。根據(jù)本發(fā)明的實(shí)施例的多時(shí)相瓦片數(shù)據(jù)集組織和游程編碼索引方法實(shí)現(xiàn)了多時(shí)相瓦片數(shù)據(jù)集的創(chuàng)建、索引、管理、注冊、刪除等功能,支持Oracle數(shù)據(jù)庫和SQLite數(shù)據(jù)庫存儲數(shù)據(jù),主要特性如下I)能夠創(chuàng)建多時(shí)相數(shù)據(jù)集并且對原有數(shù)據(jù)集盡量不做變動。2)能夠支持任意范圍和任意時(shí)間的瓦片數(shù)據(jù)。3)可以更新任意范圍和任意時(shí)間的瓦片數(shù)據(jù)。4)可以向多時(shí)相數(shù)據(jù)集中插入版本。
5)能夠?qū)崿F(xiàn)只讀取當(dāng)前版本的數(shù)據(jù)和向前版本的瀏覽。6)讀取多時(shí)相數(shù)據(jù)集瓦片時(shí)的性能能夠和當(dāng)前讀取瓦片的性能相同。本發(fā)明的實(shí)施例的技術(shù)方案的優(yōu)點(diǎn)在于I)本發(fā)明通過設(shè)計(jì)多時(shí)相瓦片數(shù)據(jù)集,統(tǒng)一了瓦片數(shù)據(jù)集模型,有利于用戶瀏覽任意時(shí)間、任意范圍的瓦片數(shù)據(jù)集,并可以將多時(shí)相的瓦片數(shù)據(jù)集疊加顯示,以便于比較分析不同時(shí)相的瓦片數(shù)據(jù)集的變化情況。2)本發(fā)明設(shè)計(jì)了多時(shí)相瓦片數(shù)據(jù)集的游程編碼索引,對于瓦片在列空間內(nèi)密集連續(xù)分布的數(shù)據(jù)集,游程編碼索引可以有效地節(jié)省索引存儲空間,提高檢索性能。
圖1是根據(jù)本發(fā)明的實(shí)施例的多時(shí)相數(shù)據(jù)集的邏輯組織的示意圖;圖2是根據(jù)本發(fā)明的實(shí)施例的多時(shí)相數(shù)據(jù)集的信息描述的示意圖;圖3是示出根據(jù)本發(fā)明的實(shí)施例的瓦片數(shù)據(jù)的柵格化表示方法的示意圖;圖4是示出根據(jù)本發(fā)明的實(shí)施例的瓦片數(shù)據(jù)的多行瓦片數(shù)據(jù)的游程碼構(gòu)成形式的不意圖;圖5是示出根據(jù)本發(fā)明的實(shí)施例的判斷瓦片是否存在的流程的流程圖;圖6是示出根據(jù)本發(fā)明的實(shí)施例的表示游程編碼索引的二維數(shù)組的示意圖;圖7是示出根據(jù)本發(fā)明的實(shí)施例的多時(shí)相瓦片數(shù)據(jù)集管理系統(tǒng)構(gòu)架的示意圖;圖8是示出根據(jù)本發(fā)明的實(shí)施例的多時(shí)相數(shù)據(jù)集的創(chuàng)建流程的流程圖;圖9是示出根據(jù)本發(fā)明的實(shí)施例的多時(shí)相數(shù)據(jù)集的瀏覽流程的流程圖;圖10是示出根據(jù)本發(fā)明的實(shí)施例的多時(shí)相瓦片數(shù)據(jù)集管理工具主界面的示意圖。
具體實(shí)施例方式圖1是根據(jù)本發(fā)明的實(shí)施例的多時(shí)相數(shù)據(jù)集的邏輯組織的示意圖。根據(jù)本發(fā)明的一個(gè)實(shí)施例,多時(shí)相瓦片數(shù)據(jù)集是由多個(gè)具有時(shí)間屬性的瓦片數(shù)據(jù)集邏輯組成的,如圖1所示。多時(shí)相瓦片數(shù)據(jù)集本身也是一種瓦片數(shù)據(jù)集,具有瓦片數(shù)據(jù)集的特點(diǎn)。瓦片數(shù)據(jù)集可以通過注冊成為多時(shí)相瓦片數(shù)據(jù)集的一部分。一個(gè)時(shí)相數(shù)據(jù)集也稱為數(shù)據(jù)集的一個(gè)版本,這樣,多時(shí)相數(shù)據(jù)集就是由多個(gè)版本的數(shù)據(jù)集組成的,每個(gè)版本可以包括多個(gè)數(shù)據(jù)集。具體地,多時(shí)相瓦片數(shù)據(jù)集的組織方法如下。多時(shí)相瓦片數(shù)據(jù)集由數(shù)據(jù)集元信息(MetaData)和若干不同時(shí)相的瓦片數(shù)據(jù)集信息組成,其信息描述如圖2所示。所述的數(shù)據(jù)集元信息包括多時(shí)相數(shù)據(jù)集名稱(DataSetName)、多時(shí)相數(shù)據(jù)集類型(DataSetType)、西邊界值(West)、東邊界值(East)、南邊界值(South)、北邊界值(North)、瓦片頂層層級(ValidTopLevel)、瓦片底層層級(ValidBottomLevel)、瓦片金字塔(Pyramid)、空間參考(GeographyReference)、像素?cái)?shù)(PixelNums)、地形類型(DEMValueType)、無效值(InvalidValue)、層級描述(LevelInfoDetail)。所述的邊界值的范圍是所有時(shí)相數(shù)據(jù)集范圍的并集,所述的瓦片層級范圍(瓦片頂層層級(ValidTopLevel)-瓦片底層層級(ValidBottomLevel))也是所有時(shí)相數(shù)據(jù)集瓦片層級范圍的并集。所述的不同時(shí)相的瓦片數(shù)據(jù)集信息包括時(shí)相標(biāo)識(TemporalID)、時(shí)相名稱(TemporalName)、時(shí)相開始時(shí)間(TemporalStart)、時(shí)相結(jié)束時(shí)間(TemporalEnd)、時(shí)相描述(TemporalDescribe)、數(shù)據(jù)集名稱(DatasetName)、數(shù)據(jù)集范圍(DatasetRange)、數(shù)據(jù)集類型(DatasetType)、與數(shù)據(jù)集范圍對應(yīng)的游程編碼索引(Datasetlndex)、數(shù)據(jù)集路徑(Connection)。下面舉例說明多時(shí)相瓦片數(shù)據(jù)集的描述。多時(shí)相瓦片數(shù)據(jù)集由數(shù)據(jù)集元信息和若干瓦片數(shù)據(jù)集信息組成,由XML文件描
述,示例如下。〈MultiT emporal>
<!--多時(shí)相數(shù)據(jù)集元信息-->
<MetaData>
<DaiaSctNamc> 名稱 </DataSctNamc>
<DataSetT ype> . H</DataSetT ype>
<W est>0</W est :- <East>0</East>
<S o utli > (WSouth〉
<North>0</North>
<VaiidTop Level〉10</ValidTopLevel〉
<VaIidBottoinLevel> 12</Valk!BottomLevel>
<Pvrainid>
〈Basic Description=`”適用于GoogleMap,BingMap等Web地圖的金字塔模型”PyramidID=M9dab7487-b3fd-4e84-9e6b-60636d3c85dbM Name=”Web墨卡托金字塔”/>
< Level TopLeveIIndex=i,0,! Bottom Lev el !ndex=f,20M ScaIeX=iiSn ScaIeY=!f2"/>CTileBasic TileSizeX=”256” TileSizeY=M256M OrigiiiRowlndex=nOnOriginColIndex=!JOf,/>
<TopTile rroinX='20037508.3427891990000000000(TFromY-,,20037508.342789199000000()0000" ToX—”20037508 J42789] 9900000000000"ToY=M-20037508.342789199000000000007>
〈Const PI=ft3.14159265358979310000M
lolerance=n0.0000001 19209289550787>
<Range XMin=M-20037508 34278919900000000000”YMin=”-20037508.3427S919900000000000M XMax=”20037508.342789W900000000000nYMax=M20037508.34278919900000000000"^
〈/Pyramid〉
<GeograpiiyReference>PROJCS[&qitot;Mercator (I SP) ( ki[-投
談)",GEOGCS["lUGG 1975":DATUM["IUGG
1975",SPHER01D["IUGG1975".6378140,298.257];TOWGS84i0,0.0,0,0,0,0]] PRIMEM[&qiiot;GreenwIch" 0],UNIT["dcgrcc",0.0174532925199433]],PROJECT]ON["Mcrcator_i SP"],PARAMETER["latitudc_of_odgiii"”O(jiān)LPARAMETER[&quoUccntral—mcridian",0],[)ARAMETER|&qi!Ot;scalc_factor&qiiot;.l],PARAMETER[&qiiot;falsc_casting(fequot;10],PARAMETER["false_northiBg"50],UNIT[&qiiot;Meter",l]j<7GeographyReference><Pixe1Nums>0</Pixe1Nums>
<DEMVaiueType>0</DEMVaIi3eType>
<InvalidVa!ue>0<,invalid Val oe>
<LevelInfbDetail>0</LevelIntbDetail>
</MetaData>
<!--時(shí)相信息-->
〈Temporals〉
<T emporal>
<T emporal I D> 10000</T empo ral I D>
<TemporaIName>\\x</TernporalName>
<T eniporaIStart>2012/1 /1 </T eniporal Starl> <TemporaIEnd>9999./9/9</TemporalEnd> <TemporalDescribe>jnii^</TeniporcilDeseribe> <DataserNaiiie>xxxx</DarasetName>
<DaiasetRaiige> - 111:1l^i^DatasetRange-^
<DatasetType>0</DatasetType>
<Dataset!ndex> 丨j</Datasetlndex>
〈Connection〉c:\sqiiteiiie</Connection>
</T etnporaI>
〈/Temporals〉
</MultiT emporal>在Oracle數(shù)據(jù)庫中,數(shù)據(jù)集元信息用表結(jié)構(gòu)如表I所示的一個(gè)元表GE0GL0BE—DATASETEX—BASEMETA、以及若干瓦片數(shù)據(jù)集表組成,瓦片數(shù)據(jù)集表的命名規(guī)則為“GG—VER—多時(shí)相數(shù)據(jù)集名稱”,瓦片數(shù)據(jù)集表的表結(jié)構(gòu)如表2所示。
權(quán)利要求
1.一種多時(shí)相瓦片數(shù)據(jù)集游程編碼索引方法,其中,其中,所述多時(shí)相瓦片數(shù)據(jù)集是由不同時(shí)相的數(shù)據(jù)集通過注冊的方法邏輯上形成的瓦片數(shù)據(jù)集,所述游程編碼索引以行為單位,按照列的順序?qū)⑦B續(xù)的瓦片用開始的列號和結(jié)束的列號表示,所述游程編碼索引按照每行組成行數(shù)組,其中,行數(shù)組是連續(xù)的數(shù)組,其特征在于,該方法包括針對于特定瓦片的層級、行號、以及列號而進(jìn)行的以下步驟 S10,判斷該層級是否在級別范圍內(nèi); S20,如果該層級不在所述級別范圍內(nèi),則對該層級建立新的游程編碼索引; S30,如果該層級在級別范圍內(nèi),則在該層級對應(yīng)的游程編碼索引中,判斷該行號是否存在于對應(yīng)的行數(shù)組中; S40,如果步驟S30的判斷的結(jié)果為否,則追加ー個(gè)行數(shù)組; S50,如果步驟S30的判斷的結(jié)果為是,則在該行號對應(yīng)的行數(shù)組中遍歷游程編碼單元,判斷應(yīng)該添加或并入所述列號的位置。
2.如權(quán)利要求1所述的方法,其中,所述步驟S50包括 S60,通過將所述列號和所述行數(shù)組中的游程編碼單元的距離進(jìn)行比較,來決定所述列號在對應(yīng)的行數(shù)組中的位置。
3.如權(quán)利要求2所述的方法,其中,所述步驟S60包括 S601,如果所述列號和對應(yīng)的行數(shù)組中的游程編碼單元的距離小于-1,則將所述列號插入到該游程編碼單元之前的游程編碼單元長度為I的游程編碼單元; S603,如果所述列號和對應(yīng)的行數(shù)組中的游程編碼單元的距離的絕對值為1,則將所述列號直接并入到該游程編碼單元; S605,如果所述列號和對應(yīng)的行數(shù)組中的游程編碼單元的距離的絕對值為O,則不進(jìn)行任何操作; S607,如果所述列號和對應(yīng)的行數(shù)組中的游程編碼單元的距離大于1,則直接在該行數(shù)組的最后添加ー個(gè)新的游程編碼單元。
4.如權(quán)利要求3所述的方法,其中,所述步驟S603包括 S6031,在將所述列號直接并入所述游程編碼單元之后,若所述游程編碼單元之后還存在游程編碼單元,則檢查所述游程編碼單元與之后的游程編碼單元是否相連,如果相連,則將之后的游程編碼單元并入所述游程編碼單元。
5.一種多時(shí)相瓦片數(shù)據(jù)集組織方法,包括 由數(shù)據(jù)集元信息和不同時(shí)相的瓦片數(shù)據(jù)集信息組成所述多時(shí)相瓦片數(shù)據(jù)集, 其中,所述多時(shí)相瓦片數(shù)據(jù)集是按照權(quán)利要求1至4中的ー個(gè)所述的游程編碼索引方法進(jìn)行索引的。
6.如權(quán)利要求5所述的方法,其中,所述數(shù)據(jù)集元信息包括多時(shí)相數(shù)據(jù)集名稱、多時(shí)相數(shù)據(jù)集類型、邊界值、瓦片頂層層級、瓦片底層層級、瓦片金字塔、空間參考、像素?cái)?shù)、地形類型、無效值、層級描述。
7.如權(quán)利要求5所述的方法,其中,所述不同時(shí)相的瓦片數(shù)據(jù)集信息包括時(shí)相標(biāo)識、時(shí)相名稱、時(shí)相開始時(shí)間、時(shí)相結(jié)束時(shí)間、時(shí)相描述、數(shù)據(jù)集名稱、數(shù)據(jù)集范圍、數(shù)據(jù)集類型、與數(shù)據(jù)集范圍對應(yīng)的游程編碼索引、數(shù)據(jù)集路徑。
8.如權(quán)利要求5所述的方法,其中,所述邊界值的范圍是所有時(shí)相數(shù)據(jù)集范圍的并集,所述瓦片層 級范圍也是所有時(shí)相數(shù)據(jù)集瓦片層級范圍的并集。
全文摘要
本發(fā)明涉及多時(shí)相瓦片數(shù)據(jù)集組織和游程編碼索引方法,其中,所述多時(shí)相瓦片數(shù)據(jù)集是由不同時(shí)相的數(shù)據(jù)集通過注冊的方法邏輯上形成的一種瓦片數(shù)據(jù)集,所述游程編碼索引以行為單位,按照列的順序?qū)⑦B續(xù)的瓦片用開始的列號和結(jié)束的列號表示,所述游程編碼索引按照每行組成行數(shù)組,其中,行數(shù)組是連續(xù)的數(shù)組。根據(jù)本發(fā)明的實(shí)施例的多時(shí)相瓦片數(shù)據(jù)集組織和游程編碼索引方法實(shí)現(xiàn)了多時(shí)相瓦片數(shù)據(jù)集的創(chuàng)建、索引、管理、注冊、刪除等功能,支持Oracle數(shù)據(jù)庫和SQLite數(shù)據(jù)庫存儲數(shù)據(jù)。
文檔編號G06F17/30GK103034677SQ20121040502
公開日2013年4月10日 申請日期2012年11月12日 優(yōu)先權(quán)日2012年11月12日
發(fā)明者鄧躍進(jìn), 宋愛紅, 魏延峰, 黃俊韜, 賀楷鍇, 程方, 顧恒, 楊曦, 邱文, 陳勝鵬, 劉琳, 張江凱, 王琳 申請人:武大吉奧信息技術(shù)有限公司