CN111737393A - 一种web环境下矢量数据自适管理方法及*** - Google Patents
一种web环境下矢量数据自适管理方法及*** Download PDFInfo
- Publication number
- CN111737393A CN111737393A CN202010618970.3A CN202010618970A CN111737393A CN 111737393 A CN111737393 A CN 111737393A CN 202010618970 A CN202010618970 A CN 202010618970A CN 111737393 A CN111737393 A CN 111737393A
- Authority
- CN
- China
- Prior art keywords
- vector
- database
- data
- cache
- spatial
- 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.)
- Granted
Links
- 238000007726 management method Methods 0.000 title claims abstract description 24
- 238000000034 method Methods 0.000 claims abstract description 21
- 238000013500 data storage Methods 0.000 claims description 35
- 230000003044 adaptive effect Effects 0.000 claims description 24
- 238000010276 construction Methods 0.000 claims description 22
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000013075 data extraction Methods 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
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/29—Geographical information databases
-
- 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/22—Indexing; Data structures therefor; Storage structures
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种web环境下矢量数据自适管理方法及***。方法包括:根据矢量数据构建空间数据库和缓存数据库;根据空间数据库中的矢量数据确定矢量要素密度;对矢量要素密度取对数确定矢量要素密度指数;根据矢量要素密度指数构建多尺度自适应格网模型;利用多尺度自适应格网模型确定矢量数据中的每一个矢量要素的格网标识;根据格网标识在空间数据库上建立分块索引;将建立分块索引后的空间数据库与缓存数据库进行关联,得到空间缓存数据库;利用空间缓存数据库提取用户待提取的矢量分块数据;本发明降低了矢量瓦片的预处理时间、提高了瓦片分块体量大小的均衡性以保证分块数据加载效率的一致性、并实现矢量瓦片数据的快速按需更新。
Description
技术领域
本发明涉及网络电子地图数据管理领域,特别是涉及一种web环境下矢量数据自适管理方法及***。
背景技术
网络电子地图已经成为人们使用地理信息的主流模式和联系各类信息的纽带,为大众的生产和生活提供了极大的便利。当前网络电子地图中,主要通过矢量金子塔模型管理瓦片地图数据,即将矢量数据预先在各个比例尺层级上分割为矢量格式的多分辨率矢量瓦片数据,浏览器端浏览电子地图时,根据地图范围请求当前区域范围内矢量瓦片数据,而后在浏览器端实时绘制后呈现给用户。
现有技术具备地图加载速度快、服务器负载低、可交互性强等优点。但在组织管理矢量数据过程中需要预先将矢量数据进行预先切片,带来的数据预处理时间开销巨大;此外,矢量瓦片大小固定,当矢量数据在空间上分布不均匀时会造成瓦片体量大小一致性较弱,带来矢量数据加载及显示速度不一致的弊端;最后,矢量数据更新后需要对更新范围内数据进行重新切片,难以快速按需更新。因次,本技术领域亟需一种新的技术方案,在网络电子地图数据的组织与管理中大幅降低矢量瓦片预处理时间、提高瓦片分块体量大小的均衡性以保证分块数据加载效率的一致性、并实现矢量瓦片数据的快速按需更新。
发明内容
本发明的目的是提供一种web环境下矢量数据自适管理方法及***,在网络电子地图数据的组织与管理中降低矢量瓦片的预处理时间、提高瓦片分块体量大小的均衡性以保证分块数据加载效率的一致性、并实现矢量瓦片数据的快速按需更新。
为实现上述目的,本发明提供了如下方案:
一种web环境下矢量数据自适管理方法,包括:
根据矢量数据构建空间数据库和缓存数据库;所述空间数据库用于存储矢量数据;所述缓存数据库用于在用户访问空间数据库的过程中将数据异步抽取至缓存数据库;所述缓存数据库初始为空;所述矢量数据包括Web地图中待展示的矢量要素;所述矢量要素包括建筑物、植被和河流;
根据所述空间数据库中的矢量数据确定矢量要素密度;所述矢量要素密度为Web地图中单位面积上矢量要素节点的数量;
对所述矢量要素密度取对数确定矢量要素密度指数;
根据所述空间数据库中的矢量数据的矢量要素密度指数构建多尺度自适应格网模型;所述多尺度自适应格网模型用于对所述空间数据库中的矢量数据进行细粒度分割;
利用所述多尺度自适应格网模型确定所述空间数据库中的矢量数据中的每一个矢量要素的格网标识;
根据所述格网标识在所述空间数据库上建立分块索引;所述分块索引用于从所述空间数据库中提取矢量分块数据;
将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;
利用空间缓存数据库提取用户待提取的矢量分块数据。
可选的,所述根据矢量数据构建空间数据库和缓存数据库,具体包括:
采用关系型数据库PostGIS构建空间数据库;
采用Key-value数据库Redis构建缓存数据库;
在所述空间数据库上建立矢量要素数据表,将全部矢量数据导入所述矢量要素数据表中;
对所述缓存数据库进行初始化;
在初始化后的缓存数据库上以Key-value形式构建数据存储方式索引、缓存矢量要素以及缓存矢量索引的表格。
可选的,所述将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库,具体包括:
采用数据存储方式索引、数据分块索引、缓存矢量索引将分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;所述数据存储方式索引用于记录矢量数据是否缓存;所述数据分块索引用于从空间数据库中按格网标识查询矢量数据;所述缓存矢量索引用于从所述缓存数据库中查询缓存矢量数据。
可选的,所述利用空间缓存数据库提取用户待提取的矢量分块数据,具体包括:
根据所述数据存储方式索引判断待提取的矢量分块数据是否已缓存至所述缓存数据库;
若所述待提取的矢量分块数据未缓存至所述缓存数据库,则在所述空间数据库中根据分块索引查询所述待提取的矢量分块数据;
将所述待提取的矢量分块数据存储至所述缓存数据库中缓存矢量要素表中,同时更新缓存矢量索引及数据存储方式索引;
若所述待提取的矢量分块数据已缓存至所述缓存数据库,则通过所述缓存数据库中的缓存矢量索引从所述缓存矢量要素中提取所述待提取的矢量分块数据。
一种web环境下矢量数据自适管理***,包括:
数据库构建模块,用于根据矢量数据构建空间数据库和缓存数据库;所述空间数据库用于存储矢量数据;所述缓存数据库用于在用户访问空间数据库的过程中将数据异步抽取至缓存数据库;所述缓存数据库初始为空;所述矢量数据包括Web地图中待展示的矢量要素;所述矢量要素包括建筑物、植被和河流;
矢量要素密度确定模块,用于根据所述空间数据库中的矢量数据确定矢量要素密度;所述矢量要素密度为Web地图中单位面积上矢量要素节点的数量;
矢量要素密度指数确定模块,用于对所述矢量要素密度取对数确定矢量要素密度指数;
多尺度自适应格网模型构建模块,用于根据所述空间数据库中的矢量数据的矢量要素密度指数构建多尺度自适应格网模型;所述多尺度自适应格网模型用于对所述空间数据库中的矢量数据进行细粒度分割;
格网标识确定模块,用于利用所述多尺度自适应格网模型确定所述空间数据库中的矢量数据中的每一个矢量要素的格网标识;
分块索引建立模块,用于根据所述格网标识在所述空间数据库上建立分块索引;所述分块索引用于从所述空间数据库中提取矢量分块数据;
空间缓存数据库确定模块,用于将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;
矢量分块数据提取模块,用于利用空间缓存数据库提取用户待提取的矢量分块数据。
可选的,所述数据库构建模块具体包括:
空间数据库构建单元,用于采用关系型数据库PostGIS构建空间数据库;
缓存数据库构建单元,用于采用Key-value数据库Redis构建缓存数据库;
矢量要素数据表建立单元,用于在所述空间数据库上建立矢量要素数据表,将全部矢量数据导入所述矢量要素数据表中;
缓存数据库初始化单元,用于对所述缓存数据库进行初始化;
缓存数据库表格建立单元,用于在初始化后的缓存数据库上以Key-value形式构建数据存储方式索引、缓存矢量要素以及缓存矢量索引的表格。
可选的,所述空间缓存数据库确定模块具体包括:
空间缓存数据库确定单元,用于采用数据存储方式索引、数据分块索引、缓存矢量索引将分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;所述数据存储方式索引用于记录矢量数据是否缓存;所述数据分块索引用于从空间数据库中按格网标识查询矢量数据;所述缓存矢量索引用于从所述缓存数据库中查询缓存矢量数据。
可选的,所述矢量分块数据提取模块具体包括:
判断单元,用于根据所述数据存储方式索引判断待提取的矢量分块数据是否已缓存至所述缓存数据库;
第一索引单元,用于若所述待提取的矢量分块数据未缓存至所述缓存数据库,则在所述空间数据库中根据分块索引查询所述待提取的矢量分块数据;
存储更新单元,用于将所述待提取的矢量分块数据存储至所述缓存数据库中缓存矢量要素表中,同时更新缓存矢量索引及数据存储方式索引;
第二索引单元,用于若所述待提取的矢量分块数据已缓存至所述缓存数据库,则通过所述缓存数据库中的缓存矢量索引从所述缓存矢量要素中提取所述待提取的矢量分块数据。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明所提供的一种web环境下矢量数据自适管理方法及***,通过构建多尺度自适应格网模型,依照不同区域上的要素密度指数大小灵活调整分块瓦片大小,即要素密度指数越高的区域瓦片分割粒度越细,要素密度指数越高的区域瓦片分割粒度越粗,从而保证每个瓦片体量大小较为均衡,提高分块瓦片数据加载效率的一致性。本发明数据预处理时间消耗主要由数据入库及索引构建带来,无需对矢量数据预先切片,其时间预处理时间消耗较低。进而,本发明在网络电子地图服务端使用多级数据库通过多尺度自适应格网模型组织矢量数据,无需对矢量数据进行预先切片,即可提供自适应分块大小的细粒度矢量瓦片服务。并通过将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,数据更新可在数据库层面按要素更新,后续更新数据索引即可,无需对更新范围内数据重新切片,实现矢量瓦片数据的快速按需更新。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的一种web环境下矢量数据自适管理方法流程示意图;
图2为本发明所提供的多尺度自适应格网模型构建示意图;
图3为本发明所提供的空间缓存数据库动态关联示意图;
图4为本发明所提供的一种web环境下矢量数据自适管理***结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种web环境下矢量数据自适管理方法及***,在网络电子地图数据的组织与管理中降低矢量瓦片的预处理时间、提高瓦片分块体量大小的均衡性以保证分块数据加载效率的一致性、并实现矢量瓦片数据的快速按需更新。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
网络电子地图从逻辑结构上分为浏览器端和服务器端。浏览器端是用户使用电子地图的入口,用户通过浏览器界面向服务器端提出请求,并对服务器端返回的结果进行展示。服务器端负责存储管理空间数据,并根据浏览器端的请求返回数据结果。本技术方案部署在服务器端,在服务器端通过构建多级数据库直接存储原始矢量数据,在不预先切片的前提下,根据浏览器端的访问请求通过多尺度自适应格网模型从数据库中实时获取矢量瓦片数据,同时多级数据库之间保持动态协同,以满足数据访问效率。
图1为本发明所提供的一种web环境下矢量数据自适管理方法流程示意图,如图1所示,本发明所提供的一种web环境下矢量数据自适管理方法,包括:
S101,根据矢量数据构建空间数据库和缓存数据库;所述空间数据库用于存储矢量数据;所述缓存数据库用于在用户访问空间数据库的过程中将数据异步抽取至缓存数据库;所述缓存数据库初始为空;所述矢量数据包括Web地图中待展示的矢量要素;所述矢量要素包括建筑物、植被和河流。所述矢量要素并不限于此;空间数据库和缓存数据库协同提供矢量数据服务。空间数据库和缓存数据库均在网络电子地图服务器端进行构建。
采用关系型数据库PostGIS构建空间数据库。
采用Key-value数据库Redis构建缓存数据库。
表1为矢量要素数据表,在所述空间数据库上建立矢量要素数据表,将全部矢量数据导入所述矢量要素数据表中。表1如下:
表1
其中,FEATURE_ID为矢量要素ID,FEATURE_ID唯一且不重复。ATTRIBUTE_N为要素属性字段,GEOM为矢量要素几何信息,采用PostGIS Geometry存储。RELATED_GRID_TAG为矢量要素与多尺度自适应格网在不同层级上空间关联后动态建立,例如13层级上格网标识信息字段为RELATED_GRID_TAG_13。将全部矢量数据导入矢量要素数据表,得到初始化后的矢量数据库。
对所述缓存数据库进行初始化。所述缓存数据库用于在浏览器端向服务端请求矢量瓦片数据时,辅助空间数据库提供数据。
在初始化后的缓存数据库上以Key-value形式构建数据存储方式索引、缓存矢量要素以及缓存矢量索引的表格。初始构建的数据存储方式索引、缓存矢量要素以及缓存矢量索引的表格均为空白表格。
数据存储方式索引表用于记录分块矢量数据是否提取至缓存数据库,进而将数据查询任务分配至空间数据库或缓存数据库。该索引通过Redis数据库中String数据类型存储,Key值为多尺度自适应格网标识码,Value为Key值对应格网内矢量数据的缓存状态,并如表2所示,表2如下:
表2
缓存矢量要素表用于存储矢量要素信息,该索引通过Redis数据库中Hash数据类型存储,Key值为要素ID,Field包括属性字段及几何字段,几何信息按Geobuf编码格式存储,并如表3所示,表3如下:
表3
缓存矢量索引表用于根据格网标识码获取本格网内所有要素ID,进而辅助从缓存矢量要素表中获取缓存矢量要素。该索引通过Redis数据库中String数据类型存储,Key值为多尺度自适应格网标识码,Value为格网内全部对应矢量要素ID集合,并如表4所示,表4如下:
表4
S102,根据所述空间数据库中的矢量数据确定矢量要素密度;所述矢量要素密度为Web地图中单位面积上矢量要素节点的数量。
S103,对所述矢量要素密度取对数确定矢量要素密度指数。矢量要素密度指数为多尺度自适应格网模型构建的基础。
S104,根据所述空间数据库中的矢量数据的矢量要素密度指数构建多尺度自适应格网模型;所述多尺度自适应格网模型用于对所述空间数据库中的矢量数据进行细粒度分割。
多尺度自适应格网模型根据矢量数据表中的要素密度指数建立大小不均等的空间格网,即在初始均匀格网的基础上,对矢量要素密度指数较高的区域进行格网细分,对矢量要素密度较低的区域进行格网合并。通过该模型,得到分割粒度更为精细的多尺度自适应格网,该自适应格网为不均匀格网,矢量要素分布密集区域的格网大小更小,矢量要素分布稀疏的区域格网大小更大。
图2为多尺度自适应格网模型具体的构建过程示意图,所述多尺度自适应格网模型的构建过程具体为:
步骤1)在初始化后的空间数据库上,构建初始化均匀格网。初始化格网与传统均匀格网大小一致,单个初始化格网大小记为basicSize,水平、垂直方向的格网数量分别为M和N。
步骤2)在步骤1)所得的初始化格网的基础上,计算要素密度指数。
确定矢量要素密度指数。定义矢量要素密度为单位面积上矢量要素节点的数量,对要素空间密度取对数得到矢量要素密度指数,具体见公式1。
其中,d为要素密度指数,Fi表示矢量要素i,PointCount(Fg)计算矢量要素g的节点数量,S为当前层级下均匀格网的面积。T为分块范围内要素总数量,为避免对数计算中真数为0的特殊情况,所有要素节点数求和后加1。
对步骤1)所得的初始化格网,按上述公式(1)计算其要素密度指数。取要素密度指数平均值,记为davg,确定格网分割及合并阈值dsplit,dmerge,取dsplit=4×davg,dmerge=davg/4。
该步骤完成后,得到具备矢量要素密度指数初值的格网以及格网阈值。
步骤3)对步骤2)所得的格网的基础上,矢量要素划分等级i,初始化i=1。
步骤4)在步骤2)所得到的格网中,根据步骤3)中的划分等级i筛选出格网大小currentGridSize为2i-1的格网,作为当前划分等级下的待处理格网数据集。
步骤5)若步骤4)中的待处理格网数据集为空,则将矢量数据与多尺度格网进行空间关联,结束当前流程。
步骤6)若步骤4)中的待处理格网数据集为非空,则在待处理格网数据集上建立滑动窗口,完成滑动窗口初始化操作。具体包括滑动窗口大小、步长、位置、移动次数及其最大阈值。
滑动窗口大小记为windowSize,步长记为windowStep,二者与初始化格网大小及划分等级的关系如下:
滑动窗口与待处理格网左上角格网的相对位置用来标识滑动窗口的当前位置,记为[left,top],left为水平相对距离,top为垂直相对距离,初始化滑动窗口位置为[0,0],滑动窗口移动方向为从左至右、自上而下。滑动窗口移动次数记为k,移动次数最大阈值
若k≤kmax,计算当前滑动窗口位置,可表示为:
步骤7)从待处理格网数据集G中,取出步骤6)中滑动窗口内格网的要素密度指数。
步骤8)若步骤7)中所取要素密度指数全部小于dmerge,则合并格网,本窗口内格网合并结束。
步骤9)若步骤7)中所取要素密度指数任一值大于dsplit,则对该格网进行四等分。并重新计算分割后格网内要素密度指数,若任一值大于dsplit,则继续对该格网进行分割。若所有格网要素密度指数均不大于dsplit,本窗口内格网拆分结束。
步骤10)待步骤8)、步骤9)完成后,继续移动滑动窗口,当前滑动窗口移动次数自增1。
步骤11)若移动次数不大于kmax,则重复步骤6)至步骤10),继续在当前划分等级下合并、分割格网。
步骤12)若移动次数大于kmax,划分等级自增1,进入下一个划分尺度。
步骤13)在新的划分等级上筛选待处理格网数据集G,若待处理格网数据集为非空,则重复步5)至步骤11),若待处理格网数据集为空,则该层级上格网的重新划分完成。
步骤14)将空间数据库中矢量数据与多尺度自适应格网进行空间关联,每个矢量要素在该层级上有唯一关联格网,并将格网标识码赋给矢量数据,即将格网标识码赋值至空间数据库矢量要素数据表中RELATED_GRID_TAG字段。跨格网的要素被格网分割为多个要素,但要素ID保持不变。
S105,利用所述多尺度自适应格网模型确定所述空间数据库中的矢量数据中的每一个矢量要素的格网标识;即将矢量要素数据表与多尺度自适应格网进行关联,每个矢量要素在固定层级下均有唯一格网标识。
S106,根据所述格网标识在所述空间数据库上建立分块索引;所述分块索引用于从所述空间数据库中提取矢量分块数据。数据分块索引为提取空间数据库中矢量分块数据的入口,根据多尺度自适应格网模型中的格网标识码构建,可通过分块数据所在格网标识码查询该分块内所有矢量要素。
S107,将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库。空间缓存数据库动态关联关系如图3所示。
采用数据存储方式索引、数据分块索引、缓存矢量索引将分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;所述数据存储方式索引用于记录矢量数据是否缓存;所述数据分块索引用于从空间数据库中按格网标识查询矢量数据;所述缓存矢量索引用于从所述缓存数据库中查询缓存矢量数据。
S108,利用空间缓存数据库提取用户待提取的矢量分块数据。
根据所述数据存储方式索引判断待提取的矢量分块数据是否已缓存至所述缓存数据库;
若所述待提取的矢量分块数据未缓存至所述缓存数据库,则在所述空间数据库中根据分块索引查询所述待提取的矢量分块数据;
将所述待提取的矢量分块数据存储至所述缓存数据库中缓存矢量要素表中,同时更新缓存矢量索引及数据存储方式索引;
若所述待提取的矢量分块数据已缓存至所述缓存数据库,则通过所述缓存数据库中的缓存矢量索引从所述缓存矢量要素中提取所述待提取的矢量分块数据。
作为一个具体的实施例,服务器端在响应浏览器端的查询请求时,通过空间数据库、缓存数据库以及建立在二者之上的多级索引协同提供实时瓦片数据服务。瓦片数据未缓存时,直接通过空间数据库借助数据分块索引提供数据服务,而后更新至缓存数据库;瓦片已缓存后,则通过缓存数据库提供数据服务。
具体过程如下:
1)读取缓存数据库上数据存储方式索引。根据该索引将数据查询分配至空间数据库或缓存数据库。
2)若分块矢量数据已经存储至缓存数据库,则在缓存矢量索引支持下于缓存数据库中根据格网标识码查询所需矢量分块数据,并返回数据。
3)若分块矢量数据尚未缓存,则在数据分块索引支持下于空间数据库中通过格网标识码查询所需矢量数据。查询结束后将查询结果数据返回至客户端,再将所查询出的矢量数据存储至缓存数据库。空间/缓存数据适配器将空间数据库中提取的矢量数据按缓存数据库结构生成缓存矢量要素表、缓存矢量索引表所需的Key-Value形式数据,并将转换后数据存储至缓存数据库。
4)缓存数据库完成更新后,联动更新数据存储方式索引。
图4为本发明所提供的一种web环境下矢量数据自适管理***结构示意图,如图4所示,本发明所提供的一种web环境下矢量数据自适管理***,包括:数据库构建模块401、矢量要素密度确定模块402、矢量要素密度指数确定模块403、多尺度自适应格网模型构建模块404、格网标识确定模块405、分块索引建立模块406、空间缓存数据库确定模块407和矢量分块数据提取模块408。
数据库构建模块401用于根据矢量数据构建空间数据库和缓存数据库;所述空间数据库用于存储矢量数据;所述缓存数据库用于在用户访问空间数据库的过程中将数据异步抽取至缓存数据库;所述缓存数据库初始为空;所述矢量数据包括Web地图中待展示的矢量要素;所述矢量要素包括建筑物、植被和河流;
矢量要素密度确定模块402用于根据所述空间数据库中的矢量数据确定矢量要素密度;所述矢量要素密度为Web地图中单位面积上矢量要素节点的数量;
矢量要素密度指数确定模块403用于对所述矢量要素密度取对数确定矢量要素密度指数;
多尺度自适应格网模型构建模块404用于根据所述空间数据库中的矢量数据的矢量要素密度指数构建多尺度自适应格网模型;所述多尺度自适应格网模型用于对所述空间数据库中的矢量数据进行细粒度分割;
格网标识确定模块405用于利用所述多尺度自适应格网模型确定所述空间数据库中的矢量数据中的每一个矢量要素的格网标识;
分块索引建立模块406用于根据所述格网标识在所述空间数据库上建立分块索引;所述分块索引用于从所述空间数据库中提取矢量分块数据;
空间缓存数据库确定模块407用于将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;
矢量分块数据提取模块408用于利用空间缓存数据库提取用户待提取的矢量分块数据。
所述数据库构建模块401具体包括:空间数据库构建单元、缓存数据库构建单元、矢量要素数据表建立单元、缓存数据库初始化单元和缓存数据库表格建立单元。
空间数据库构建单元用于采用关系型数据库PostGIS构建空间数据库;
缓存数据库构建单元用于采用Key-value数据库Redis构建缓存数据库;
矢量要素数据表建立单元用于在所述空间数据库上建立矢量要素数据表,将全部矢量数据导入所述矢量要素数据表中;
缓存数据库初始化单元用于对所述缓存数据库进行初始化;
缓存数据库表格建立单元用于在初始化后的缓存数据库上以Key-value形式构建数据存储方式索引、缓存矢量要素以及缓存矢量索引的表格。
所述空间缓存数据库确定模块407具体包括:空间缓存数据库确定单元。
空间缓存数据库确定单元用于采用数据存储方式索引、数据分块索引、缓存矢量索引将分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;所述数据存储方式索引用于记录矢量数据是否缓存;所述数据分块索引用于从空间数据库中按格网标识查询矢量数据;所述缓存矢量索引用于从所述缓存数据库中查询缓存矢量数据。
所述矢量分块数据提取模块408具体包括:判断单元、第一索引单元、存储更新单元和第二索引单元。
判断单元用于根据所述数据存储方式索引判断待提取的矢量分块数据是否已缓存至所述缓存数据库;
第一索引单元用于若所述待提取的矢量分块数据未缓存至所述缓存数据库,则在所述空间数据库中根据分块索引查询所述待提取的矢量分块数据;
存储更新单元用于将所述待提取的矢量分块数据存储至所述缓存数据库中缓存矢量要素表中,同时更新缓存矢量索引及数据存储方式索引;
第二索引单元用于若所述待提取的矢量分块数据已缓存至所述缓存数据库,则通过所述缓存数据库中的缓存矢量索引从所述缓存矢量要素中提取所述待提取的矢量分块数据。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的***而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种web环境下矢量数据自适管理方法,其特征在于,包括:
根据矢量数据构建空间数据库和缓存数据库;所述空间数据库用于存储矢量数据;所述缓存数据库用于在用户访问空间数据库的过程中将数据异步抽取至缓存数据库;所述缓存数据库初始为空;所述矢量数据包括Web地图中待展示的矢量要素;所述矢量要素包括建筑物、植被和河流;
根据所述空间数据库中的矢量数据确定矢量要素密度;所述矢量要素密度为Web地图中单位面积上矢量要素节点的数量;
对所述矢量要素密度取对数确定矢量要素密度指数;
根据所述空间数据库中的矢量数据的矢量要素密度指数构建多尺度自适应格网模型;所述多尺度自适应格网模型用于对所述空间数据库中的矢量数据进行细粒度分割;
利用所述多尺度自适应格网模型确定所述空间数据库中的矢量数据中的每一个矢量要素的格网标识;
根据所述格网标识在所述空间数据库上建立分块索引;所述分块索引用于从所述空间数据库中提取矢量分块数据;
将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;
利用空间缓存数据库提取用户待提取的矢量分块数据。
2.根据权利要求1所述的一种web环境下矢量数据自适管理方法,其特征在于,所述根据矢量数据构建空间数据库和缓存数据库,具体包括:
采用关系型数据库PostGIS构建空间数据库;
采用Key-value数据库Redis构建缓存数据库;
在所述空间数据库上建立矢量要素数据表,将全部矢量数据导入所述矢量要素数据表中;
对所述缓存数据库进行初始化;
在初始化后的缓存数据库上以Key-value形式构建数据存储方式索引、缓存矢量要素以及缓存矢量索引的表格。
3.根据权利要求2所述的一种web环境下矢量数据自适管理方法,其特征在于,所述将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库,具体包括:
采用数据存储方式索引、数据分块索引、缓存矢量索引将分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;所述数据存储方式索引用于记录矢量数据是否缓存;所述数据分块索引用于从空间数据库中按格网标识查询矢量数据;所述缓存矢量索引用于从所述缓存数据库中查询缓存矢量数据。
4.根据权利要求3所述的一种web环境下矢量数据自适管理方法,其特征在于,所述利用空间缓存数据库提取用户待提取的矢量分块数据,具体包括:
根据所述数据存储方式索引判断待提取的矢量分块数据是否已缓存至所述缓存数据库;
若所述待提取的矢量分块数据未缓存至所述缓存数据库,则在所述空间数据库中根据分块索引查询所述待提取的矢量分块数据;
将所述待提取的矢量分块数据存储至所述缓存数据库中缓存矢量要素表中,同时更新缓存矢量索引及数据存储方式索引;
若所述待提取的矢量分块数据已缓存至所述缓存数据库,则通过所述缓存数据库中的缓存矢量索引从所述缓存矢量要素中提取所述待提取的矢量分块数据。
5.一种web环境下矢量数据自适管理***,其特征在于,包括:
数据库构建模块,用于根据矢量数据构建空间数据库和缓存数据库;所述空间数据库用于存储矢量数据;所述缓存数据库用于在用户访问空间数据库的过程中将数据异步抽取至缓存数据库;所述缓存数据库初始为空;所述矢量数据包括Web地图中待展示的矢量要素;所述矢量要素包括建筑物、植被和河流;
矢量要素密度确定模块,用于根据所述空间数据库中的矢量数据确定矢量要素密度;所述矢量要素密度为Web地图中单位面积上矢量要素节点的数量;
矢量要素密度指数确定模块,用于对所述矢量要素密度取对数确定矢量要素密度指数;
多尺度自适应格网模型构建模块,用于根据所述空间数据库中的矢量数据的矢量要素密度指数构建多尺度自适应格网模型;所述多尺度自适应格网模型用于对所述空间数据库中的矢量数据进行细粒度分割;
格网标识确定模块,用于利用所述多尺度自适应格网模型确定所述空间数据库中的矢量数据中的每一个矢量要素的格网标识;
分块索引建立模块,用于根据所述格网标识在所述空间数据库上建立分块索引;所述分块索引用于从所述空间数据库中提取矢量分块数据;
空间缓存数据库确定模块,用于将建立分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;
矢量分块数据提取模块,用于利用空间缓存数据库提取用户待提取的矢量分块数据。
6.根据权利要求5所述的一种web环境下矢量数据自适管理***,其特征在于,所述数据库构建模块具体包括:
空间数据库构建单元,用于采用关系型数据库PostGIS构建空间数据库;
缓存数据库构建单元,用于采用Key-value数据库Redis构建缓存数据库;
矢量要素数据表建立单元,用于在所述空间数据库上建立矢量要素数据表,将全部矢量数据导入所述矢量要素数据表中;
缓存数据库初始化单元,用于对所述缓存数据库进行初始化;
缓存数据库表格建立单元,用于在初始化后的缓存数据库上以Key-value形式构建数据存储方式索引、缓存矢量要素以及缓存矢量索引的表格。
7.根据权利要求6所述的一种web环境下矢量数据自适管理***,其特征在于,所述空间缓存数据库确定模块具体包括:
空间缓存数据库确定单元,用于采用数据存储方式索引、数据分块索引、缓存矢量索引将分块索引后的所述空间数据库与所述缓存数据库进行关联,得到空间缓存数据库;所述数据存储方式索引用于记录矢量数据是否缓存;所述数据分块索引用于从空间数据库中按格网标识查询矢量数据;所述缓存矢量索引用于从所述缓存数据库中查询缓存矢量数据。
8.根据权利要求7所述的一种web环境下矢量数据自适管理***,其特征在于,所述矢量分块数据提取模块具体包括:
判断单元,用于根据所述数据存储方式索引判断待提取的矢量分块数据是否已缓存至所述缓存数据库;
第一索引单元,用于若所述待提取的矢量分块数据未缓存至所述缓存数据库,则在所述空间数据库中根据分块索引查询所述待提取的矢量分块数据;
存储更新单元,用于将所述待提取的矢量分块数据存储至所述缓存数据库中缓存矢量要素表中,同时更新缓存矢量索引及数据存储方式索引;
第二索引单元,用于若所述待提取的矢量分块数据已缓存至所述缓存数据库,则通过所述缓存数据库中的缓存矢量索引从所述缓存矢量要素中提取所述待提取的矢量分块数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010618970.3A CN111737393B (zh) | 2020-07-01 | 2020-07-01 | 一种web环境下矢量数据自适管理方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010618970.3A CN111737393B (zh) | 2020-07-01 | 2020-07-01 | 一种web环境下矢量数据自适管理方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111737393A true CN111737393A (zh) | 2020-10-02 |
CN111737393B CN111737393B (zh) | 2023-10-27 |
Family
ID=72653874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010618970.3A Active CN111737393B (zh) | 2020-07-01 | 2020-07-01 | 一种web环境下矢量数据自适管理方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111737393B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113626437A (zh) * | 2021-08-09 | 2021-11-09 | 北京东方通科技股份有限公司 | 一种海量矢量数据快速查询方法及*** |
CN113760917A (zh) * | 2021-09-09 | 2021-12-07 | 武汉大学 | 一种矢量瓦片存储构建方法及*** |
CN114862663A (zh) * | 2022-05-17 | 2022-08-05 | 浙江省测绘科学技术研究院 | 一种栅格瓦片数据精度的动态调整方法 |
CN115391699A (zh) * | 2022-08-30 | 2022-11-25 | 中科星图数字地球合肥有限公司 | 一种云优化的静态地理信息矢量数据在线服务方法 |
CN116932680A (zh) * | 2023-08-07 | 2023-10-24 | 朱俊丰 | 矢量空间数据的特征标记方法、***及计算机存储介质 |
WO2024061327A1 (zh) * | 2022-09-23 | 2024-03-28 | 维沃移动通信有限公司 | 矢量地图生成方法、装置、电子设备和可读存储介质 |
CN118035324A (zh) * | 2024-04-15 | 2024-05-14 | 航天宏图信息技术股份有限公司 | 数据处理查询方法、装置、服务器及介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101019121A (zh) * | 2005-02-25 | 2007-08-15 | 三菱电机株式会社 | 对存储在数据库中的文档编制索引和进行检索的方法和*** |
CN101051076A (zh) * | 2006-04-03 | 2007-10-10 | 上海市闸北区绿化管理局 | 移动式空间数据采集、处理及发布方法 |
EP3093620A1 (en) * | 2015-05-12 | 2016-11-16 | HERE Global B.V. | System and method for detecting roundabouts from probe data using vector fields |
CN106547853A (zh) * | 2016-10-19 | 2017-03-29 | 北京航天泰坦科技股份有限公司 | 基于一张图的林业大数据建设方法 |
CN106934058A (zh) * | 2017-03-22 | 2017-07-07 | 武汉中地数码科技有限公司 | 矢量数据读取方法及***、矢量数据可视化方法及*** |
CN108920684A (zh) * | 2018-07-11 | 2018-11-30 | 中国科学院地理科学与资源研究所 | 一种科技资源空间数据整编方法和*** |
CN110073301A (zh) * | 2017-08-02 | 2019-07-30 | 强力物联网投资组合2016有限公司 | 工业物联网中具有大数据集的数据收集环境下的检测方法和*** |
CN110869815A (zh) * | 2017-03-08 | 2020-03-06 | 沙特***石油公司 | 用于大规模地震数据集合的自适应鲁棒去噪的自动化***及方法 |
CN111090657A (zh) * | 2019-10-28 | 2020-05-01 | 武大吉奥信息技术有限公司 | 一种矢量瓦片自动更新与即时服务*** |
-
2020
- 2020-07-01 CN CN202010618970.3A patent/CN111737393B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101019121A (zh) * | 2005-02-25 | 2007-08-15 | 三菱电机株式会社 | 对存储在数据库中的文档编制索引和进行检索的方法和*** |
CN101051076A (zh) * | 2006-04-03 | 2007-10-10 | 上海市闸北区绿化管理局 | 移动式空间数据采集、处理及发布方法 |
EP3093620A1 (en) * | 2015-05-12 | 2016-11-16 | HERE Global B.V. | System and method for detecting roundabouts from probe data using vector fields |
CN106547853A (zh) * | 2016-10-19 | 2017-03-29 | 北京航天泰坦科技股份有限公司 | 基于一张图的林业大数据建设方法 |
CN110869815A (zh) * | 2017-03-08 | 2020-03-06 | 沙特***石油公司 | 用于大规模地震数据集合的自适应鲁棒去噪的自动化***及方法 |
CN106934058A (zh) * | 2017-03-22 | 2017-07-07 | 武汉中地数码科技有限公司 | 矢量数据读取方法及***、矢量数据可视化方法及*** |
CN110073301A (zh) * | 2017-08-02 | 2019-07-30 | 强力物联网投资组合2016有限公司 | 工业物联网中具有大数据集的数据收集环境下的检测方法和*** |
CN108920684A (zh) * | 2018-07-11 | 2018-11-30 | 中国科学院地理科学与资源研究所 | 一种科技资源空间数据整编方法和*** |
CN111090657A (zh) * | 2019-10-28 | 2020-05-01 | 武大吉奥信息技术有限公司 | 一种矢量瓦片自动更新与即时服务*** |
Non-Patent Citations (6)
Title |
---|
JULIEN GAFFURI: "torward web mapping with vector data", INTERNATIONAL CONFERENCE ON GEOGRAPHIC INFORMATION SCIENCE, pages 87 - 101 * |
冯浩: "多因素综合优化的矢量数据三维几何绘制的研究", 中国博士学位论文全文数据库基础科学辑, no. 1, pages 008 - 9 * |
刘斌彬;陈飞翔;刘佳星;: "基于移动GIS的林区矢量数据快速可视化技术", 西北大学学报(自然科学版), vol. 50, no. 02, pages 295 - 303 * |
周经纬: "矢量大数据高性能计算模型及关键技术研究", 中国博士学位论文全文数据库基础科学辑, no. 2, pages 008 - 10 * |
张弘弢等: "多源在线地理编码与地名检索服务聚合方法", 地理与地理信息科学, vol. 36, no. 4, pages 1 - 7 * |
肖炼等: "通用政务地理信息***关键技术研究", 测绘科学, vol. 45, no. 6, pages 150 - 156 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113626437A (zh) * | 2021-08-09 | 2021-11-09 | 北京东方通科技股份有限公司 | 一种海量矢量数据快速查询方法及*** |
CN113760917A (zh) * | 2021-09-09 | 2021-12-07 | 武汉大学 | 一种矢量瓦片存储构建方法及*** |
CN113760917B (zh) * | 2021-09-09 | 2023-09-19 | 武汉大学 | 一种矢量瓦片存储构建方法及*** |
CN114862663A (zh) * | 2022-05-17 | 2022-08-05 | 浙江省测绘科学技术研究院 | 一种栅格瓦片数据精度的动态调整方法 |
CN115391699A (zh) * | 2022-08-30 | 2022-11-25 | 中科星图数字地球合肥有限公司 | 一种云优化的静态地理信息矢量数据在线服务方法 |
CN115391699B (zh) * | 2022-08-30 | 2023-11-10 | 中科星图数字地球合肥有限公司 | 一种云优化的静态地理信息矢量数据在线服务方法 |
WO2024061327A1 (zh) * | 2022-09-23 | 2024-03-28 | 维沃移动通信有限公司 | 矢量地图生成方法、装置、电子设备和可读存储介质 |
CN116932680A (zh) * | 2023-08-07 | 2023-10-24 | 朱俊丰 | 矢量空间数据的特征标记方法、***及计算机存储介质 |
CN116932680B (zh) * | 2023-08-07 | 2024-04-02 | 朱俊丰 | 矢量空间数据的特征标记方法、***及计算机存储介质 |
CN118035324A (zh) * | 2024-04-15 | 2024-05-14 | 航天宏图信息技术股份有限公司 | 数据处理查询方法、装置、服务器及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111737393B (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111737393A (zh) | 一种web环境下矢量数据自适管理方法及*** | |
CN110599490B (zh) | 一种遥感影像数据存储方法和*** | |
CN106709067B (zh) | 一种基于Oracle数据库的多源异构空间数据流转方法 | |
CN104281701B (zh) | 分布式多尺度空间数据查询方法及*** | |
CN101692229B (zh) | 基于数据内容的三维空间数据自适应多级缓存*** | |
US9158803B2 (en) | Incremental schema consistency validation on geographic features | |
CN105426491A (zh) | 一种时空地理大数据的检索方法及*** | |
CN108009265B (zh) | 一种云计算环境下的空间数据索引方法 | |
CN108804602A (zh) | 一种基于spark的分布式空间数据存储计算方法 | |
CN106933833A (zh) | 一种基于空间索引技术的位置信息快速查询方法 | |
CN113626550B (zh) | 基于三元组双向索引与优化缓存的影像瓦片地图服务方法 | |
CN113568995A (zh) | 基于检索条件的动态瓦片地图制作方法及瓦片地图*** | |
CN112380302B (zh) | 基于轨迹数据的热力图生成方法、装置、电子设备以及存储介质 | |
CN108984598A (zh) | 一种关系型地质数据库与NoSQL的融合方法及*** | |
CN107741982A (zh) | 一种坐标与行政区域匹配***及方法 | |
CN115238015A (zh) | 一种基于微服务的时空大数据平台 | |
CN108647266A (zh) | 一种异构数据快速分布存储、交互方法 | |
CN112035586A (zh) | 基于可扩展学习索引的空间范围查询方法 | |
CN112925859A (zh) | 数据存储方法和装置 | |
CN113704248B (zh) | 一种基于外置索引的区块链查询优化方法 | |
CN106462591A (zh) | 使用存储器中的智能索引的分区过滤 | |
CN114595302A (zh) | 空间要素的多层级空间关系构建方法、装置、介质及设备 | |
CN109684418A (zh) | 基于电网图数据库的数据存储方法及装置 | |
CN109815303A (zh) | 一种基于位置的移动数据存储*** | |
CN113407542A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |