[发明专利]一种地理位置检索方法在审
申请号: | 201911307381.7 | 申请日: | 2019-12-18 |
公开(公告)号: | CN111046126A | 公开(公告)日: | 2020-04-21 |
发明(设计)人: | 母延年 | 申请(专利权)人: | 南京录信软件技术有限公司 |
主分类号: | G06F16/29 | 分类号: | G06F16/29 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210000 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 地理位置 检索 方法 | ||
本发明涉及计算机算法技术领域,具体公开了一种地理位置检索方法,包括如下步骤,S1:获取经纬度的morton码,并将其存储在Lucene中的DocValues中;S2:将DocValues中的morton码经纬度的值迁移到Payload中;S3:在进行经纬度二次验证与剪切的时候,从Payload中进行取值;S4:完成位置检索;本发明通过采用Payload借助倒排本身的连续读取的特征,代替docvalues的随机读取的特点,也即将相同的地理位置的数据存储存储在一起,通过构造连续数据,减少随机读取的次数,从而实现大幅度的提升地理位置的检索匹配速度。
技术领域
本发明涉及计算机算法技术领域,具体为一种地理位置检索方法。
背景技术
地理位置检索服务在日常生活中随处可见,小到共享单车、高德地图,大到飞行航线轨迹。上述服务中很多相关功能都可以通过GeoHash来实现,Lucene/Solr中也有应用到GeoHash,通过GeoHash创建索引、查询索引以及距离的计算等等。但是由于GeoHash算法采用的是Peano空间填充曲线,虽然能够将二维空间转换成一维曲线,但Peano空间填充曲线最大的缺点就是突变性,有些编码相邻但距离却相差很远,比如0111与1000,编码是相邻的,但距离相差很大但是眼下有一替代geohash的方案——morton码代替GeoHash。针对现有部分模型的不足,有效避免了传统经纬度格网模型在高纬度地区的形状退化和正多面体格网模型的面片形状不规则问题。通过morton码,实现了面片编码与传统地理坐标之间的转换和邻接关系的计算,弥补了上述GeoHash算法中因地球不规则性和纬度变化带来的缺陷。Morton码可以将多维数据转化为一维数据编码,根据一维编码位数可确定多维数据保留精度,是一种比较常用的压缩编码方法,尤其是作为哈希表的映射算法等,加速了树结构数据的存储和访问速度。
Lucene内部sandbox包支持地理位置检索,默认实现可以支持方形,圆形和多边形的地理位置检索。目前lucene的拓展包也支持地理位置检索,其是基于morton码实现的。由于morton码仅能用来表达一个方形的区域,而lucene在实现圆形,多边形地理位置检索的时候是先基于morton筛选出一个大致的范围,然后对筛选出来的每一条记录进行二次验证与剪切,以达到精确匹配的目的。
目前lucene的二次验证采用的是DocValues实现,DocValues字段是一个面向列存储的字段,DocValues是在Lucene4.0引入的新特性,属于正向索引。它存储文档编号到字段值正向关系的索引。基于DocValues实现二次验证和剪切存在较多的随机IO,如果命中的记录条数很多,会导致整体地理位置检索性能非常的差。
发明内容
本发明的目的在于提供一种地理位置检索方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种地理位置检索方法,包括如下步骤,
S1:获取经纬度的morton码,并将其存储在Lucene中的DocValues中;
S2:将DocValues中的morton码经纬度的值迁移到Payload中;
S3:在进行经纬度二次验证与剪切的时候,从Payload中进行取值;
S4:完成位置检索。
优选的,所述步骤S1中,所述经纬度的morton码在DocValues中存储格式为正向列存储格式。
优选的,所述步骤S2中,经纬度的morton码在Payload中存储格式为倒排存储结构。
优选的,所述步骤S3中,在进行经纬度二次验证与剪切的时,拦截从DocValues调用经纬度数据,提供从Payload中取值的接口,从而实现从Payload中进行取经纬度值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京录信软件技术有限公司,未经南京录信软件技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911307381.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:智能插座
- 下一篇:一种模组吊装和翻转的工装