CN111078806B - 位置查询方法、装置、计算机设备及存储介质 - Google Patents
位置查询方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111078806B CN111078806B CN201910969191.5A CN201910969191A CN111078806B CN 111078806 B CN111078806 B CN 111078806B CN 201910969191 A CN201910969191 A CN 201910969191A CN 111078806 B CN111078806 B CN 111078806B
- Authority
- CN
- China
- Prior art keywords
- query
- position point
- points
- point
- string
- 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
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000006835 compression Effects 0.000 claims abstract description 38
- 238000007906 compression Methods 0.000 claims abstract description 38
- 238000004590 computer program Methods 0.000 claims description 17
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 10
- 238000010276 construction Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明实施例公开了一种位置查询方法、装置、计算机设备及存储介质。本发明应用于数据处理中的数据查询领域。所述方法包括:根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串;根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串;根据所述位置点对应的所述字符串构建扩展压缩树;若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;对所述查询域内的位置点进行验证以得到目标位置点。通过实施本发明实施例的方法可提升索引结构性能,提高检索效率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种位置查询方法、装置、计算机设备及存储介质。
背景技术
随着移动设备的普及,基于位置点服务的发展,空间索引技术的重要性愈发重要。Geohash是一种地理编码,其本质为Z曲线——隶属空间填充曲线,将多维空间位置点映射为一维位串表示,同时保持其在高维空间中的邻近性,因其映射过程简单而被广泛研究与应用。Geohash是通过Base32编码规则将Z编码压缩为字符串的,即为Geohash编码。然而,受其编码规则的影响,其表示距离范围的跳跃性太大,例如,Geohash长度为5时,近似表示2000m范围;Geohash长度为6时,近似表示600m范围。距离范围精度的跳跃性致使在查询1000m范围内的位置点时,通过索引结构检索出来的结果是2000m范围内的位置点,之后再通过验证阶段得到1000m范围内的位置点。显然,无疑增加了验证阶段的时间开销,从而降低查询效率,索引结构性能差。
发明内容
本发明实施例提供了一种位置查询方法、装置、计算机设备及存储介质,旨在解决由于Geohash编码规则表示的距离范围的跳跃性太大,导致索引结构性能差,增加验证阶段的时间开销,降低查询效率的问题。
第一方面,本发明实施例提供了一种位置查询方法,其包括:根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度;根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串;根据所述位置点对应的所述字符串构建扩展压缩树;若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;对所述查询域内的位置点进行验证以得到目标位置点。
第二方面,本发明实施例还提供了一种位置查询装置,其包括:第一编码单元,用于根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度;第二编码单元,用于根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串;构建单元,用于根据所述位置点对应的所述字符串构建扩展压缩树;查询单元,用于若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;验证单元,用于对所述查询域内的位置点进行验证以得到目标位置点。
第三方面,本发明实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现上述方法。
本发明实施例提供了一种位置查询方法、装置、计算机设备及存储介质。其中,所述方法包括:根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度;根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串;根据所述位置点对应的所述字符串构建扩展压缩树;若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;对所述查询域内的位置点进行验证以得到目标位置点。本发明实施例由于根据位置点的疏密程度确定位置点的编码长度,并将位置点位串编码为该编码长度的字符串,根据字符串构建扩展压缩树,当接收到查询指令,通过查询扩展压缩树得到目标位置点,可实现有效支持任意空间范围查询,提升索引结构性能,提高检索效率,编码适应性更强的效果。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的位置查询方法的流程示意图;
图2为本发明实施例提供的位置查询方法的子流程示意图;
图3为Geohash精度表;
图4为本发明实施例提供的位置查询方法的子流程示意图;
图5为本发明实施例提供的位置查询方法的子流程示意图;
图6为Base32编码表;
图7为本发明实施例提供的位置查询方法的子流程示意图;
图8为本发明实施例提供的位置查询方法的子流程示意图;
图9为本发明实施例提供的位置查询装置的示意性框图;
图10为本发明实施例提供的位置查询装置的具体单元的示意性框图;
图11为本发明实施例提供的位置查询装置的确定单元的示意性框图;以及
图12为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1为本发明实施例提供的位置查询方法的示意性流程图。该位置查询方法应用在终端中。
图1是本发明实施例提供的位置查询方法的流程示意图。如图所示,该方法包括以下步骤S110-S150。
S110、根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度。
在一实施例中,预设数据集指的是由多个位置点组成的集合,位置点由经度和纬度组成。Z曲线是Geohash算法的理论基础,隶属于空间填充曲线,Z曲线可在保持位置点空间邻近性的前提下,将二维空间位置点表示为一维位串形式。具体地,通过二分法对位置点的纬度和经度进行划分,根据划分结果编码为0或1,直到编码的位数达到预设纬度位串和预设经度位串的位数为止,最后再通过位交错方法合并经度位串和纬度位串从而得到位置点位串。
在一实施例中,如图2所示,所述步骤S110可包括步骤:S111-S112。
S111、根据预设编码长度通过二分法对预设数据集中所有位置点的经度和纬度进行二进制编码以得到对应的经度位串和纬度位串。
在一实施例中,预设编码长度指的是位置点转换为二进制编码的长度,预设编码长度依据Geohash精度表根据实际情况而定,预设编码长度为8时,表示大小为20米左右的区域范围,通常情况下能满足最小查询需求,故而本方案将预设编码长度指定为8,得到的位置点位串位数为40,其中预设纬度位串位数为20,预设经度位串位数为20。Geohash精度表如图3所示。具体地,地球的纬度区间为[-90,90],经度区间为[-180,180],采用二分法将位置点的纬度和经度进行二分,纬度区间划分为[-90,0]和[0,90],[-90,0]为左区间,[0,90]为右区间,同理经度区间划分为[-180,0]和[0,180],[-180,0]为左区间,[0,180]为右区间,位置点的纬度或者经度落在左区间则编码为0,右区间则编码为1,递归上述过程继续划分纬度和经度区间并根据位置点的经度和纬度进行编码,直到得到的经度位串和纬度位串的长度分别为20。例如,给定一个位置点(19.596412-99.219501),19.596412位于右区间则编码为1,再将[0,90]划分为[0,45)和[45,90],19.596412位于左区间则编码为0,以此类推直到得到纬度位串长度为20,最终得到的纬度位串为10011011110111101101。同理,得到的经度位串为00111001011100011010。
S112、根据奇数位为纬度、偶数位为经度的规则将所述经度位串和所述纬度位串进行合并以得到对应的位置点位串。
在一实施例中,在得到经度位串和纬度位串后,将经度位串和纬度位串进行合并以得到位置点位串,从而将二维位置点映射为一维位串。具体地,根据奇数位为纬度、偶数位为经度的规则,对经度位串和纬度位串进行合并。例如,纬度位串为10011011110111101101,经度位串为00111001011100011010,根据偶数位为经度,则位置点位串的第一位取经度位串的第一位数字0,根据奇数位为纬度,则位置点位串的第二位取纬度位串的第一位数字1;位置点位串的第三位取经度位串的第二位数字0,位置点位串的第四位取纬度位串的第二位数字0;以此类推从而得到合并的位置点位串0100101111000111011110110101011011011001。
S120、根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串。
在一实施例中,在得到位置点位串后,Geohash算法还需对合并后的位置点位串进行编码,现有的Geohash是根据Base32编码将位串编码为字符串的,Base32是一种数据编码机制,主要用于将二进制数据编码成字符串,其编码规则是:任意给定一个二进制数据,以5个位(bit)为一组进行切分,对切分而成的每个组进行编码得到1个字符。由于Geohash编码规则表示的距离范围跳跃性太大,因此采用改进的编码规则,根据位置点的疏密程度选定合适的编码长度来对位置点位串进行编码。
在一实施例中,如图4所示,所述步骤S120可包括步骤:S121-S123。
S121、根据位置点数据量以及区域面积通过预设公式计算得到位置点的疏密程度。
在一实施例中,所述预设公式为:其中,Qi表示位置点的疏密程度,Ki表示位置点数据量,Ai表区域面积,i为编码次数。位置点的疏密程度指的是位置点的数据量与区域面积的比,位置点的数据量指的是位置点的数量,区域面积指的是位置点位串采用二分法每次划分时的区域面积。具体地,位置点位串每次编码得到一个位置点的疏密程度,根据位置点采用二分法划分时的纬度区间与经度区间确定区域面积,获取该区域面积内所有的位置点,通过预设公式计算得出该区域面积内的位置点疏密程度。例如,位置点位串0100101111000111011110110101011011011001,第一位数字0是从经度位串的左区间获取的,即[-180,0],纬度区间为[-90,90]获取该区间内的位置点,假设当前区域其面积为100000平方米,数据量为10万,通过预设公式得到该区域的位置点疏密程度为1。
S122、根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度。
在一实施例中,在得到所述区域内位置点的疏密程度后,根据疏密程度自适应地选择合适的编码长度以克服Geohash编码表示的距离范围跳跃性太大的问题。具体地,通过所述区域内位置点的疏密程度与预设阈值进行比较,若大于预设阈值则将当前的编码长度后移一位,直到区域内位置点的疏密程度不大于预设阈值则采用当前的编码长度作为位置点位串的编码长度,从而确定位置点位串的编码长度。
在一实施例中,如图5所示,所述步骤S122可包括步骤:S1221-S1223.
S1221、判断所述区域内位置点的疏密程度是否大于预设阈值。
S1222、若所述区域内位置点的疏密程度大于预设阈值,则将所述位置点位串的当前编码长度后移一位。
S1223、若所述区域内位置点的疏密程度不大于预设阈值,则将所述位置点位串的当前编码长度作为所述位置点位串的编码长度。
在一实施例中,预设阈值指的是预先设定的位置点疏密程度的阈值,该预设阈值的取值需综合考虑当前区域内位置点的疏密程度、索引过滤性能与验证阶段时间开销,比如为0.3。将第一次编码得到的位置点疏密程度Q1与预设阈值进行对比,若Q1大于预设阈值则将当前编码长度后移一位,将第二次编码得到的位置点疏密程度Q2与预设阈值进行对比,若Q2不大于预设阈值则将当前编码长度作为位置点的编码长度,然后继续依次得到Q3、Q4...直到得到位置点位串的所有编码长度。
例如,位置点位串0100101111000111011110110101011011011001,其中,Q1、Q2、Q3均大于预设阈值,而Q4不大于预设阈值,则取4位为第一个字符的编码长度;然后继续比较Q5、Q6、Q7、Q8均大于预设阈值,而Q9不大于预设阈值,则取5位为第二个字符的编码长度,继续上述过程最终得到该位置点位串的所有编码长度。
S123、根据所述位置点位串的编码长度依据字符编码规则对所述位置点位串进行编码得到所述位置点对应的字符串。
在一实施例中,字符编码规则为Base32编码规则,例如,位置点位串0100101111000111011110110101011011011001,其中,根据位置点位串的编码长度,第一次编码取4位为编码长度;那么根据字符编码规则对0100进行编码得到第一个字符为4;然后第二次编码取5位为编码长度,根据字符编码规则对10111进行编码得到第二个字符为r,以此类推最终得到对应的字符串为4r41e7e55c01。Base32编码表如图6所示。
S130、根据所述位置点对应的所述字符串构建扩展压缩树。
在一实施例中,压缩树(Patricia Trie)是Trie树的一种变形,其与Trie树的区别是对Trie中单节点路径进行了压缩,空间利用率更高。在Patricia Trie中,如果存在一个父节点只有一个子节点,那么这个父节点将与其子节点合并,从而对路径进行了压缩,检索效率高。具体地,压缩树包括内部节点和叶子节点,内部节点用于存储字符串的字符,叶子节点用于存储该字符串的key,压缩树中的任何一个内部结点均有2个或以上的子结点,字符在插入节点时需判断是否为上一个节点的唯一子节点,若是唯一子节点则将当前插入的节点与上一节点合并。例如,字符串4r41e7e55c01和4r51e8341e05,首先依次插入4r41e7e55c01的每个字符串,然后再插入4r51e8341e05,4r51e8341e05插入时先遍历压缩树,由于4节点在压缩树中存在,与4节点共享前缀;之后r节点也存在且为4节点的唯一子节点,将4节点和r节点合并为4r节点;接着在4r节点后新增节点5节点,5节点后新增1节点,再将5节点和1节点合并为51节点,依次类推,最后将51e8341e05合并为一个节点,从而完成压缩树的构建。为了提高空间查询效率,对PatriciaTrie节点进行扩展以得到扩展压缩树(GeoExPaTrie)。具体地,在Patricia Trie的节点中增加包含当前节点前缀的起始ID及其个数,使得对较大范围的空间查询,仅需访问从根到某个内部节点的路径即可,而无需访问到叶节点,从而提高空间范围查询响应速率。例如,在查询的字符串为9g3r,其表示一个较大的空间查询范围,相对于Patricia Trie,查询扩展压缩树,不需要遍历到叶节点才能获取对应的ID,只需要查询到r节点,根据r节点对应的ID和个数即可获取到该查询域内的所有ID。
S140、若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围。
在一实施例中,如图7所示,所述步骤S140可包括步骤:S141-S143。
S141、根据所述查询范围距离以及Geohash精度表确定所述查询位置点的编码长度,并通过Geohash算法将所述查询位置点编码为所述编码长度的字符串。
在一实施例中,给定查询位置点与查询范围距离,根据Geohash精度表选定与查询范围距离d相对应的Geohash编码长度p,通过Geohash算法将查询位置点q编码为p位长度的字符串;其中,p对应的区域范围距离不小于d且为最小值,例如查询距离d为500米,则Geohash编码长度p为6,P对应的区域范围距离为610,大于查询距离d且为最小,在确定Geohash编码长度之后,则通过Geohash算法对查询位置点进行编码得到对应的字符串,该过程与上述Geohash编码的过程相同,在此不再赘述。
S142、获取所述查询位置点对应的字符串周围八个区域的字符串。
在一实施例中,周围八个区域具体指的是东西南北方区域、东南方区域、东北方区域,西南方区域以及西北方区域。具体地,在得到查询位置点的字符串后,根据查询位置的字符串的纬度位串和经度位串计算周围八个区域的字符串对应的纬度位串和经度位串。
其中,北方区域的字符串对应的纬度位串等于查询位置点的字符串的纬度位串,北方区域的字符串对应的经度位串等于查询位置点的字符串的经度位串加1。
南方区域的字符串对应的纬度位串等于查询位置点的字符串的纬度位串,南方区域的字符串对应的经度位串等于查询位置点的字符串的经度位串减1。
东方区域的字符串对应的纬度位串等于查询位置点的字符串的纬度位串加1,东方区域的字符串对应的经度位串等于查询位置点的字符串的经度位串。
西方区域的字符串对应的纬度位串等于查询位置点的字符串的纬度位串减1,东方区域的字符串对应的经度位串等于查询位置点的字符串的经度位串。
东北方区域的字符串对应的纬度位串等于查询位置点的字符串的纬度位串加1,东北方区域的字符串对应的经度位串等于查询位置点的字符串的经度位串加1。
西北方区域的字符串对应的纬度位串等于查询位置点的字符串的纬度位串减1,西北方区域的字符串对应的经度位串等于查询位置点的字符串的经度位串加1。
东南方区域的字符串对应的纬度位串等于查询位置点的字符串的纬度位串加1,东南方区域的字符串对应的经度位串等于查询位置点的字符串的经度位串减1。
西南方区域的字符串对应的纬度位串等于查询位置点的字符串的纬度位串减1,西南方区域的字符串对应的经度位串等于查询位置点的字符串的经度位串减1。
例如,位置点的字符串为9g3rqp,其对应的纬度位串为100110111101111,经度位串为001110010111000,那么其北方区域的字符串对应的纬度位串则为100110111101111,经度位串则为001110010111000+1=001110010111001。在计算完经度位串和纬度位串后,再将经度位串和纬度位串合并,接着根据base32对合并后的位置点位串进行编码得到字符串,最终得到查询位置点周围的八个区域的字符串。
S143、将所述查询位置点对应的字符串以及所述查询位置点对应的字符串周围八个区域的字符串作为查询域查询所述扩展压缩树以得到所述查询域内的位置点。
在一实施例中,根据查询位置点的字符串以及周围八个区域的字符串遍历所述扩展压缩树,在所述扩展压缩树查找是否具有相同的字符串,若有则返回该字符串对应的位置点编号ID即为查询域内位置点。
S150、对所述查询域内的位置点进行验证以得到目标位置点。
在一实施例中,在得到查询域内的位置点后,则对查询域内的位置点进行验证,验证该查询域内的位置点是否在查询范围距离内。具体地,首先计算出查询位置点的经度范围和纬度范围,然后再根据查询位置点的经度范围和纬度范围来对查询域内的位置点进行过滤得到候选集,最后再对候选集中的位置点进行验证,计算候选集中的位置点到查询位置点的距离,将不大于查询范围距离的所述候选集中的位置点返回。
在一实施例中,如图8所示,所述步骤S150可包括步骤:S151-S154。
S151、根据所述查询位置点以及所述查询范围距离通过预设公式计算所述查询位置点的经度范围和纬度范围。
S152、根据所述查询位置点的经度范围和纬度范围对所述查询域内的位置点进行过滤得到候选集。
在一实施例中,根据查询位置点以及查询范围距离通过预设公式计算求出经度范围和纬度范围。预设公式如下:
maxLat=lat+range
minLat=lat-range
maxLng=lon+lngR
minLng=lon-lngR
range=180/π*d/6372.797
lngR=range/cos(lat*π/180.0)
其中,lat表示查询位置点的纬度值,lon表示查询位置点的经度值,d是查询范围距离,range和lngR均为变量,(minLat、maxLat)表示纬度范围,(minLng,maxLng)表示经度范围。例如,查询位置点(19.596412-99.219501)和查询距离范围500m,据上述公式可得,经度范围为[19.591917,19.600907],纬度范围为[-99.224272,-99.214730]。之后根据经纬度范围过滤查询结果返回编号ID对应于第一数据集中的位置点,得到位置点候选集。假设查询结果返回的ID集中,ID为1对应的经纬度为(19.600038-99.22491),19.600038位于[19.591917,19.600907]内,而-99.22491不位于[-99.224272,-99.214730]内,故过滤ID为1的位置点。只有位置点的经度值和纬度值均落入经度范围和纬度范围的才保留该位置点,从而筛选掉不在经纬度范围内的位置点,最终得到候选集。
S153、计算所述候选集中的位置点到所述查询位置点的距离,并将所述候选集中的位置点到所述查询位置点的距离与所述查询范围距离进行对比。
S154、若所述候选集中的位置点到所述查询位置点的距离不大于所述查询范围距离,则将所述候选集中的位置点作为目标位置点返回。
在一实施例中,根据预设公式计算候选集中的位置点到查询位置点的距离,其中,预设公式如下:
其中,A(x1,y1)为候选集中的位置点,B(x2,y2)为查询位置点,|AB|为候选集中的位置点到查询位置点的距离。例如,(19.59918,-99.21667)为候选集中一个位置点,查询范围距离为500米,计算该位置点到查询位置点(19.596412-99.219501)之间的距离,经计算,若该距离小于500米,则该位置点满足空间范围查询条件,将该位置点作为查询区域范围内的位置点返回。
本发明实施例展示了一种位置查询方法,通过根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度;根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串;根据所述位置点对应的所述字符串构建扩展压缩树;若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;对所述查询域内的位置点进行验证以得到目标位置点,可有效支持任意空间范围查询,提升索引结构性能,提高检索效率,编码适应性更强。
图9是本发明实施例提供的一种位置查询装置200的示意性框图。如图9所示,对应于以上位置查询方法,本发明还提供一种位置查询装置200。该位置查询装置200包括用于执行上述位置查询方法的单元,该装置可以被配置于台式电脑、平板电脑、手提电脑、等终端中。具体地,请参阅图9,该位置查询装置200包括:第一编码单元210、第二编码单元220、构建单元230、查询单元240以及验证单元250。
第一编码单元210,用于根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度。
在一实施例中,如图10所示,所述第一编码单元210包括:二分单元211以及合并单元212。
二分单元211,用于根据预设编码长度通过二分法对预设数据集中所有位置点的经度和纬度进行二进制编码以得到对应的经度位串和纬度位串。
合并单元212,用于根据奇数位为纬度、偶数位为经度的规则将所述经度位串和所述纬度位串进行合并以得到对应的位置点位串。
第二编码单元220,用于根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串。
在一实施例中,如图10所示,所述第二编码单元220包括:第一计算单元221、确定单元222以及第二编码子单元223。
第一计算单元221,用于根据位置点数据量以及区域面积通过预设公式计算得到位置点的疏密程度。
确定单元222,用于根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度。
在一实施例中,如图11所示,所述确定单元222包括:判断单元2221、后移单元2222以及确定子单元2223。
判断单元2221,用于判断所述区域内位置点的疏密程度是否大于预设阈值。
后移单元2222,用于若所述区域内位置点的疏密程度大于预设阈值,则将所述位置点位串的当前编码长度后移一位。
确定子单元2223,用于若所述区域内位置点的疏密程度不大于预设阈值,则将所述位置点位串的当前编码长度作为所述位置点位串的编码长度。
第二编码子单元223,用于根据所述位置点位串的编码长度依据字符编码规则对所述位置点位串进行编码得到所述位置点对应的字符串。
构建单元230,用于根据所述位置点对应的所述字符串构建扩展压缩树。
查询单元240,用于若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围。
在一实施例中,如图10所示,所述查询单元240包括:第三编码子单元241、获取单元242以及查询子单元243。
第三编码子单元241,用于根据所述查询范围距离以及Geohash精度表确定所述查询位置点的编码长度,并通过Geohash算法将所述查询位置点编码为所述编码长度的字符串。
获取单元242,用于获取所述查询位置点对应的字符串周围八个区域的字符串。
查询子单元243,用于将所述查询位置点对应的字符串以及所述查询位置点对应的字符串周围八个区域的字符串作为查询域查询所述扩展压缩树以得到所述查询域内的位置点。
验证单元250,用于对所述查询域内的位置点进行验证以得到目标位置点。
在一实施例中,如图10所示,所述验证单元250包括:第二计算单元251、过滤单元252、第三计算单元253以及返回单元254。
第二计算单元251,用于根据所述查询位置点以及所述查询范围距离通过预设公式计算所述查询位置点的经度范围和纬度范围。
过滤单元252,用于根据所述查询位置点的经度范围和纬度范围对所述查询域内的位置点进行过滤得到候选集。
第三计算单元253,用于计算所述候选集中的位置点到所述查询位置点的距离,并将所述候选集中的位置点到所述查询位置点的距离与所述查询范围距离进行对比。
返回单元254,用于若所述候选集中的位置点到所述查询位置点的距离不大于所述查询范围距离,则将所述候选集中的位置点作为目标位置点返回。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述位置查询装置200和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述位置查询装置可以实现为一种计算机程序的形式,该计算机程序可以在如图12所示的计算机设备上运行。
请参阅图12,图12是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是终端,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。
参阅图12,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种位置查询方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种位置查询方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度;根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串;根据所述位置点对应的所述字符串构建扩展压缩树;若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;对所述查询域内的位置点进行验证以得到目标位置点。
在一实施例中,处理器502在实现所述根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串步骤时,具体实现如下步骤:根据预设编码长度通过二分法对预设数据集中所有位置点的经度和纬度进行二进制编码以得到对应的经度位串和纬度位串;根据奇数位为纬度、偶数位为经度的规则将所述经度位串和所述纬度位串进行合并以得到对应的位置点位串。
在一实施例中,处理器502在实现所述根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串步骤时,具体实现如下步骤:根据位置点数据量以及区域面积通过预设公式计算得到位置点的疏密程度;根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度;根据所述位置点位串的编码长度依据字符编码规则对所述位置点位串进行编码得到所述位置点对应的字符串。
在一实施例中,处理器502在实现所述根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度步骤时,具体实现如下步骤:判断所述区域内位置点的疏密程度是否大于预设阈值;若所述区域内位置点的疏密程度大于预设阈值,则将所述位置点位串的当前编码长度后移一位;若所述区域内位置点的疏密程度不大于预设阈值,则将所述位置点位串的当前编码长度作为所述位置点位串的编码长度。
在一实施例中,处理器502在实现所述根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点步骤时,具体实现如下步骤:根据所述查询范围距离以及Geohash精度表确定所述查询位置点的编码长度,并通过Geohash算法将所述查询位置点编码为所述编码长度的字符串;获取所述查询位置点对应的字符串周围八个区域的字符串;将所述查询位置点对应的字符串以及所述查询位置点对应的字符串周围八个区域的字符串作为查询域查询所述扩展压缩树以得到所述查询域内的位置点。
在一实施例中,处理器502在实现所述对所述查询域内的位置点进行验证以得到目标位置点步骤时,具体实现如下步骤:根据所述查询位置点以及所述查询范围距离通过预设公式计算所述查询位置点的经度范围和纬度范围;根据所述查询位置点的经度范围和纬度范围对所述查询域内的位置点进行过滤得到候选集;计算所述候选集中的位置点到所述查询位置点的距离,并将所述候选集中的位置点到所述查询位置点的距离与所述查询范围距离进行对比;若所述候选集中的位置点到所述查询位置点的距离不大于所述查询范围距离,则将所述候选集中的位置点作为目标位置点返回。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时使处理器执行如下步骤:根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度;根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串;根据所述位置点对应的所述字符串构建扩展压缩树;若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;对所述查询域内的位置点进行验证以得到目标位置点。
在一实施例中,所述处理器在执行所述程序指令而实现所述根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串步骤时,具体实现如下步骤:根据预设编码长度通过二分法对预设数据集中所有位置点的经度和纬度进行二进制编码以得到对应的经度位串和纬度位串;根据奇数位为纬度、偶数位为经度的规则将所述经度位串和所述纬度位串进行合并以得到对应的位置点位串。
在一实施例中,所述处理器在执行所述程序指令而实现所述根据位置点的疏密程度确定所述位置点位串的编码长度并根据所述编码长度对所述位置点位串进行编码得到所述位置点对应的字符串步骤时,具体实现如下步骤:根据位置点数据量以及区域面积通过预设公式计算得到位置点的疏密程度;根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度;根据所述位置点位串的编码长度依据字符编码规则对所述位置点位串进行编码得到所述位置点对应的字符串。
在一实施例中,所述处理器在执行所述程序指令而实现所述根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度步骤时,具体实现如下步骤:判断所述区域内位置点的疏密程度是否大于预设阈值;若所述区域内位置点的疏密程度大于预设阈值,则将所述位置点位串的当前编码长度后移一位;若所述区域内位置点的疏密程度不大于预设阈值,则将所述位置点位串的当前编码长度作为所述位置点位串的编码长度。
在一实施例中,所述处理器在执行所述程序指令而实现所述根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点步骤时,具体实现如下步骤:根据所述查询范围距离以及Geohash精度表确定所述查询位置点的编码长度,并通过Geohash算法将所述查询位置点编码为所述编码长度的字符串;获取所述查询位置点对应的字符串周围八个区域的字符串;将所述查询位置点对应的字符串以及所述查询位置点对应的字符串周围八个区域的字符串作为查询域查询所述扩展压缩树以得到所述查询域内的位置点。
在一实施例中,所述处理器在执行所述程序指令而实现所述对所述查询域内的位置点进行验证以得到目标位置点步骤时,具体实现如下步骤:根据所述查询位置点以及所述查询范围距离通过预设公式计算所述查询位置点的经度范围和纬度范围;根据所述查询位置点的经度范围和纬度范围对所述查询域内的位置点进行过滤得到候选集;计算所述候选集中的位置点到所述查询位置点的距离,并将所述候选集中的位置点到所述查询位置点的距离与所述查询范围距离进行对比;若所述候选集中的位置点到所述查询位置点的距离不大于所述查询范围距离,则将所述候选集中的位置点作为目标位置点返回。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (7)
1.一种位置查询方法,其特征在于,包括:
根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度;
根据位置点数据量以及区域面积通过预设公式计算得到位置点的疏密程度;根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度;根据所述位置点位串的编码长度依据字符编码规则对所述位置点位串进行编码得到所述位置点对应的字符串;所述根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度,包括:判断所述区域内位置点的疏密程度是否大于预设阈值;若所述区域内位置点的疏密程度大于预设阈值,则将所述位置点位串的当前编码长度后移一位;若所述区域内位置点的疏密程度不大于预设阈值,则将所述位置点位串的当前编码长度作为所述位置点位串的编码长度;
根据所述位置点对应的所述字符串构建扩展压缩树;
若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;
对所述查询域内的位置点进行验证以得到目标位置点。
2.根据权利要求1所述的位置查询方法,其特征在于,所述根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,包括:
根据预设编码长度通过二分法对预设数据集中所有位置点的经度和纬度进行二进制编码以得到对应的经度位串和纬度位串;
根据奇数位为纬度、偶数位为经度的规则将所述经度位串和所述纬度位串进行合并以得到对应的位置点位串。
3.根据权利要求1所述的位置查询方法,其特征在于,所述根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,包括:
根据所述查询距离范围以及Geohash精度表确定所述查询位置点的编码长度,并通过Geohash算法将所述查询位置点编码为所述编码长度的字符串;
获取所述查询位置点对应的字符串周围八个区域的字符串;
将所述查询位置点对应的字符串以及所述查询位置点对应的字符串周围八个区域的字符串作为查询域查询所述扩展压缩树以得到所述查询域内的位置点。
4.根据权利要求1所述的位置查询方法,其特征在于,所述对所述查询域内的位置点进行验证以得到目标位置点,包括:
根据所述查询位置点以及所述查询距离范围通过预设公式计算所述查询位置点的经度范围和纬度范围;
根据所述查询位置点的经度范围和纬度范围对所述查询域内的位置点进行过滤得到候选集;
计算所述候选集中的位置点到所述查询位置点的距离,并将所述候选集中的位置点到所述查询位置点的距离与所述查询距离范围进行对比;
若所述候选集中的位置点到所述查询位置点的距离不大于所述查询距离范围,则将所述候选集中的位置点作为目标位置点返回。
5.一种位置查询装置,其特征在于,包括:
第一编码单元,用于根据Z曲线将预设数据集中的所有位置点编码为二进制的位置点位串,其中,所述位置点包括经度和纬度;
第二编码单元,用于根据位置点数据量以及区域面积通过预设公式计算得到位置点的疏密程度;根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度;根据所述位置点位串的编码长度依据字符编码规则对所述位置点位串进行编码得到所述位置点对应的字符串;所述根据所述区域内位置点的疏密程度确定所述位置点位串的编码长度,包括:判断所述区域内位置点的疏密程度是否大于预设阈值;若所述区域内位置点的疏密程度大于预设阈值,则将所述位置点位串的当前编码长度后移一位;若所述区域内位置点的疏密程度不大于预设阈值,则将所述位置点位串的当前编码长度作为所述位置点位串的编码长度;
构建单元,用于根据所述位置点对应的所述字符串构建扩展压缩树;
查询单元,用于若接收到查询指令,根据所述查询指令查询所述扩展压缩树以获取查询域内的位置点,其中,所述查询指令包括查询位置点以及查询距离范围;
验证单元,用于对所述查询域内的位置点进行验证以得到目标位置点。
6.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-4中任一项所述的方法。
7.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序当被处理器执行时可实现如权利要求1-4中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910969191.5A CN111078806B (zh) | 2019-10-12 | 2019-10-12 | 位置查询方法、装置、计算机设备及存储介质 |
PCT/CN2019/118271 WO2021068347A1 (zh) | 2019-10-12 | 2019-11-14 | 自适应位置查询方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910969191.5A CN111078806B (zh) | 2019-10-12 | 2019-10-12 | 位置查询方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111078806A CN111078806A (zh) | 2020-04-28 |
CN111078806B true CN111078806B (zh) | 2024-02-02 |
Family
ID=70310321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910969191.5A Active CN111078806B (zh) | 2019-10-12 | 2019-10-12 | 位置查询方法、装置、计算机设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111078806B (zh) |
WO (1) | WO2021068347A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112015740B (zh) * | 2020-10-19 | 2022-04-26 | 南京视网么信息科技有限公司 | 基于z曲线的空间数据存储索引方法 |
CN114461826B (zh) * | 2021-12-30 | 2023-07-04 | 中科星通(廊坊)信息技术有限公司 | 一种基于改进的z曲线编码的切片检索方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107111486A (zh) * | 2014-11-14 | 2017-08-29 | 英特尔公司 | 用于计算z序曲线中的下一点的坐标的向量指令 |
CN107341191A (zh) * | 2017-06-14 | 2017-11-10 | 童晓冲 | 一种三维空间的多尺度整数化编码方法和装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385591B (zh) * | 2010-09-03 | 2014-10-22 | 广东瑞图万方科技股份有限公司 | 一种全球定位编码装置及方法 |
US10049164B2 (en) * | 2013-07-12 | 2018-08-14 | Nec Corporation | Multidimensional-range search apparatus and multidimensional-range search method |
WO2016124246A1 (en) * | 2015-02-06 | 2016-08-11 | Telefonaktiebolaget Lm Ericsson (Publ) | A system, a node, a method in a communication network and a computer program and corresponding computer program product |
CN107766433B (zh) * | 2017-09-19 | 2021-05-14 | 昆明理工大学 | 一种基于Geo-BTree的范围查询方法及装置 |
US10747783B2 (en) * | 2017-12-14 | 2020-08-18 | Ebay Inc. | Database access using a z-curve |
CN108846013B (zh) * | 2018-05-04 | 2021-11-23 | 昆明理工大学 | 一种基于geohash与Patricia Trie的空间关键词查询方法及装置 |
CN108763522A (zh) * | 2018-05-31 | 2018-11-06 | 康键信息技术(深圳)有限公司 | Poi检索排序方法、装置及计算机可读存储介质 |
-
2019
- 2019-10-12 CN CN201910969191.5A patent/CN111078806B/zh active Active
- 2019-11-14 WO PCT/CN2019/118271 patent/WO2021068347A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107111486A (zh) * | 2014-11-14 | 2017-08-29 | 英特尔公司 | 用于计算z序曲线中的下一点的坐标的向量指令 |
CN107341191A (zh) * | 2017-06-14 | 2017-11-10 | 童晓冲 | 一种三维空间的多尺度整数化编码方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2021068347A1 (zh) | 2021-04-15 |
CN111078806A (zh) | 2020-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111078807B (zh) | 位置查询方法、装置、计算机设备及存储介质 | |
CN107798054B (zh) | 一种基于Trie的范围查询方法及装置 | |
CN111026978A (zh) | 位置查询方法、装置、计算机设备及存储介质 | |
CN108846013B (zh) | 一种基于geohash与Patricia Trie的空间关键词查询方法及装置 | |
CN107766433B (zh) | 一种基于Geo-BTree的范围查询方法及装置 | |
US9719790B2 (en) | Mapping uncertain geometries to graticules | |
CN110502599B (zh) | 地图数据的查询方法、装置和计算机可读存储介质 | |
CN111078806B (zh) | 位置查询方法、装置、计算机设备及存储介质 | |
CN110599169B (zh) | 数据处理方法、装置、终端及介质 | |
CN108549690B (zh) | 基于空间距离约束的空间关键字查询方法及系统 | |
WO2016095749A1 (zh) | 电子地图中查询空间对象和建立空间索引的方法及装置 | |
CN115130021A (zh) | 用于提供位置信息的装置、系统和方法 | |
CN106131139B (zh) | 一种云关系数据库的浮点数据的加密及查询方法 | |
CN110413719A (zh) | 信息处理方法及装置、设备、存储介质 | |
CN106991149B (zh) | 一种融合编码和多版本数据的海量空间对象存储方法 | |
WO2019001223A1 (zh) | 极速地理GeoHash聚类方法 | |
CN108776666A (zh) | 一种基于关键词倒排与Trie的空间关键词查询方法及装置 | |
CN112948674A (zh) | 基于Redis的智能推送服务的方法、装置及计算机设备 | |
CN104598649A (zh) | 地理位置编码方法 | |
CN114880421B (zh) | 位置服务方法、系统、电子设备和存储介质 | |
CN109800360A (zh) | 小区查询方法、装置、电子设备及存储介质 | |
CN112100308B (zh) | 一种北斗时空轨迹的相似性查询方法 | |
CN110995849B (zh) | 一种矢量数据位置信息的传输与存储方法 | |
CN111446968B (zh) | 矢量空间数据多级压缩方法 | |
CN113806601B (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 |