CN110377624B - 一种对具有时间空间多维属性的地理信息数据的存储和查询方法 - Google Patents
一种对具有时间空间多维属性的地理信息数据的存储和查询方法 Download PDFInfo
- Publication number
- CN110377624B CN110377624B CN201910702175.XA CN201910702175A CN110377624B CN 110377624 B CN110377624 B CN 110377624B CN 201910702175 A CN201910702175 A CN 201910702175A CN 110377624 B CN110377624 B CN 110377624B
- Authority
- CN
- China
- Prior art keywords
- data
- partition
- time
- space
- query
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Remote Sensing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种对具有时间空间等多维属性的地理信息数据的存储和查询方法,该方法的操作步骤如下:步骤一:数据分区模块计算时间分区和空间分区的值;步骤二:数据缓存模块将数据按照时间分区和空间分区对数据进行临时缓存;步骤三:数据存储模块将该分区数据序列化及压缩后存入到Cassandra;步骤四:数据查询模块计算时间分区和空间分区的值取得查询结果。本发明提供的方法具有普适性,适用于所有时间空间等多维属性的地理信息数据的存储查询,满足海量数据的存储需求,同时检索效率不会随数据量的增加而降低;通过建立时间及空间分区来缩小检索范围,提高检索效率;使用特殊的空间分区实现空间检索的功能。
Description
技术领域
本发明涉及地理信息数据的存储和查询技术领域,具体为一种对具有时间空间多维属性的地理信息数据的存储和查询方法。
背景技术
目前,对于地理信息数据的存储和检索(包括空间检索),主要分为两类:一是单机存储,将数据存到postgresql中,使用postgis对数据进行空间及时间序列检索;二是分布式存储,将数据按一定的格式进行组织,存储到hbase中,实现海量地理信息数据的查询。
以上两种方式都或多或少的存在一定的局限性,第一种方式仅仅适用于单机千万级数据的存储查询,对于百亿千亿级的数据无能为力;第二种分布式数据存储方式,弥补了第一种方式数据存储量级的局限性,然而却无法满足空间检索的需求。对于地理信息数据的使用者来说,既能满足大数据量的数据存储又能实现快速的时间及空间检索的方法是十分必要的。
发明内容
本发明的目的在于提供一种对具有时间空间多维属性的地理信息数据的存储和查询方法,以解决现有的技术缺陷和不能达到的技术要求。
为实现上述目的,本发明提供如下技术方案:一种对具有时间空间多维属性的地理信息数据的存储和查询方法,该方法具体包括数据分区模块、数据缓存模块、数据存储模块、数据查询模块、时间分区、空间分区、空间二级分区、数据时间和数据变量;该方法的操作步骤如下:步骤一:数据分区模块根据每一条数据的时间及经纬度计算时间分区和空间分区的值;步骤二:数据缓存模块将数据按照时间分区和空间分区对数据进行临时缓存;步骤三:数据存储模块将该分区数据序列化及压缩后存入到Cassandra;步骤四:数据查询模块根据查询时间计算时间分区的值,根据查询经纬度计算空间分区的值,以时间分区值、空间分区值、数据时间和数据变量为条件查询数据到内存中,在内存中根据经纬度条件再次进行过滤最终取得查询结果。
优选的,所述时间分区将数据按数据时间以年、月、日、时之一为单位分组,将属于该分区的数据全部存储到该分区下。
优选的,所述空间分区对地理空间进行网格划分,划分成大小相同的网格,使用希尔伯特曲线为网格赋予一个唯一的id,使相邻的网格id相邻,采用顺序检索,将属于该网格区域的数据全部存储到该分区下。
优选的,在所述空间分区的划分基础上利用空间二级分区再次划分。
优选的,所述数据变量是以protobufmap的形式存储,以key为数据的经纬度,以value为对应的变量值。
优选的,在以时间分区值、空间分区值、数据时间和数据变量为条件查询数据到内存中时,其中包括解压及反序列化过程。
优选的,所述数据查询模块根据查询经纬度计算空间分区的值时,对于空间分区检索,在进行boundingbox检索时,首先根据boundingbox计算获取该boundingbox占据的所有空间分区,根据这些分区值查询数据到内存,在内存中根据经纬度过滤属于该boundingbox的数据,最终得到查询结果。
与现有技术相比,本发明的有益效果如下:
1.本发明提供的方法具有普适性,适用于所有时间空间多维属性的地理信息数据的存储查询,满足海量数据的存储需求,同时检索效率不会随数据量的增加而降低。
2.本发明通过建立时间及空间分区来缩小检索范围,提高检索效率;
3.本发明提供的方法使用特殊的空间分区实现空间检索的功能。
附图说明
图1为本发明具体流程图;
图2为本发明具体存储模型图。
具体实施方式
下面将结合本发明,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种技术方案:一种对具有时间空间多维属性的地理信息数据的存储和查询方法,该方法具体包括数据分区模块、数据缓存模块、数据存储模块、数据查询模块、时间分区、空间分区、空间二级分区、数据时间和数据变量;该方法的操作步骤如下:步骤一:数据分区模块根据每一条数据的时间及经纬度计算时间分区和空间分区的值;步骤二:数据缓存模块将数据按照时间分区和空间分区对数据进行临时缓存;步骤三:数据存储模块将该分区数据序列化及压缩后存入到Cassandra;步骤四:数据查询模块根据查询时间
计算时间分区的值,根据查询经纬度计算空间分区的值,以时间分区值、空间分区值、数据时间和数据变量为条件查询数据到内存中,在内存中根据经纬度条件再次进行过滤最终取得查询结果。
所述时间分区将数据按数据时间以年、月、日、时之一为单位分组,将属于该分区的数据全部存储到该分区下。
所述空间分区对地理空间进行网格划分,划分成大小相同的网格,使用希尔伯特曲线为网格赋予一个唯一的id,使相邻的网格id相邻,采用顺序检索,将属于该网格区域的数据全部存储到该分区下。
在所述空间分区的划分基础上利用空间二级分区再次划分。
所述数据变量是以protobufmap的形式存储,以key为数据的经纬度,以value为对应的变量值。
在以时间分区值、空间分区值、数据时间和数据变量为条件查询数据到内存中时,其中包括解压及反序列化过程。
所述数据查询模块根据查询经纬度计算空间分区的值时,对于空间分区检索,在进行boundingbox检索时,首先根据boundingbox计算获取该boundingbox占据的所有空间分区,根据这些分区值查询数据到内存,在内存中根据经纬度过滤属于该boundingbox的数据,最终得到查询结果。
实施例一
本实施例所述的一种对具有时间空间多维属性的地理信息数据的存储和查询方法在本实施例中对地理信息数据的存储和查询方法的步骤如下:
步骤一:将数据按数据时间以年、月、日、时之一为单位分组,将空间分区对地理空间进行网格划分,划分成大小相同的网格,使用希尔伯特曲线为网格赋予一个唯一的id,使相邻的网格id相邻,采用顺序检索,利用数据分区模块根据每一条数据的时间及经纬度计算时间和空间分区值;
步骤二:利用数据缓存模块将数据按照时间和空间分区对数据进行临时缓存,将属于时间分区的数据全部存储到时间分区下,将属于网格区域的数据全部存储到空间分区下;
步骤三:当时间分区和空间分区下缓存数据条数或者缓存时间达到设定值时,利用数据存储模块会将时间分区和空间分区的数据序列化及压缩后存入到Cassandra;
步骤四:数据查询模块根据查询时间计算时间分区的值,根据查询经纬度计算空间分区的值,以时间分区值、空间分区值、数据时间、数据变量以及解压及反序列化过程为条件查询数据到内存中,在内存中根据经纬度条件再次进行过滤最终取得查询结果。
实施例二
步骤一:将数据按数据时间以年、月、日、时之一为单位分组,将空间分区对地理空间进行网格划分,划分成大小相同的网格,使用希尔伯特曲线为网格赋予一个唯一的id,使相邻的网格id相邻,采用顺序检索,利用数据分区模块根据每一条数据的时间及经纬度计算时间和空间分区值;
步骤二:利用数据缓存模块将数据按照时间和空间分区对数据进行临时缓存,将属于时间分区的数据全部存储到时间分区下,将属于网格区域的数据全部存储到空间分区下;
步骤三:在空间分区的划分基础上利用空间二级分区再次划分,当时间分区和空间分区下缓存数据条数或者缓存时间达到设定值时,利用数据存储模块会将时间分区和空间分区的数据序列化及压缩后存入到Cassandra;
步骤四:数据查询模块根据查询时间计算时间分区的值,根据查询经纬度计算空间分区的值,以时间分区值、空间分区值、数据时间、数据变量以及解压及反序列化过程为条件查询数据到内存中,在内存中根据经纬度条件再次进行过滤最终取得查询结果。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (6)
1.一种对具有时间空间多维属性的地理信息数据的存储和查询方法,其特征在于:该方法具体包括数据分区模块、数据缓存模块、数据存储模块、数据查询模块、时间分区、空间分区、空间二级分区、数据时间和数据变量;该方法的操作步骤如下:步骤一:数据分区模块根据每一条数据的时间及经纬度计算时间分区和空间分区的值;步骤二:数据缓存模块将数据按照时间分区和空间分区对数据进行临时缓存;步骤三:数据存储模块将该分区数据序列化及压缩后存入到Cassandra;步骤四:数据查询模块根据查询时间计算时间分区的值,根据查询经纬度计算空间分区的值,以时间分区值、空间分区值、数据时间和数据变量为条件查询数据到内存中,在内存中根据经纬度条件再次进行过滤最终取得查询结果;所述数据查询模块根据查询经纬度计算空间分区的值时,对于空间分区检索,在进行boundingbox检索时,首先根据boundingbox计算获取该boundingbox占据的所有空间分区,根据这些分区值查询数据到内存,在内存中根据经纬度过滤属于该boundingbox的数据,最终得到查询结果。
2.根据权利要求1所述的一种对具有时间空间多维属性的地理信息数据的存储和查询方法,其特征在于:所述时间分区将数据按数据时间以年、月、日、时之一为单位分组,将属于该分区的数据全部存储到该分区下。
3.根据权利要求1所述的一种对具有时间空间多维属性的地理信息数据的存储和查询方法,其特征在于:所述空间分区对地理空间进行网格划分,划分成大小相同的网格,使用希尔伯特曲线为网格赋予一个唯一的id,使相邻的网格id相邻,采用顺序检索,将属于该网格区域的数据全部存储到该分区下。
4.根据权利要求1所述的一种对具有时间空间多维属性的地理信息数据的存储和查询方法,其特征在于:在所述空间分区的划分基础上利用空间二级分区再次划分。
5.根据权利要求1所述的一种对具有时间空间多维属性的地理信息数据的存储和查询方法,其特征在于:所述数据变量是以protobufmap的形式存储,以key为数据的经纬度,以value为对应的变量值。
6.根据权利要求1所述的一种对具有时间空间多维属性的地理信息数据的存储和查询方法,其特征在于:在以时间分区值、空间分区值、数据时间和数据变量为条件查询数据到内存中时,其中包括解压及反序列化过程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910702175.XA CN110377624B (zh) | 2019-07-31 | 2019-07-31 | 一种对具有时间空间多维属性的地理信息数据的存储和查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910702175.XA CN110377624B (zh) | 2019-07-31 | 2019-07-31 | 一种对具有时间空间多维属性的地理信息数据的存储和查询方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110377624A CN110377624A (zh) | 2019-10-25 |
CN110377624B true CN110377624B (zh) | 2022-05-27 |
Family
ID=68257355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910702175.XA Active CN110377624B (zh) | 2019-07-31 | 2019-07-31 | 一种对具有时间空间多维属性的地理信息数据的存储和查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110377624B (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7167856B2 (en) * | 2001-05-15 | 2007-01-23 | Jonathan Keir Lawder | Method of storing and retrieving multi-dimensional data using the hilbert curve |
KR101029971B1 (ko) * | 2009-04-29 | 2011-04-20 | 고려대학교 산학협력단 | 무선 방송 환경에서의 제한적 nn 질의 처리 장치 및 방법과 이를 이용한 제한적 nn 질의 처리 시스템 |
CN104239362A (zh) * | 2013-06-24 | 2014-12-24 | 上海梅山钢铁股份有限公司 | 冷轧生产过程中高频数据的检索与存储方法 |
CN107423368B (zh) * | 2017-06-29 | 2020-07-17 | 中国测绘科学研究院 | 一种非关系数据库中的时空数据索引方法 |
CN107423422B (zh) * | 2017-08-01 | 2019-09-24 | 武大吉奥信息技术有限公司 | 基于网格的空间数据分布式存储及检索方法和系统 |
CN108804602A (zh) * | 2018-05-25 | 2018-11-13 | 武汉大学 | 一种基于spark的分布式空间数据存储计算方法 |
CN109241236A (zh) * | 2018-10-16 | 2019-01-18 | 中国海洋大学 | 海洋地理空间多维时变场数据分布式组织与查询处理方法 |
CN109992636B (zh) * | 2019-03-22 | 2021-06-08 | 中国人民解放军战略支援部队信息工程大学 | 时空编码方法、时空索引及查询方法及装置 |
CN110059067B (zh) * | 2019-04-04 | 2022-09-27 | 南京南瑞水利水电科技有限公司 | 一种水利空间矢量大数据存储管理方法 |
-
2019
- 2019-07-31 CN CN201910702175.XA patent/CN110377624B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110377624A (zh) | 2019-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109992636B (zh) | 时空编码方法、时空索引及查询方法及装置 | |
CN109284338B (zh) | 一种基于混合索引的卫星遥感大数据优化查询方法 | |
CN105589951B (zh) | 一种海量遥感影像元数据分布式存储方法及并行查询方法 | |
US8078394B2 (en) | Indexing large-scale GPS tracks | |
CN106528787B (zh) | 一种基于海量数据多维分析的查询方法及装置 | |
CN102023983B (zh) | 一种统计时空数据库管理方法 | |
CN112347118B (zh) | 数据存储、查询与生成方法、数据库引擎及存储介质 | |
CN102402617A (zh) | 一种利用分片及稀疏位图的易压缩数据库索引存储系统及其相应的构建、调度和查询处理方法 | |
CN106250523A (zh) | 一种分布式列存储系统索引的方法 | |
CN108804602A (zh) | 一种基于spark的分布式空间数据存储计算方法 | |
CN108009265B (zh) | 一种云计算环境下的空间数据索引方法 | |
Ma et al. | KSQ: Top-k similarity query on uncertain trajectories | |
CN110825733B (zh) | 一种面向多采样流的时间序列数据管理方法及系统 | |
CN112214472B (zh) | 气象格点数据的存储及查询方法、装置及存储介质 | |
CN112783901B (zh) | 一种基于物联网中间件的物联网时序大数据处理方法 | |
CN102890721A (zh) | 基于列存储技术的数据库建立方法及系统 | |
CN106991149B (zh) | 一种融合编码和多版本数据的海量空间对象存储方法 | |
CN111563081A (zh) | 一种矢量要素并行计算方法、装置、存储介质及终端 | |
CN102779138A (zh) | 实时数据的硬盘存取方法 | |
CN108205562A (zh) | 地理信息系统的定位数据存储、检索方法及其装置 | |
CN102768666A (zh) | 一种工业数据存储读取方法及其系统 | |
CN109145225B (zh) | 一种数据处理方法及装置 | |
CN112948439A (zh) | 一种实时处理gis数据查询请求方法、装置、介质及设备 | |
CN105787090A (zh) | 一种电力数据的olap系统的索引建立方法和系统 | |
CN110377624B (zh) | 一种对具有时间空间多维属性的地理信息数据的存储和查询方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: No.218-430079, Wuhan New Wuhu science and Technology Park, Wuhan Applicant after: Xiangji Technology Co.,Ltd. Address before: No.218-430079, Wuhan New Wuhu science and Technology Park, Wuhan Applicant before: XIANGJI ZHIYUAN (WUHAN) TECHNOLOGY CO.,LTD. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |