基于空间数据库的动态切片生成方法和系统与流程

未命名 08-27 阅读:83 评论:0


1.本技术涉及数据处理的技术领域,尤其是涉及一种基于空间数据库的动态切片生成方法和系统。


背景技术:

2.随着科学技术的发展,数字地图逐步走入人们的生活。在人们的生活中,数字地图常以在线地图的形式出现在人们常用的用户端,以向人们提供路线指引。
3.目前,当人们打开任一用户端以获取在线地图时,用户端向存储有gis(geographic information system或 geo-information system,地理信息系统或地学信息系统)空间数据的服务器发送在线地图获取指令;服务器接收到在线地图获取指令后,将存储有大量可利用的gis空间数据发送至用户端;其中,上述大量可利用的gis空间数据可以为用户端所在行政区域的全部gis空间数据,包括街道、建筑名称等全部细节信息,行政区域可以为县、区、市或省;用户端将上述大量可利用的gis空间数据以静态方式存储,以备使用。
4.但是,当有人从用户端爬取gis空间数据时,可以直接且快速的爬取以静态方式存储的大量可利用的gis空间数据。
5.故,如何提升可利用的gis空间数据的数据安全,是本领域技术人员亟待解决的技术问题。


技术实现要素:

6.为了提升可利用的gis空间数据的数据安全,本技术提供一种基于空间数据库的动态切片生成方法和系统。
7.第一方面,本技术提供一种基于空间数据库的动态切片生成方法,采用如下的技术方案:一种基于空间数据库的动态切片生成方法,包括:获取用户端的地图显示界面信息,并随机确定空间分割规则;基于所述地图显示界面信息对所述用户端的地图显示界面进行边界分析,得到空间边界范围;基于所述空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,其中,每一所述空间数据切片包括至少一个gis空间数据;在所述多个空间数据切片中,确定在所述空间边界范围内的至少一个目标空间数据切片;将所述至少一个目标空间数据切片发送至所述用户端。
8.本技术在一较佳示例中可以进一步配置为:每一所述空间数据切片对应每一网格区域,所述在所述多个空间数据切片中,确定在所述空间边界范围内的至少一个目标空
间数据切片,包括:确定所述空间边界范围对应的有效区域;对每一网格区域和所述有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系,其中,所述空间关系至少包括无交集;确定所述空间关系为除无交集之外的网格区域为目标网格区域,并将每一所述目标网格区域对应的空间数据切片,作为每一目标空间数据切片。
9.本技术在一较佳示例中可以进一步配置为:所述对每一网格区域和所述有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系,包括:获取线程池的可利用线程的目标数量,其中,所述目标数量是通过当前时刻所述线程池中的全部线程各自对应的待处理任务量确定的;基于所述目标数量,对全部所述网格区域进行多线程分配,得到多个网格区域组,其中,每一网格区域组对应每一可利用线程;针对每一可利用线程,依次对可利用线程对应的所述网格区域组中每一网格区域和所述有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系。
10.本技术在一较佳示例中可以进一步配置为:所述确定所述空间关系为除无交集之外的网格区域为目标网格区域,包括:提取所述空间关系为包含的网格区域作为第一网格区域,提取所述空间关系为相交的网格区域作为第二网格区域;随机确定网格区域分割规则,其中,所述网格区域分割规则中的网格分割单位面积小于所述空间分割规则的分割单位面积,以及根据所述网格区域分割规则,分割所述第二网格区域,得到多个第三网格区域,以及对每一第三网格区域和所述有效区域进行空间叠加分析计算,得到每一子空间关系;将所述子空间关系为除无交集之外的第三网格区域作为第四网格区域,其中,所述第一网格区域和所述第四网格区域均为目标网格区域。
11.本技术在一较佳示例中可以进一步配置为:所述基于所述空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,包括:获取所述地图显示界面信息中的全部地理标识信息;将所述预存的gis空间数据集合中每一预存地理标识信息与任一所述地理标识信息相同的gis空间数据作为每一地理标识信息对应的每一目标空间数据;将全部所述目标空间数据作为目标空间数据集合,并基于所述空间分割规则,对所述目标空间数据集合进行切片,得到多个空间数据切片,其中,每一所述空间数据切片包括多个所述目标空间数据。
12.本技术在一较佳示例中可以进一步配置为:在所述获取用户端的地图显示界面信息之后,还包括:获取所述用户端的实时的界面移动速度,并根据所述界面移动速度,判断是否需要重新确定地图显示界面;若是,则获取所述用户端的实时的界面移动方向,并根据所述界面移动方向和所
述界面移动速度,预测下一地图显示界面信息;当监测到界面移动速度为0时,将所述下一地图显示界面信息作为新的地图显示界面信息。
13.本技术在一较佳示例中可以进一步配置为:在所述将所述至少一个目标空间数据切片发送至所述用户端之前,还包括:获取层级参数;根据所述层级参数,对所述至少一个目标空间数据切片中的每一gis空间数据进行矢量数据缩放,得到每一所述目标空间数据切片对应的每一最终目标空间数据切片;相应的,所述将所述目标空间数据切片发送至所述用户端,包括:将全部所述最终目标空间数据切片发送至所述用户端。
14.第二方面,本技术提供一种基于空间数据库的动态切片生成系统,采用如下的技术方案:一种基于空间数据库的动态切片生成系统,包括:获取模块,用于获取用户端的地图显示界面信息,并随机确定空间分割规则;空间边界范围确定模块,用于基于所述地图显示界面信息对所述用户端的地图显示界面进行边界分析,得到空间边界范围;空间数据切分模块,用于基于所述空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,其中,每一所述空间数据切片包括至少一个gis空间数据;目标空间数据切片确定模块,用于在所述多个空间数据切片中,确定在所述空间边界范围内的至少一个目标空间数据切片;目标空间数据切片发送模块,用于将所述至少一个目标空间数据切片发送至所述用户端。
15.第三方面,本技术提供一种电子设备,采用如下的技术方案:至少一个处理器;存储器;至少一个应用程序,其中至少一个应用程序被存储在存储器中并被配置为由至少一个处理器执行,所述至少一个应用程序配置用于:执行如第一方面任一项所述的基于空间数据库的动态切片生成方法。
16.第四方面,本技术提供一种计算机可读存储介质,采用如下的技术方案:一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令所述计算机执行如第一方面任一项所述的基于空间数据库的动态切片生成方法。
17.综上所述,本技术至少包括以下有益技术效果:本方案通过获取用户端的地图显示界面信息,以确定用户端需要的地图范围;通过对用户端需要的地图范围进行边界分析,得到空间边界范围,以确定用户需要的地图范围对应的用户需要的空间数据范围;随机获取空间分割规则,并根据获取的空间分割规则对预存的gis空间数据集合进行切片,得到多个空间数据切片,以确定得到的空间数据切片是与地图显示界面信息同时更新的,保证空间数据切片的实时性;在实时性较高的多个空间数据切片中,确定用户所需要的空间数据范围之内的目标空间数据切片,以得到实时性
较高的用户需要的空间数据切片;将实时性较高的用户需要的空间数据切片发送至用户端,一方面,实时性较高,可以避免空间数据切片被爬取者通过多次爬取而得到全部区域的可利用的空间数据切片,另一方面,仅获取用户需要的空间数据切片,可以降低用户端以静态方式存储的数据量,从而降低能够令爬取者爬取的数据量。
附图说明
18.图1为本技术实施例提供的一种基于空间数据库的动态切片生成方法的流程示意图。
19.图2为本技术实施例提供的一种网格区域示意图。
20.图3为本技术实施例提供的另一种网格区域示意图。
21.图4为本技术实施例提供的一种基于空间数据库的动态切片生成方法的应用场景示意图。
22.图5为本技术实施例提供的一种基于空间数据库的动态切片生成系统的结构示意图。
23.图6为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
24.以下结合附图1至附图6对本技术作进一步详细说明。
25.本具体实施例仅仅是对本技术的解释,其并不是对本技术的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本技术的范围内都受到专利法的保护。
26.为使本技术实施例的目的、技术方案和优点更加清楚,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
27.另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
28.随着数字经济的蓬勃发展,各个行业产生的数据也随之巨量膨胀,单纯的文本展示远远不能满足市场对开放数据的高效准确的理解需求。从时空的角度出发,宽阔的视野范围和特征数据给人带来直观和易于思考的直觉感受,将大量的文本数据以图像形式展示和以往的数据预览方式展示之间具有一定的差别,人们对于图像形式的展示的需求日益增加,因此,如何拥有一种能够快速的生成空间矢量数据出图的方法是支撑各行业各部门在使用数据过程中的先决条件。
29.一般的,可以通过将gis空间数据以切片形式发送至用户端,用户端将gis空间数据切片在用户端使用的地理投影系统中进行投影,以得到用户端需要展示的数字地图,并通过用户端展示数字地图。
30.目前,在应用在线地图平台前,需要构建空间数据库,以备使用:在将预处理收集的gis空间数据后,用postgis和geoserver 等开源工具对预处理后的gis空间数据进行处
理,生成可利用的空间数据切片,并利用全部可利用的空间数据切片构建空间数据库。在需要用户端显示在线地图时,用户端会从服务器的在线数据库中获取可利用的空间数据,再对可利用的空间数据进行投影得到在线地图。
31.但是,空间数据库在进行网络服务,即可利用的空间数据在传输至用户端后为静态数据,容易被爬虫抓取全量数据。
32.故,电子设备可以通过获取用户端的地图显示界面信息,并随机确定空间分割规则后;基于地图显示界面信息对用户端的地图显示界面进行边界分析,得到空间边界范围;基于空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片;在多个空间数据切片中,确定在空间边界范围内的目标空间数据切片;将目标空间数据切片发送至用户端,以提升可利用的空间数据的安全性。
33.下面结合说明书附图对本技术实施例作进一步详细描述。
34.本技术实施例提供了一种基于空间数据库的动态切片生成方法,由电子设备执行,该电子设备可以为服务器也可以为终端设备,其中,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此,该终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术实施例在此不做限制。
35.如图1所示,该方法包括步骤s101至步骤s105,其中:步骤s101:获取用户端的地图显示界面信息,并随机确定空间分割规则。
36.具体的,当用户端检测到在线地图获取动作时,采集地图显示界面,并将地图显示界面作为显示界面信息发送至电子设备,以使电子设备获取用户端的地图显示界面信息,其中,当用户在任一终端打开在线地图提供平台时,用户端平台可以检测到在线地图获取动作。
37.上述空间分割规则表征分割预存的gis空间数据集合的方法,且,上述空间分割规则可以为:预设图形分割规则,或,选点连线分割规则;预设图形分割规则中的预设图形可以包括:正多边形、任意多边形、正多边形组合、任意多边形组合和正多边形与任意多边形的组合中的至少两种,预设图形可由技术人员预先设定并存储于电子设备中;选点连线分割规则可以包括:确定点的规则和连接点得到线的规则。需要注意的是,上述两种空间分割规则限定分割后得到的网格区域的最低地理单位为0.00001度。
38.随机确定空间分割规则,具体可以包括:在上述预设图形分割规则和上述选点连线分割规则中随机确定一种分割规则,作为上述空间分割规则。
39.步骤s102:基于地图显示界面信息对用户端的地图显示界面进行边界分析,得到空间边界范围。
40.其中,上述空间边界范围为空间矢量数据的范围,可以包括地理范围和坐标范围;上述地理范围包括地图显示界面中包括的地理实体,上述地理实体可以为楼宇、道路等;上述坐标范围可以为地图显示界面对应的区域的经纬度或utm(universal transverse mercator,通用墨卡尔)投影等的范围。
41.具体的,可以通过查看元数据、使用gis软件、利用地图服务或其他任一方式进行边界分析,以处理地图显示界面得到空间边界范围。
42.步骤s103:基于空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,其中,每一空间数据切片包括至少一个gis空间数据。
43.预存的gis空间数据集合可由技术人员预先上传并存储于电子设备中,且,预存的gis空间数据集合包括geojson、shp等符合ogc(open geospatial consortium)标准的空间矢量数据。
44.具体的,可以包括:基于预设图形切分预存的gis空间数据集合,或,通过选点连线方式切分预存的gis空间数据集合。
45.在一种可实现方式中,基于预设图形切分预存的gis空间数据集合,具体可以包括:在预设图形中随机选取得到目标图形,并利用目标图形依次覆盖预存的gis空间数据集合,直至预存的全部gis空间数据被完全覆盖,得到覆盖后gis空间数据;识别覆盖后gis空间数据中的目标图形的边缘,得到多个网格区域,其中,每一网格区域由一闭合边缘包围,每一网格区域包括至少一个gis空间数据;提取每一网格区域包括的gis空间数据,并将上述每一网格区域包括的gis空间数据作为每一空间数据切片。
46.其中,预设图形可以包括正多边形、任意多边形、正多边形组合、任意多边形组合或正多边形与任意多边形的组合。且,每次随机选取得到的目标图形均为一个。预存的全部gis空间数据等同于预存的gis空间数据集合。需要注意的是,每一网格存在唯一对应的编码。
47.预设图形中的每一图形均存在对应的预设中心点,且,预设图形中的每一图形在覆盖后会对覆盖区域添加预设标记掩码。利用目标图形依次覆盖预存的gis空间数据集合,具体可以包括:基于预设标记掩码确定预存的gis空间数据集合中的未被覆盖区域;在上述未被覆盖区域中选取任一点,作为目标点;将上述目标点作为目标图形对应的预设中心点,利用上述目标图形进行覆盖,其中,覆盖后目标图形覆盖的区域边界线会产生覆盖痕迹。需要注意的是,可能存在部分区域被重叠覆盖,故,当预存的gis空间数据集合中不存在任一未被添加标记掩码的区域时,确定预存的gis空间数据集合被完全覆盖。
48.如图2所示,上述闭合边缘包括至少一个目标图形的部分边界线或全部边界线。边缘1和边缘2共同组成网格1的闭合边缘,边缘2和边缘3共同组成网格2的闭合边缘。
49.在另一种实现方式中,通过选点连线方式切分预存的gis空间数据集合,具体可以包括:在预存的gis空间数据集合上选取任意数量的顶点,其中,上述预存的gis空间数据集合的边缘处顶点数量大于预存的gis空间数据集合的非边缘处顶点数量;将全部上述顶点两两连接,得到多个网格区域,其中,每一网格区域包括至少一个gis空间数据;提取每一网格区域包括的gis空间数据,并将上述每一网格区域包括的gis空间数据作为每一空间数据切片。
50.具体的,两两连接过程中对两个顶点的位置关系不存在限定,两个顶点可以相邻也可以不相邻。
51.如图3所示,顶点至少包括a、b、c、d和e,在两两连接后可以得到网格区域3至网格
区域10。
52.可以理解的是,利用上述两种分割方式的任一分割方式分割预测的gis空间数据集合时,都更加随机,即使用户端的空间数据切片被爬取,由于不同时刻爬取者得到的空间数据切片被切分的规则不同,爬取者也无法通过多次爬取而得到全部区域的可利用的空间数据切片,从而可以提升空间数据切片的不被爬取者利用的安全性。
53.需要注意的是,在得到空间数据切片后,对空间数据切片进行了入库操作,得到可用空间数据库,其中,每一空间数据切片对应的库名编码与网格区域的编码一一对应。
54.步骤s104:在多个空间数据切片中,确定在空间边界范围内的至少一个目标空间数据切片。
55.其中,目标空间数据切片的数量与空间边界范围相关,空间边界范围对应区域越大目标空间数据切片的数量越多。
56.步骤s105:将至少一个目标空间数据切片发送至用户端。
57.在本技术实施例中,通过获取用户端的地图显示界面信息,以确定用户端需要的地图范围;通过对用户端需要的地图范围进行边界分析,得到空间边界范围,以确定用户需要的地图范围对应的用户需要的空间数据范围;随机获取空间分割规则,并根据获取的空间分割规则对预存的gis空间数据集合进行切片,得到多个空间数据切片,以确定得到的空间数据切片是与地图显示界面信息同时更新的,保证空间数据切片的实时性;在实时性较高的多个空间数据切片中,确定用户所需要的空间数据范围之内的目标空间数据切片,以得到实时性较高的用户需要的空间数据切片;将实时性较高的用户需要的空间数据切片发送至用户端,一方面,实时性较高,可以避免空间数据切片被爬取者通过多次爬取而得到全部区域的可利用的空间数据切片,另一方面,仅获取用户需要的空间数据切片,可以降低用户端以静态方式存储的数据量,从而降低能够令爬取者爬取的数据量。
58.本技术实施例的一种可能的实现方式,每一空间数据切片对应每一网格区域,步骤s104,在多个空间数据切片中,确定在空间边界范围内的至少一个目标空间数据切片,具体可以包括:确定空间边界范围对应的有效区域;对每一网格区域和有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系,其中,空间关系至少包括无交集;确定空间关系为除无交集之外的网格区域为目标网格区域,并将每一目标网格区域对应的空间数据切片,作为每一目标空间数据切片。
59.其中,有效区域为空间边界范围对应的投影空间边界范围,需要了解的是,投影空间边界范围(projected spatial extent)是指地理数据在某个特定的地理投影系统下所涵盖的区域范围。上述空间关系可以包括相交、重合、包含或无交集,当空间关系为包含时,表征有效区域将上述空间关系为包含的网格区域覆盖。
60.具体的,通过每一网格区域的空间关系进行筛选,将每一空间关系为除无交集之外的网格区域的作为每一目标网格区域,获取每一目标网格区域的网格区域编码,利用全部目标网格区域各自的网格区域编码,在可用空间数据库中确定目标空间数据切片。
61.在本技术实施例中,在确定空间边界范围对应的有效区域后,利用空间叠加分析计算对网格区域和有效区域的相交情况进行精准捕捉,得到每一精确的空间关系;基于精
确的空间关系,以更加准确地确定目标空间数据切片。
62.本技术实施例的一种可能的实现方式,对每一网格区域和有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系,具体可以包括:获取线程池的可利用线程的目标数量,其中,目标数量是通过当前时刻全部线程各自对应的待处理任务量确定的;基于目标数量,对全部网格区域进行多线程分配,得到多个网格区域组,其中,每一网格区域组对应每一可利用线程;针对每一可利用线程,依次对可利用线程对应的网格区域组中每一网格区域和有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系。
63.具体的,目标数量可以为:线程池的最优线程数量,或,当前时刻适合工作的线程的数量。
64.在一种可实现方式中,当目标数量为线程池的最优线程数量时,获取线程池的目标数量,具体可以包括:基于电子设备的处理器核心数量确定电子设备处理能力,基于上述处理能力确定最优线程数量,其中,处理能力表征线程池在不影响处理效率的前提下的最大可运行线程数量。
65.在另一种可实现方式中,当目标数量为当前时刻适合工作的线程的数量时,获取线程池的目标数量,具体可以包括:获取当前时刻全部线程各自对应的待处理任务量,其中,当线程空闲时待处理任务量为0;针对每一线程的待处理任务量,计算该待处理任务量对应的均方误差,其中,均方误差表征该待处理任务量与其他待处理任务量之间的偏移程度,均方误差越大上述偏移程度越大;将上述均方误差大于预设均方误差阈值,且,待处理任务量不大于待处理任务量平均值的线程,作为可利用线程,其中,预设均方误差阈值由技术人员设定;通过统计得到上述目标数量。
66.可以理解的是,确定线程对应的待处理任务量,可以得到线程的繁忙程度;在确定每一线程的繁忙程度在全部繁忙程度中的离散程度后,通过限定待处理任务量不大于待处理任务量平均值的线程,以确定可利用线程繁忙程度较小,其中,每一待处理任务量表征每一线程的繁忙程度,全部待处理任务量表征全部繁忙程度,例如,全部待处理任务量为2、3、4、2、2,针对待处理任务量等于3的线程,3在2、3、4、2、2中的离散程度为3在2、3、4、2、2中的均方误差;进一步的,限定均方误差大于预设均方误差阈值,可以在繁忙程度较小的线程中进一步确定相对空闲的线程作为可利用线程。避免在每一线程中待处理任务量到达上限时,再出现新增待处理任务时,新增待处理任务需要在等待线程处理待处理任务后被分配至可利用线程,等待时间较长,本技术在出现新增待处理任务时可以直接为新增待处理任务分配对应的可利用线程,等待被分配至可利用线程的时间较短。
67.其中,每一网格区域组包括至少一个网格区域,上述每一网格区域组被分配至每一可利用线程处理。
68.在本技术实施例中,通过将全部网格区域分组得到网格区域组,并利用多线程分别处理每一网格区域组,可以更快地处理网格区域,从而提升空间关系的确定速度。
69.本技术实施例的一种可能的实现方式,确定空间关系为除无交集之外的网格区域为目标网格区域,具体可以包括:提取空间关系为包含的网格区域作为第一网格区域,提取空间关系为相交的网格
区域作为第二网格区域;随机确定网格区域分割规则,其中,网格区域分割规则中的网格分割单位面积小于空间分割规则的分割单位面积,以及根据网格区域分割规则,分割第二网格区域,得到多个第三网格区域,以及对每一第三网格区域和有效区域进行空间叠加分析计算,得到每一子空间关系;将子空间关系为除无交集之外的第三网格区域作为第四网格区域,其中,第一网格区域和第四网格区域均为目标网格区域。
70.可以理解的是,第二网格区域中包括部分区域与有效区域不相交,若将不相交部分对应的空间数据切片作为目标空间数据切片发送至用户端,则会增加发送至用户端的可利用的空间数据切片的数据量,故,需要尽可能的从第二网格区域中将上述不相交部分筛除。
71.在上述筛除过程中,可以基于网格区域分割规则,对第二网格区域进行分割,以得到第二网格区域的子网格区域即第三网格区域,其中,网格区域分割规则可以为:上述预设图形分割规则,或,上述选点连线分割规则。
72.通过确定每一第三网格区域与有效区域之间的子空间关系,以确定每一第三网格区域对应的空间数据切片是否有传送至用户端的必要,其中,子空间关系可以包括:相交、重合、包含或无交集,当空间关系为不相交时无传送至用户端的必要。若没有传送至用户端的必要,则将该第三网格区域筛除;若有传送至用户端的必要,则将该第三网格区域作为第四网格区域,然后进一步确定为目标网格区域,以将该第三网格区域对应的空间数据切片传送至用户端。
73.在本技术实施例中,通过提取空间关系为相交的网格区域作为第二网格区域,以确定存在部分区域与有效区域不相交的网格区域;通过对存在部分区域与有效区域不相交的网格区域分割,得到多个第三网格区域,再将子空间关系为除无交集之外的第三网格区域作为第四网格区域,以将与有效区域不相交的部分区域筛除,在一定程度上可以减少目标空间数据切片的数据量,从而可以减少电子设备向用户端发送数据的数据量。
74.本技术实施例的一种可能的实现方式,步骤s103,基于空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,具体可以包括:获取地图显示界面信息中的全部地理标识信息;将预存的gis空间数据集合中每一预存地理标识信息与任一地理标识信息相同的gis空间数据作为每一地理标识信息对应的每一目标空间数据;将全部目标空间数据作为目标空间数据集合,并基于空间分割规则,对目标空间数据集合进行切片,得到多个空间数据切片,其中,每一空间数据切片包括多个目标空间数据。
75.其中,地理标识信息为地理实体对应的标识信息,且,地理标识信息可以为地理实体的名称。
76.可以理解的是,地图显示界面中显示至少一个地理实体,上述至少一个地理实体存在对应的地理标识信息,且,同一地理标识信息可能存在多个地理实体与之对应;故,将可能出现在地图显示界面中的地理标识信息筛选出来后,基于可能出现在地图显示界面中的地理标识信息和全部预存地理标识信息进行匹配,筛选出预存地理标识信息与任一地理
标识信息相同的gis空间数据,相当于对预存的gis空间数据进行了初筛,缩小等待分割的gis空间数据的数据量。
77.在本技术实施例中,通过获取地图显示界面信息中的全部地理标识信息,以确定可能出现在地图显示界面中的地理实体对应的标识信息;通过可能出现在地图显示界面中的地理实体对应的标识信息,确定目标空间数据,以对在地图显示界面中出现概率较小的gis空间数据进行筛除,缩小等待分割的gis空间数据的数据量;对数据量较小的目标空间数据进行切片,以更快地得到空间数据切片,从而提升切片过程的速度。
78.当用户端的在线地图平台的地图显示界面快速滑动时,用户对于快速划过的地图显示界面对应区域的获取需求较小,但是,如果在上述地图显示界面快速滑动时,电子设备仍将快速划过的地图显示界面对应的目标空间数据切片发送至客户端,一定程度上会增加传输至用户端的空间数据切片的数量,不利于数据安全。故,本技术实施例的一种可能的实现方式,在步骤s101,获取用户端的地图显示界面信息之后,具体还可以包括:获取用户端的实时的界面移动速度,并根据界面移动速度,判断是否需要重新确定地图显示界面;若是,则获取用户端的实时的界面移动方向,并根据界面移动方向和界面移动速度,预测下一地图显示界面信息;当监测到界面移动速度为0时,将下一地图显示界面信息作为新的地图显示界面信息。
79.其中,界面移动速度为地图显示界面上任一定点在地图显示界面上滑动的速度,上述定点可随机确定。
80.根据界面移动速度,判断是否需要重新确定地图显示界面,可以包括:判断界面移动速度是否超过预设移动速度阈值,预设移动速度阈值表征在线地图平台可清晰显示在线地图时的在线地图的最大移动速度,可由技术人员经过实验确定后并存储于电子设备中。
81.可以理解的是,若是,则表征界面移动速度较大,在线地图平台已经无法清晰地显示每一个地图显示界面对应的在线地图;反之,则表明在线地图平台仍可以清晰地显示每一个地图显示界面对应的在线地图。
82.根据界面移动方向和界面移动速度,预测下一地图显示界面信息,具体可以包括:基于界面移动方向和界面移动速度,确定移动矢量,根据移动矢量和地图显示界面,确定新的地图显示界面,其中,第一点与第二点间隔上述移动矢量,第一点为地图显示界面上的点,第二点为第一点在新的地图显示界面对应的点。
83.可以理解的是,当界面移动速度为0时,用户对于快速划过的地图显示界面对应区域的获取需求较大,此时用户端需要获取地图显示界面对应目标空间数据切片,即根据地图显示界面这一浏览范围,电子设备基于在线地图平台的性能,提供在线地图平台接受范围内的在线地图服务。
84.在本技术实施例中,通过判断是否需要重新确定地图显示界面,以确定是否要为当前的地图显示界面获取对应的目标空间数据切片这一获取需求;当不存在上述获取需求时,直接预测下一地图显示界面信息,减少在快速滑动过程中电子设备向用户端传输不必要的数据的可能性,不必要的数据可以为快速滑动过程中的地图显示界面对应的目标空间数据切片。
85.本技术实施例的一种可能的实现方式,在步骤s105,将至少一个目标空间数据切片发送至用户端之前,具体还可以包括:获取层级参数;根据层级参数,对至少一个目标空间数据切片中的每一gis空间数据进行矢量数据缩放,得到每一目标空间数据切片对应的每一最终目标空间数据切片。
86.相应的,步骤s105,将目标空间数据切片发送至用户端,具体可以包括:将全部最终目标空间数据切片发送至用户端。
87.具体的,将最终目标空间数据切片和层级进行空间数据转瓦片操作,得到瓦片文件,向用户端发送上述瓦片文件。
88.在本技术实施例中,通过获取层级参数,以确定用户端显示在线地图所需要的地图细节程度;通过地图细节程度对目标空间数据切片进行缩放,以基于地图细节程度准确地调整用户端需要获取的空间数据切片所包含的数据量;将数据量更加准确的最终目标空间数据切片发送至用户端,从而合理控制用户端接收到的空间数据切片的数据量。
89.如图4所示,本方案基于输入空间分割图形数据对gis空间数据进行数据分割预处理,得到可用空间数据库,并确定动态矢量切片引擎,其中,空间分割图形数据为预设图形或选点连线数据,当空间分割图形数据为选点连线数据时,确定分割预处理方式为选点连线方式,动态矢量切片引擎由可用空间数据库支撑,可用空间数据库包括全部空间数据切片;通过输入的显示矩形几何数据,在动态矢量切片引擎中确定是否存在数据在输入的矩形范围之内,其中,显示矩形几何数据为地图显示界面信息,输入的矩形范围为空间边界范围;若是,则在返回矩形范围内的空间数据后,结束进程,其中,矩形范围内的空间数据为目标空间数据切片;若否,则直接结束进程。
90.上述实施例涉及gis技术、大数据技术、空间数据库技术、几何图形等技术,利用动态矢量切片引擎和可用空间数据库,快速的为可视化场景提供便捷、轻量化的瓦片服务,其中,动态矢量切片引擎为在全部空间数据切片中确定目标空间数据切片的过程。
91.上述实施例从方法流程的角度介绍一种基于空间数据库的动态切片生成方法,下述实施例从虚拟模块或者虚拟单元的角度介绍了一种基于空间数据库的动态切片生成系统,具体详见下述实施例。
92.本技术实施例提供一种基于空间数据库的动态切片生成系统,如图5所示,该基于空间数据库的动态切片生成系统具体可以包括:获取模块201,用于获取用户端的地图显示界面信息,并随机确定空间分割规则;空间边界范围确定模块202,用于基于地图显示界面信息对用户端的地图显示界面进行边界分析,得到空间边界范围;空间数据切分模块203,用于基于空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,其中,每一空间数据切片包括至少一个gis空间数据;目标空间数据切片确定模块204,用于在多个空间数据切片中,确定在空间边界范围内的至少一个目标空间数据切片;目标空间数据切片发送模块205,用于将至少一个目标空间数据切片发送至用户端。
93.本技术实施例的一种可能的实现方式,每一空间数据切片对应每一网格区域,目
标空间数据切片确定模块204,在执行在多个空间数据切片中,确定在空间边界范围内的至少一个目标空间数据切片时,具体用于:确定空间边界范围对应的有效区域;对每一网格区域和有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系,其中,空间关系至少包括无交集;确定空间关系为除无交集之外的网格区域为目标网格区域,并将每一目标网格区域对应的空间数据切片,作为每一目标空间数据切片。
94.本技术实施例的一种可能的实现方式,目标空间数据切片确定模块204,在执行对每一网格区域和有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系时,用于:获取线程池的可利用线程的目标数量,其中,目标数量是通过当前时刻线程池中的全部线程各自对应的待处理任务量确定的;基于目标数量,对全部网格区域进行多线程分配,得到多个网格区域组,其中,每一网格区域组对应每一可利用线程;针对每一可利用线程,依次对可利用线程对应的网格区域组中每一网格区域和有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系。
95.本技术实施例的一种可能的实现方式,目标空间数据切片确定模块204,在执行确定空间关系为除无交集之外的网格区域为目标网格区域时,用于:提取空间关系为包含的网格区域作为第一网格区域,提取空间关系为相交的网格区域作为第二网格区域;随机确定网格区域分割规则,其中,网格区域分割规则中的网格分割单位面积小于空间分割规则的分割单位面积,以及根据网格区域分割规则,分割第二网格区域,得到多个第三网格区域,以及对每一第三网格区域和有效区域进行空间叠加分析计算,得到每一子空间关系;将子空间关系为除无交集之外的第三网格区域作为第四网格区域,其中,第一网格区域和第四网格区域均为目标网格区域。
96.本技术实施例的一种可能的实现方式,空间数据切分模块203,在执行基于空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片时,具体用于:获取地图显示界面信息中的全部地理标识信息;将预存的gis空间数据集合中每一预存地理标识信息与任一地理标识信息相同的gis空间数据作为每一地理标识信息对应的每一目标空间数据;将全部目标空间数据作为目标空间数据集合,并基于空间分割规则,对目标空间数据集合进行切片,得到多个空间数据切片,其中,每一空间数据切片包括多个目标空间数据。
97.本技术实施例的一种可能的实现方式,基于空间数据库的动态切片生成系统,还包括:地图显示界面选定模块,用于:获取用户端的实时的界面移动速度,并根据界面移动速度,判断是否需要重新确定地图显示界面;
若是,则获取用户端的实时的界面移动方向,并根据界面移动方向和界面移动速度,预测下一地图显示界面信息;当监测到界面移动速度为0时,将下一地图显示界面信息作为新的地图显示界面信息。
98.本技术实施例的一种可能的实现方式,基于空间数据库的动态切片生成系统,还包括:目标空间数据切片筛选模块,用于:获取层级参数;根据层级参数,对至少一个目标空间数据切片中的每一gis空间数据进行矢量数据缩放,得到每一目标空间数据切片对应的每一最终目标空间数据切片;相应的,目标空间数据切片发送模块205,在执行将目标空间数据切片发送至用户端时,具体用于:将全部最终目标空间数据切片发送至用户端。
99.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的一种基于空间数据库的动态切片生成系统的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
100.本技术实施例中提供了一种电子设备,如图6所示,图6所示的电子设备包括:处理器301和存储器303。其中,处理器301和存储器303相连,如通过总线302相连。可选地,电子设备还可以包括收发器304。需要说明的是,实际应用中收发器304不限于一个,该电子设备的结构并不构成对本技术实施例的限定。
101.处理器301可以是cpu(central processing unit,中央处理器),通用处理器,dsp(digital signal processor,数据信号处理器),asic(application specific integrated circuit,专用集成电路),fpga(field programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器301也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
102.总线302可包括一通路,在上述组件之间传送信息。总线302可以是pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。总线302可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一型的总线。
103.存储器303可以是rom(read only memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(random access memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom(electrically erasable programmable read only memory,电可擦可编程只读存储器)、cd-rom(compact disc read only memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限
于此。
104.存储器303用于存储执行本技术方案的应用程序代码,并由处理器301来控制执行。处理器301用于执行存储器303中存储的应用程序代码,以实现前述方法实施例所示的内容。
105.其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。还可以为服务器等。图6示出的电子设备仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
106.本技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与相关技术相比,本技术实施例通过获取用户端的地图显示界面信息,以确定用户端需要的地图范围;通过对用户端需要的地图范围进行边界分析,得到空间边界范围,以确定用户需要的地图范围对应的用户需要的空间数据范围;随机获取空间分割规则,并根据获取的空间分割规则对预存的gis空间数据集合进行切片,得到多个空间数据切片,以确定得到的空间数据切片是与地图显示界面信息同时更新的,保证空间数据切片的实时性;在实时性较高的多个空间数据切片中,确定用户所需要的空间数据范围之内的目标空间数据切片,以得到实时性较高的用户需要的空间数据切片;将实时性较高的用户需要的空间数据切片发送至用户端,一方面,实时性较高,可以避免空间数据切片被爬取者通过多次爬取而得到全部区域的可利用的空间数据切片,另一方面,仅获取用户需要的空间数据切片,可以降低用户端以静态方式存储的数据量,从而降低能够令爬取者爬取的数据量。
107.应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
108.以上仅是本技术的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。

技术特征:
1.一种基于空间数据库的动态切片生成方法,其特征在于,包括:获取用户端的地图显示界面信息,并随机确定空间分割规则;基于所述地图显示界面信息对所述用户端的地图显示界面进行边界分析,得到空间边界范围;基于所述空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,其中,每一所述空间数据切片包括至少一个gis空间数据;在所述多个空间数据切片中,确定在所述空间边界范围内的至少一个目标空间数据切片;将所述至少一个目标空间数据切片发送至所述用户端。2.根据权利要求1所述的基于空间数据库的动态切片生成方法,其特征在于,每一所述空间数据切片对应每一网格区域,所述在所述多个空间数据切片中,确定在所述空间边界范围内的至少一个目标空间数据切片,包括:确定所述空间边界范围对应的有效区域;对每一网格区域和所述有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系,其中,所述空间关系至少包括无交集;确定所述空间关系为除无交集之外的网格区域为目标网格区域,并将每一所述目标网格区域对应的空间数据切片,作为每一目标空间数据切片。3.根据权利要求2所述的基于空间数据库的动态切片生成方法,其特征在于,所述对每一网格区域和所述有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系,包括:获取线程池的可利用线程的目标数量,其中,所述目标数量是通过当前时刻所述线程池中的全部线程各自对应的待处理任务量确定的;基于所述目标数量,对全部所述网格区域进行多线程分配,得到多个网格区域组,其中,每一网格区域组对应每一可利用线程;针对每一可利用线程,依次对可利用线程对应的所述网格区域组中每一网格区域和所述有效区域进行空间叠加分析计算,得到每一网格区域对应的每一空间关系。4.根据权利要求2所述的基于空间数据库的动态切片生成方法,其特征在于,所述确定所述空间关系为除无交集之外的网格区域为目标网格区域,包括:提取所述空间关系为包含的网格区域作为第一网格区域,提取所述空间关系为相交的网格区域作为第二网格区域;随机确定网格区域分割规则,其中,所述网格区域分割规则中的网格分割单位面积小于所述空间分割规则的分割单位面积,以及根据所述网格区域分割规则,分割所述第二网格区域,得到多个第三网格区域,以及对每一第三网格区域和所述有效区域进行空间叠加分析计算,得到每一子空间关系;将所述子空间关系为除无交集之外的第三网格区域作为第四网格区域,其中,所述第一网格区域和所述第四网格区域均为目标网格区域。5.根据权利要求1至4任一项所述的基于空间数据库的动态切片生成方法,其特征在于,所述基于所述空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,包
括:获取所述地图显示界面信息中的全部地理标识信息;将所述预存的gis空间数据集合中每一预存地理标识信息与任一所述地理标识信息相同的gis空间数据作为每一地理标识信息对应的每一目标空间数据;将全部所述目标空间数据作为目标空间数据集合,并基于所述空间分割规则,对所述目标空间数据集合进行切片,得到多个空间数据切片,其中,每一所述空间数据切片包括多个所述目标空间数据。6.根据权利要求1至4任一项所述的基于空间数据库的动态切片生成方法,其特征在于,在所述获取用户端的地图显示界面信息之后,还包括:获取所述用户端的实时的界面移动速度,并根据所述界面移动速度,判断是否需要重新确定地图显示界面;若是,则获取所述用户端的实时的界面移动方向,并根据所述界面移动方向和所述界面移动速度,预测下一地图显示界面信息;当监测到界面移动速度为0时,将所述下一地图显示界面信息作为新的地图显示界面信息。7.根据权利要求1所述的基于空间数据库的动态切片生成方法,其特征在于,在所述将所述至少一个目标空间数据切片发送至所述用户端之前,还包括:获取层级参数;根据所述层级参数,对所述至少一个目标空间数据切片中的每一gis空间数据进行矢量数据缩放,得到每一所述目标空间数据切片对应的每一最终目标空间数据切片;相应的,所述将所述目标空间数据切片发送至所述用户端,包括:将全部所述最终目标空间数据切片发送至所述用户端。8.一种基于空间数据库的动态切片生成系统,其特征在于,包括:获取模块,用于获取用户端的地图显示界面信息,并随机确定空间分割规则;空间边界范围确定模块,用于基于所述地图显示界面信息对所述用户端的地图显示界面进行边界分析,得到空间边界范围;空间数据切分模块,用于基于所述空间分割规则,切分预存的gis空间数据集合,得到多个空间数据切片,其中,每一所述空间数据切片包括至少一个gis空间数据;目标空间数据切片确定模块,用于在所述多个空间数据切片中,确定在所述空间边界范围内的至少一个目标空间数据切片;目标空间数据切片发送模块,用于将所述至少一个目标空间数据切片发送至所述用户端。9.一种电子设备,其特征在于,包括:至少一个处理器;存储器;至少一个应用程序,其中至少一个应用程序被存储在存储器中并被配置为由至少一个处理器执行,所述至少一个应用程序配置用于:执行权利要求1~7任一项所述的基于空间数据库的动态切片生成方法。10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,当所述计算机程
序在计算机中执行时,令所述计算机执行权利要求1~7任一项所述的基于空间数据库的动态切片生成方法。

技术总结
本申请涉及数据处理领域,尤其涉及一种基于空间数据库的动态切片生成方法和系统,方法包括:获取用户端的地图显示界面信息,并随机确定空间分割规则;基于地图显示界面信息对用户端的地图显示界面进行边界分析,得到空间边界范围;基于空间分割规则,切分预存的GIS空间数据集合,得到多个空间数据切片,其中,每一空间数据切片包括至少一个GIS空间数据;在多个空间数据切片中,确定在空间边界范围内的至少一个目标空间数据切片;将至少一个目标空间数据切片发送至用户端。本申请可以提升可利用的GIS空间数据的数据安全。GIS空间数据的数据安全。GIS空间数据的数据安全。


技术研发人员:刘冰 彭正伟 李阳 钟平 李贵
受保护的技术使用者:深圳市易图资讯股份有限公司
技术研发日:2023.07.19
技术公布日:2023/8/24
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐