[發明專利]以GeoJSON格式半結構化方式存儲地理數據的MongoDB集群的地理數據讀寫方法有效
| 申請號: | 201410276517.3 | 申請日: | 2014-06-20 |
| 公開(公告)號: | CN104021210B | 公開(公告)日: | 2017-02-15 |
| 發明(設計)人: | 李滿春;張帥;陳振杰;徐經緯;秦逸 | 申請(專利權)人: | 南京大學 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 南京同澤專利事務所(特殊普通合伙)32245 | 代理人: | 蔡晶晶 |
| 地址: | 210046 江蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | geojson 格式 結構 方式 存儲 地理 數據 mongodb 集群 讀寫 方法 | ||
1.以GeoJSON格式半結構化方式存儲地理數據的MongoDB集群,其特征在于:MongoDB集群中包含有若干與地理數據源對應的空間數據庫,每個空間數據庫包含有若干個與地理圖層一一對應的地理要素集合,每個地理要素集合中包含有一個空間元數據文檔、若干與地理要素一一對應的GeoJSON文檔,所述地理要素以GeoJSON文檔的形式進行存儲,所述空間元數據文檔存儲有與相應地理圖層相關的空間元數據信息。
2.根據權利要求1所述的以GeoJSON格式半結構化方式存儲地理數據的MongoDB集群,其特征在于:所述空間元數據文檔以JSON文檔的形式存儲。
3.根據權利要求1所述的以GeoJSON格式半結構化方式存儲地理數據的MongoDB集群,其特征在于:所述空間元數據信息至少包括圖層空間參考、圖層外邊界、圖層內地理要素個數、圖層名稱。
4.權利要求1所述以GeoJSON格式半結構化方式存儲地理數據的MongoDB集群中地理數據的讀取方法,其特征在于步驟如下:
第1步、根據給定的連接參數建立與MongoDB集群的相應空間數據庫對應地理要素集合的數據連接;
第2步、查找所述MongoDB集群對應地理要素集合中的空間元數據文檔,獲取相應的空間元數據信息;
第3步、在計算機內存中構建以下OGR地理對象:地理數據源對象、地理圖層對象、地理要素對象、空間參考對象,所述OGR地理對象是OGR類庫中對應類的實例,所述地理數據源對象包含有與對應地理要素集合數目相等的地理圖層對象,每個地理圖層對象包含有若干地理要素對象;從所述第2步中獲取的空間元數據信息中抽取空間參考信息賦值給空間參考對象,完成對空間參考對象的實例化;
第4步、根據查詢條件利用JSON解析函數庫對相應空間數據庫對應地理要素集合中的GeoJSON文檔進行結構解析,逐個提取GeoJSON文檔中存儲的地理要素信息,賦值給地理要素對象,完成地理要素對象的實例化;
第5步、將所有實例化的地理要素對象更新至相應的地理圖層對象中,再將地理圖層對象更新至地理數據源對象中,至此,完成將MongoDB集群中地理數據讀取至內存。
5.根據權利要求4所述的地理數據的讀取方法,其特征在于:第5步完成之后,MongoDB集群中的地理數據以OGR地理對象的形式存在,用于進一步空間分析和數據處理。
6.根據權利要求4或5所述的地理數據的讀取方法,其特征在于:所述OGR地理對象用其他地理要素類庫中相應類的實例進行替換。
7.權利要求1所述以半結構化方式存儲地理數據的MongoDB集群的地理數據寫入方法,其特征在于,步驟如下:?
第1步、使用OGR類庫讀取地理數據矢量文件,在內存中實例化獲得以下地理對象:地理數據源對象、地理圖層對象、地理要素對象、空間參考對象,所述地理數據源對象包含有若干地理圖層對象,地理圖層對象包含若干地理要素對象,所述地理對象是OGR類庫中對應類的實例;?
第2步、在MongoDB集群中創建與地理數據源對象對應的空間數據庫,在所述空間數據庫內創建與地理圖層對象對應的地理要素集合,并將每個地理圖層對象的空間元數據信息分別以單獨JSON文檔的形式存入相應的地理要素集合;
第3步、將地理要素對象逐一以單獨GeoJSON文檔的形式寫入空間數據庫的相應地理要素集合中,至此,完成將地理數據寫入MongoDB集群。
8.權利要求7所述的地理數據寫入方法,其特征在于:所述OGR地理對象用其他地理要素類庫中相應類的實例進行替換。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京大學,未經南京大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/201410276517.3/1.html,轉載請聲明來源鉆瓜專利網。





