CN107291785A - 一种数据查找方法及装置 - Google Patents

一种数据查找方法及装置 Download PDF

Info

Publication number
CN107291785A
CN107291785A CN201610229144.3A CN201610229144A CN107291785A CN 107291785 A CN107291785 A CN 107291785A CN 201610229144 A CN201610229144 A CN 201610229144A CN 107291785 A CN107291785 A CN 107291785A
Authority
CN
China
Prior art keywords
data
target location
poi
latitude
longitude
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.)
Pending
Application number
CN201610229144.3A
Other languages
English (en)
Inventor
王子
王子一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Didi Infinity Technology and Development Co Ltd
Original Assignee
Didi (china) Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Didi (china) Technology Co Ltd filed Critical Didi (china) Technology Co Ltd
Priority to CN201610229144.3A priority Critical patent/CN107291785A/zh
Priority to AU2017250221A priority patent/AU2017250221B2/en
Priority to GB1719634.6A priority patent/GB2553735A/en
Priority to EP17781892.9A priority patent/EP3443485A1/en
Priority to JP2017562349A priority patent/JP6571801B2/ja
Priority to TW106112449A priority patent/TWI630373B/zh
Priority to PCT/CN2017/080218 priority patent/WO2017177916A1/en
Priority to CN201780017070.XA priority patent/CN109074370B/zh
Publication of CN107291785A publication Critical patent/CN107291785A/zh
Priority to US15/822,253 priority patent/US10712170B2/en
Priority to US16/895,091 priority patent/US10969239B2/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3679Retrieval, searching and output of POI information, e.g. hotels, restaurants, shops, filling stations, parking facilities
    • G01C21/3682Retrieval, searching and output of POI information, e.g. hotels, restaurants, shops, filling stations, parking facilities output of POI information on a road map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9014Indexing; Data structures therefor; Storage structures hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Navigation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种数据查找方法,方法包括:对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据,并根据预设查找半径,计算得到位置编码长度;根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据;根据每个位置编码数据,获取Trie树中与当前位置编码数据对应的用户兴趣点POI数据。装置包括:降维编码模块、编码长度计算模块、编码数据查找模块和POI数据获取模块。本发明通过对数据进行降维处理,大大减小了数据量,从一定程度上提高了数据查询效率;同时通过将Hash算法应用于Trie树,建立Hash索引进行查找,能够大大提高数据查询效率以满足用户要求。

Description

一种数据查找方法及装置
技术领域
本发明涉及数据查找技术领域,具体涉及一种数据查找方法及装置。
背景技术
随着信息技术的发展,使得用户对电子产品的要求越来越高,但随着数据量的增长,使得数据查找的速度越来越慢,无法满足用户日益提高的要求。
现有的数据查找方法中,采用树结构进行查找是一种查找效率较高的方法,通过树形结构存储数据,将无向查找转化为有向查找,大大提高了查找效率。但是对于数据量较大的情况,传统树形结构的查找效率仍然无法满足用户的要求。Trie树结构是对树结构的一个改动,通过字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,在一定程度上提高了查询效率。但是对于大数据量的情况,传统Trie树结构的查找效率仍然无法满足用户的要求。
发明内容
由于对传统Trie树结构进行大数据量查找的效率无法满足用户要求的问题,本发明提出一种数据查找方法及装置。
第一方面,本发明提出一种数据查找方法,包括:
对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据;并根据预设查找半径,计算得到位置编码长度;
根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据;
根据每个位置编码数据,获取Trie树中与当前位置编码数据对应的用户兴趣点(Point of Interesting,POI)数据。
优选地,所述Hash算法包括:
在Trie树中的每个节点存储当前位置编码数据的对应数据的Hash索引表;
根据所述Hash索引表进行查找。
优选地,所述对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据之前,还包括:
根据POI数据解析得到经度数据和纬度数据;
对所述经度数据和所述纬度数据进行降维编码,得到降维后的位置编码数据;
将所述降维后的位置编码数据和所述POI数据存入Trie树中。
优选地,所述根据POI数据解析得到经度数据和纬度数据之前,还包括:
从数据源中获取所述POI数据,所述数据源包括数据库、文件和网络资源。
优选地,所述根据预设查找半径,计算得到位置编码长度之后,还包括:
根据拓扑曲线计算方法,得到目标位置的周围位置对应的周边位置编码数据;
所述根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据,进一步包括:
根据所述目标位置编码数据、所述位置编码长度和所述周边位置编码数据进行查找。
优选地,所述POI数据包括经度数据、纬度数据、地址、联系电话、优惠活动。
优选地,所述从数据源中获取所述POI数据,所述数据源包括数据库、文件和网络资源之前,还包括:
根据所述POI数据中的经度数据和纬度数据,对数据源中的数据进行分类;
将数据源中的数据存储在若干个服务器中,其中,同一类数据存储在同一个服务器中。
优选地,所述降维编码采用GeoHash编码。
第二方面,本发明还提出一种数据查找装置,包括:
降维编码模块,用于对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据;并根据预设查找半径,计算得到位置编码长度;
编码数据查找模块,用于根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据;
POI数据获取模块,用于根据每个位置编码数据,获取Trie树中与当前位置编码数据对应的用户兴趣点POI数据。
优选地,所述Hash算法包括:
Hash索引单元,用于在Trie树中的每个节点存储当前位置编码数据的对应数据的Hash索引表;
Hash查找单元,用于根据所述Hash索引表进行查找。
优选地,还包括:
Trie构建模块,用于根据POI数据解析得到经度数据和纬度数据;对所述经度数据和所述纬度数据进行降维编码,得到降维后的位置编码数据;将所述降维后的位置编码数据和所述POI数据存入Trie树中。
优选地,还包括:
POI数据获取模块,用于从数据源中获取所述POI数据,所述数据源包括数据库、文件和网络资源。
优选地,还包括:
拓扑曲线计算模块,用于根据拓扑曲线计算方法,得到目标位置的周围位置对应的周边位置编码数据;
所述编码数据查找模块进一步用于根据所述目标位置编码数据、所述位置编码长度和所述周边位置编码数据进行查找。
优选地,所述POI数据包括经度数据、纬度数据、地址、联系电话、优惠活动。
优选地,还包括:
分类存储模块,用于根据所述POI数据中的经度数据和纬度数据,对数据源中的数据进行分类;将数据源中的数据存储在若干个服务器中,其中,同一类数据存储在同一个服务器中。
优选地,所述降维编码采用GeoHash编码。
由上述技术方案可知,本发明通过对数据进行降维处理,大大减小了数据量,从一定程度上提高了数据查询效率;同时通过将Hash算法应用于Trie树,建立Hash索引进行查找,能够大大提高数据查询效率以满足用户要求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1为本发明一实施例提供的一种数据查找方法的流程示意图;
图2为本发明一实施例提供的根据拓扑曲线计算方法的查找结果图;
图3为本发明一实施例提供的一种数据查找装置的结构示意图。
具体实施方式
下面结合附图,对发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
图1示出了本发明一实施例提供的一种数据查找方法的流程示意图,包括:
S1、对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据;并根据预设查找半径,计算得到位置编码长度;
其中,服务器接收客户端发送的目标位置数据,所述目标位置数据为二维数据,包括经度数据和纬度数据;所述降维编码是指将二维数据转换为一维数据,即将经度数据和纬度数据降维得到目标位置编码数据,以减少数据存储的数量和空间。
举例来说,将二维数据(6,8)进行降维编码,首先采用4位二进制数进行转换,得到(0110,1000);然后将两个二进制编码进行拼接,得到01101000,对应的十进制数为104,则104即为二维数据(6,8)降维后的编码数据。
服务器接收客户端的预设查找半径,预设查找半径可取任意距离,以50米为例,则根据编码规则,可确定50米对应的位置编码长度:假设目标位置编码数据为8位,50米对应的编码长度为2位,则位置编码长度为8-2=6位,即编码的前6位与目标位置编码数据相同的编码数据均为预设查找半径内的位置。
S2、根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据;
其中,Trie树,又称前缀树或字典树,是一种有序树,用于保存关联数组,其中的键通常是字符串。与二叉查找树不同,键不是直接保存在节点中,而是由节点在树中的位置决定。一个节点的所有子孙都有相同的前缀,也就是这个节点对应的字符串,而根节点对应空字符串。Hash是一种算法,根据数据特点计算出一个对应Hash值,相同的对象Hash值一定相同。Hash结构是一种Hash算法和数组的数据结构。由于计算机中数组使用下标访问是常量级别性能,所以使用Hash索引值到对应的“桶”中查找数据,其性能也是常量级别。
Hash算法通过建立索引,能够快速获取目标数据的算法。由于Trie树中的节点具有多个子节点,因此在查找时,需要依次进行匹配直到匹配成功。通过在每个节点处添加Hash索引表,能够直接定位到对应的子节点,无需对子节点依次匹配,因此能够大大提高数据查询效率。举例来说,若目标位置编码数据为01101000,位置编码长度为6,则通过Hash算法在Trie树中查找到011010,其所有子节点均为目标位置预设查找半径内的位置编码数据。
S3、根据每个位置编码数据,获取Trie树中与当前位置编码数据对应的用户兴趣点POI数据。
其中,Trie树的节点中存储了每个位置编码数据及其对应的POI数据,POI数据可根据用户自定义。
本实施例通过对数据进行降维处理,大大减小了数据量,从一定程度上提高了数据查询效率;同时通过将Hash算法应用于Trie树,建立Hash索引进行查找,能够大大提高数据查询效率以满足用户要求。
作为本实施例的可选方案,所述Hash算法包括:
S201、在Trie树中的每个节点存储当前位置编码数据的对应数据的Hash索引表;
其中,服务器在Trie树中的每个节点存储当前位置编码数据的对应数据的Hash索引表。所述当前位置编码数据的对应数据具体指当前Trie树节点的子节点数据;所述Hash索引表为子节点的位置编码数据与子节点序号的对应表。
S202、根据所述Hash索引表进行查找。
通过将Hash算法应用与Trie树,在Trie树的每个节点处存储Hash索引表,能够直接通过Hash索引表进行位置编码数据的匹配,无需对每个子节点进行查找和匹配,大大提高了数据查询效率。
进一步地,S1之前,还包括:
S01、根据POI数据解析得到经度数据和纬度数据;
S02、对所述经度数据和所述纬度数据进行降维编码,得到降维后的位置编码数据;
S03、将所述降维后的位置编码数据和所述POI数据存入Trie树中。
通过构建Trie树,将位置编码数据与POI数据进行关联存储,便于后续查找。
进一步地,S01之前,还包括:
S00、从数据源中获取所述POI数据,所述数据源包括数据库、文件和网络资源。
数据源可以改变,可以动态灵活的使用数据库、文件、网络流等形式作为数据源。通过从多个渠道的数据源中获取POI数据,能够使得POI数据更加完整,用户体验更好。
举例来说,所述降维编码采用GeoHash编码。
GeoHash编码是一种能将二维的经纬度数据编码为一维字符串的一种降维编码算法,Gustavo Niemeyer于2005年提出。
GeoHash编码算法是一种空间编码算法:先对经度进行编码,按照-180°到180°进行二分,如果当前点经度处于-180°到0°之间,则取0;如果当前点经度处于0°到180°之间,则取1。重复该操作到一定精度。对于纬度采用-90°到90°进行二分编码,直到一定精度。对经度编码后的二进制数和纬度编码后的二进制数进行混码操作,奇数位放纬度,偶数位放经度,得到混码后的编码。对混码后的编码进行Base32编码,最终得到GeoHash编码。
GeoHash编码是一种成熟且高效的降维编码方法,能够提高查找效率。
具体地,S1中所述对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据之后,还包括:
S21、根据拓扑曲线计算方法,得到目标位置的周围位置对应的周边位置编码数据;
由于GeoHash编码有突变特性,所以要根据其拓扑曲线特点来寻找周围的“格子”对应的编码值。比如需要半径2公里的所有POI。2公里对应的GeoHash编码长度为5位,那么通常会取6位,再根据拓扑曲线特点使用6位长度的GeoHash编码格子去拼接出2公里半径的区域,得出一系列长度为6位的GeoHash编码,然后再去Hash-Trie树种查找对应的poi,查找结果如图2所示。
S2进一步包括:
S21、根据所述目标位置编码数据、所述位置编码长度和所述周边位置编码数据进行查找。
通过采用拓扑曲线计算方法,得到目标位置的周围位置对应的周边位置编码数据,能够解决区域边界的数据被忽略的问题。
具体地,所述POI数据包括经度数据、纬度数据、地址、联系电话、优惠活动。
进一步地,S00之前,还包括:
S001、根据所述POI数据中的经度数据和纬度数据,对数据源中的数据进行分类;
S002、将数据源中的数据存储在若干个服务器中,其中,同一类数据存储在同一个服务器中。
通过将数据源的数据存储在若干年服务器中,能够缓解每个服务器的压力,提高查找效率;通过将同一类的数据存储在同一个服务器中,能够在进行附近位置查找时,快速查找到周边位置,提高查找效率。
为了更好地说明本实施例提供的基于Hash算法和Trie树的数据查找方法,以下通过具体步骤进行阐述,其中A1-A5为建立索引,A6-A10为附近查找:
A1、启动应用程序,设置数据源,如数据库、本地文件、网络流等。
A2、根据编码头N位进行负载均衡操作,将不同的编码结果发送至不同的服务器进行存储,其中N为正整数。
A3、读入数据源中的POI数据,解析基本数据:经度、纬度和POI的扩展数据:地址、联系电话、优惠活动等。
A4、使用GeoHash编码算法对经度和纬度进行GeoHash编码。
A5、将计算出的GeoHash和POI的扩展数据存入Hash-Trie树中,其中Hash-Trie树是指使用Hash结构存储子节点的Trie树,能把子节点的查找性能从最快O(n)LogN提高至O(1)。
A6、使用GeoHash编码算法对目的位置进行Geohash编码,得出目的位置的GeoHash编码。
A7、根据用户查找半径,计算出所需的GeoHash编码长度。
A8、通过拓扑曲线计算方法,得到用户所在点周围的GeoHash编码,其长度和A7中计算出的GeoHash编码长度相一致。
A9、使用Hash-Trie树进行查找,快速查找出相应GeoHash编码对应的POI数据。
A10、对查找出的POI数据的集合按照排序规则进行排序,返回给客户端。
本实施例提供的方法使用Hash结构改造Trie树,使其拥有常量阶的查找性能,结合GeoHash编码算法,能够应用于LBS领域下的附近搜索,可以部署在分布式环境下,采用纯内存方案,可进行动态扩容,拥有常量阶查找性能。能够应用于LBS(基于位置服务)领域,解决分布式环境下的海量LBS相关POI数据的高性能查找问题,主要应用于附近搜索场景。
图3示出了本实施例提供的一种数据查找装置的结构示意图,包括降维编码模块11、编码数据查找模块12和POI数据获取模块13。其中,
降维编码模块11用于对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据;并根据预设查找半径,计算得到位置编码长度;
编码数据查找模块12用于根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据;
POI数据获取模块13用于根据每个位置编码数据,获取Trie树中与当前位置编码数据对应的用户兴趣点POI数据。
本实施例通过对数据进行降维处理,大大减小了数据量,从一定程度上提高了数据查询效率;同时通过将Hash算法应用于Trie树,建立Hash索引进行查找,能够大大提高数据查询效率以满足用户要求。
可选地,所述Hash算法用于在Trie树中的每个节点存储当前位置编码数据的对应数据的Hash索引表;并根据所述Hash索引表进行查找。
进一步地,所述数据查找装置还包括:
Trie构建模块,用于根据POI数据解析得到经度数据和纬度数据;对所述经度数据和所述纬度数据进行降维编码,得到降维后的位置编码数据;将所述降维后的位置编码数据和所述POI数据存入Trie树中。
进一步地,所述数据查找装置还包括:
POI数据获取模块,用于从数据源中获取所述POI数据,所述数据源包括数据库、文件和网络资源。
更进一步地,所述数据查找装置还包括:
拓扑曲线计算模块,用于根据拓扑曲线计算方法,得到目标位置的周围位置对应的周边位置编码数据;
所述编码数据查找模块进一步用于根据所述目标位置编码数据、所述位置编码长度和所述周边位置编码数据进行查找。
具体地,所述POI数据包括经度数据、纬度数据、地址、联系电话、优惠活动。
进一步地,所述数据查找装置还包括:
分类存储模块,用于根据所述POI数据中的经度数据和纬度数据,对数据源中的数据进行分类;将数据源中的数据存储在若干个服务器中,其中,同一类数据存储在同一个服务器中。
举例来说,所述降维编码采用GeoHash编码。
上述实施例所述的数据查找装置可以用于执行上述方法实施例,其原理和技术效果类似,此处不再赘述。
本发明的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

Claims (16)

1.一种数据查找方法,其特征在于,包括:
对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据;并根据预设查找半径,计算得到位置编码长度;
根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据;
根据每个位置编码数据,获取Trie树中与当前位置编码数据对应的用户兴趣点POI数据。
2.根据权利要求1所述的方法,其特征在于,所述Hash算法包括:
在Trie树中的每个节点存储当前位置编码数据的对应数据的Hash索引表;
根据所述Hash索引表进行查找。
3.根据权利要求1所述的方法,其特征在于,所述对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据之前,还包括:
根据POI数据解析得到经度数据和纬度数据;
对所述经度数据和所述纬度数据进行降维编码,得到降维后的位置编码数据;
将所述降维后的位置编码数据和所述POI数据存入Trie树中。
4.根据权利要求3所述的方法,其特征在于,所述根据POI数据解析得到经度数据和纬度数据之前,还包括:
从数据源中获取所述POI数据,所述数据源包括数据库、文件和网络资源。
5.根据权利要求1所述的方法,其特征在于,所述根据预设查找半径,计算得到位置编码长度之后,还包括:
根据拓扑曲线计算方法,得到目标位置的周围位置对应的周边位置编码数据;
所述根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据,进一步包括:
根据所述目标位置编码数据、所述位置编码长度和所述周边位置编码数据进行查找。
6.根据权利要求4所述的方法,其特征在于,所述POI数据包括经度数据、纬度数据、地址、联系电话、优惠活动。
7.根据权利要求6所述的方法,其特征在于,所述从数据源中获取所述POI数据,所述数据源包括数据库、文件和网络资源之前,还包括:
根据所述POI数据中的经度数据和纬度数据,对数据源中的数据进行分类;
将数据源中的数据存储在若干个服务器中,其中,同一类数据存储在同一个服务器中。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述降维编码采用GeoHash编码。
9.一种数据查找装置,其特征在于,包括:
降维编码模块,用于对接收的目标位置的经度数据和纬度数据进行降维编码,得到目标位置编码数据;并根据预设查找半径,计算得到位置编码长度;
编码数据查找模块,用于根据所述目标位置编码数据和所述位置编码长度,采用Hash算法在Trie树中查找目标位置预设查找半径内的所有位置编码数据;
POI数据获取模块,用于根据每个位置编码数据,获取Trie树中与当前位置编码数据对应的用户兴趣点POI数据。
10.根据权利要求9所述的装置,其特征在于,所述Hash算法用于在Trie树中的每个节点存储当前位置编码数据的对应数据的Hash索引表;并根据所述Hash索引表进行查找。
11.根据权利要求9所述的装置,其特征在于,还包括:
Trie构建模块,用于根据POI数据解析得到经度数据和纬度数据;对所述经度数据和所述纬度数据进行降维编码,得到降维后的位置编码数据;将所述降维后的位置编码数据和所述POI数据存入Trie树中。
12.根据权利要求11所述的装置,其特征在于,还包括:
POI数据获取模块,用于从数据源中获取所述POI数据,所述数据源包括数据库、文件和网络资源。
13.根据权利要求9所述的装置,其特征在于,还包括:
拓扑曲线计算模块,用于根据拓扑曲线计算方法,得到目标位置的周围位置对应的周边位置编码数据;
所述编码数据查找模块进一步用于根据所述目标位置编码数据、所述位置编码长度和所述周边位置编码数据进行查找。
14.根据权利要求12所述的装置,其特征在于,所述POI数据包括经度数据、纬度数据、地址、联系电话、优惠活动。
15.根据权利要求14所述的装置,其特征在于,还包括:
分类存储模块,用于根据所述POI数据中的经度数据和纬度数据,对数据源中的数据进行分类;将数据源中的数据存储在若干个服务器中,其中,同一类数据存储在同一个服务器中。
16.根据权利要求9-15任一项所述的装置,其特征在于,所述降维编码采用GeoHash编码。
CN201610229144.3A 2016-04-12 2016-04-12 一种数据查找方法及装置 Pending CN107291785A (zh)

Priority Applications (10)

Application Number Priority Date Filing Date Title
CN201610229144.3A CN107291785A (zh) 2016-04-12 2016-04-12 一种数据查找方法及装置
TW106112449A TWI630373B (zh) 2016-04-12 2017-04-12 確定興趣點的系統和方法
GB1719634.6A GB2553735A (en) 2016-04-12 2017-04-12 Systems and methods for determining point of interest
EP17781892.9A EP3443485A1 (en) 2016-04-12 2017-04-12 Systems and methods for determining point of interest
JP2017562349A JP6571801B2 (ja) 2016-04-12 2017-04-12 ポイントオブインタレストを決定するシステム及び方法
AU2017250221A AU2017250221B2 (en) 2016-04-12 2017-04-12 Systems and methods for determining point of interest
PCT/CN2017/080218 WO2017177916A1 (en) 2016-04-12 2017-04-12 Systems and methods for determining point of interest
CN201780017070.XA CN109074370B (zh) 2016-04-12 2017-04-12 确定兴趣点的***和方法
US15/822,253 US10712170B2 (en) 2016-04-12 2017-11-27 Systems and methods for determining a point of interest
US16/895,091 US10969239B2 (en) 2016-04-12 2020-06-08 Systems and methods for determining a point of interest

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610229144.3A CN107291785A (zh) 2016-04-12 2016-04-12 一种数据查找方法及装置

Publications (1)

Publication Number Publication Date
CN107291785A true CN107291785A (zh) 2017-10-24

Family

ID=60042345

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201610229144.3A Pending CN107291785A (zh) 2016-04-12 2016-04-12 一种数据查找方法及装置
CN201780017070.XA Active CN109074370B (zh) 2016-04-12 2017-04-12 确定兴趣点的***和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201780017070.XA Active CN109074370B (zh) 2016-04-12 2017-04-12 确定兴趣点的***和方法

Country Status (8)

Country Link
US (2) US10712170B2 (zh)
EP (1) EP3443485A1 (zh)
JP (1) JP6571801B2 (zh)
CN (2) CN107291785A (zh)
AU (1) AU2017250221B2 (zh)
GB (1) GB2553735A (zh)
TW (1) TWI630373B (zh)
WO (1) WO2017177916A1 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798054A (zh) * 2017-09-04 2018-03-13 昆明理工大学 一种基于Trie的范围查询方法及装置
CN107977458A (zh) * 2017-12-19 2018-05-01 深圳马可孛罗科技有限公司 一种机场信息过滤方法及***
CN108055638A (zh) * 2017-12-07 2018-05-18 海尔优家智能科技(北京)有限公司 获取目标位置的方法、装置、计算机可读介质及设备
CN108763522A (zh) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 Poi检索排序方法、装置及计算机可读存储介质
CN110287426A (zh) * 2019-05-23 2019-09-27 北京百度网讯科技有限公司 兴趣点父子关系的建立方法、装置、存储介质及处理器
CN110785627A (zh) * 2018-06-07 2020-02-11 北京嘀嘀无限科技发展有限公司 一种用于路径确定的***和方法
CN110909260A (zh) * 2019-11-12 2020-03-24 浙江大搜车软件技术有限公司 车辆显示方法、装置、计算机可读存储介质和计算机设备
CN111274272A (zh) * 2020-01-15 2020-06-12 江苏苏宁物流有限公司 一种对象的查找方法、装置及计算机***
CN112154428A (zh) * 2019-10-12 2020-12-29 深圳市大疆创新科技有限公司 数据处理方法、处理及存储设备、飞行设备和控制***
CN112446768A (zh) * 2021-02-01 2021-03-05 北京每日优鲜电子商务有限公司 物品信息推荐方法、装置、电子设备和计算机可读介质

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107070961B (zh) 2016-09-30 2020-06-23 阿里巴巴集团控股有限公司 基于地理位置数据的热点区域确定方法及装置
US11268821B2 (en) * 2018-08-01 2022-03-08 Uber Technologies, Inc. Point of interest based pickup coordination system
CN109325089A (zh) * 2018-10-10 2019-02-12 北京锐安科技有限公司 一种非定点对象查询方法、装置、终端设备及存储介质
CN111382369B (zh) * 2018-12-29 2023-05-23 北京嘀嘀无限科技发展有限公司 用于确定与地址查询相关的相关兴趣点的***和方法
CN109597922B (zh) * 2019-01-03 2023-02-28 北京顺源开华科技有限公司 时区确定方法、装置、可穿戴设备及***
CN110609884A (zh) * 2019-09-30 2019-12-24 腾讯科技(深圳)有限公司 基于地理位置服务的网络游戏的数据控制方法及装置
CN111177588B (zh) * 2019-12-31 2023-12-05 北京百度网讯科技有限公司 兴趣点检索方法和装置
DE112021001926T5 (de) * 2020-03-27 2023-02-02 Wejo Ltd. System und verfahren zur filterlosen drosselung vonfahrzeugereignisdatenverarbeitung zum identifizieren von parkbereichen
CN111324131B (zh) * 2020-03-31 2023-09-01 中通服创立信息科技有限责任公司 一种基于人体雷达的轨道式巡检机器人的跟随监控方法
US11911595B2 (en) 2020-05-18 2024-02-27 Tandem Diabetes Care, Inc. Systems and methods for automated insulin delivery response to meal announcements
CN111475747B (zh) * 2020-05-26 2024-03-15 北京明略昭辉科技有限公司 地理索引编码方法、装置、电子设备和可读存储介质
CN111694919B (zh) * 2020-06-12 2023-07-25 北京百度网讯科技有限公司 生成信息的方法、装置、电子设备及计算机可读存储介质
CN113761087A (zh) * 2020-06-29 2021-12-07 北京沃东天骏信息技术有限公司 实体关联处理方法、装置及电子设备
CN112069276B (zh) * 2020-08-31 2024-03-08 平安科技(深圳)有限公司 地址编码方法、装置、计算机设备及计算机可读存储介质
CN113760780A (zh) * 2020-10-22 2021-12-07 北京沃东天骏信息技术有限公司 数据记录方法、装置、设备及介质
CN114911787B (zh) * 2022-05-31 2023-10-27 南京大学 一种融合位置和语义约束的多源poi数据清洗方法
TWI813339B (zh) 2022-06-15 2023-08-21 中光電智能雲服股份有限公司 基於電信數據推測廣告版位地點之系統及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102651026A (zh) * 2012-04-01 2012-08-29 百度在线网络技术(北京)有限公司 通过预计算优化搜索引擎分词的方法及搜索引擎分词装置
CN103150309A (zh) * 2011-12-07 2013-06-12 清华大学 一种空间方向感知地图兴趣点搜索方法和***
CN103279560A (zh) * 2013-06-13 2013-09-04 清华大学 基于安全区域的关键字连续查询方法
CN103383682A (zh) * 2012-05-01 2013-11-06 刘龙 一种地理编码方法、位置查询***及方法
CN104199860A (zh) * 2014-08-15 2014-12-10 浙江大学 一种基于二维地理位置信息的数据集分片方法
CN104516950A (zh) * 2014-12-10 2015-04-15 百度在线网络技术(北京)有限公司 一种兴趣点的查询方法及装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060036627A1 (en) 2004-08-06 2006-02-16 Roger Deran Method and apparatus for a restartable hash in a trie
US7840340B2 (en) * 2007-04-13 2010-11-23 United Parcel Service Of America, Inc. Systems, methods, and computer program products for generating reference geocodes for point addresses
US7882102B2 (en) * 2007-09-10 2011-02-01 Mitac International Corporation Nearest-neighbor geographic search
JP4816748B2 (ja) * 2009-03-06 2011-11-16 ソニー株式会社 ナビゲーション装置及びナビゲーション方法
US9258408B2 (en) * 2009-06-04 2016-02-09 Nokia Technologies Oy Method and apparatus for third-party control of device behavior
US9009177B2 (en) * 2009-09-25 2015-04-14 Microsoft Corporation Recommending points of interests in a region
US8290516B2 (en) * 2009-10-01 2012-10-16 Nokia Corporation Method and apparatus for providing location based services using connectivity graphs based on cell broadcast information
US8719198B2 (en) * 2010-05-04 2014-05-06 Microsoft Corporation Collaborative location and activity recommendations
US20140132767A1 (en) * 2010-07-31 2014-05-15 Eric Sonnabend Parking Information Collection System and Method
US8930391B2 (en) * 2010-12-29 2015-01-06 Microsoft Corporation Progressive spatial searching using augmented structures
US8965901B2 (en) * 2011-03-01 2015-02-24 Mongodb, Inc. System and method for determining exact location results using hash encoding of multi-dimensioned data
JP2013196151A (ja) * 2012-03-16 2013-09-30 Chikyu Joho Gijutsu Kenkyusho:Kk 地形画像処理装置、地形画像処理方法、地形画像処理プログラム及びそれを記録したコンピュータ読み取り可能な記録媒体、並びに地形画像データ及び地形図データ
TWI487881B (zh) * 2012-06-05 2015-06-11 Apple Inc 電子裝置、提供導航指引的語音啟動方法、提供導航指引的方法及機器可讀取媒體
US8930374B2 (en) * 2012-06-29 2015-01-06 Nokia Corporation Method and apparatus for multidimensional data storage and file system with a dynamic ordered tree structure
US10366113B2 (en) * 2013-03-15 2019-07-30 Twitter, Inc. Method and system for generating a geocode trie and facilitating reverse geocode lookups
US9471596B2 (en) * 2013-08-13 2016-10-18 Mapquest, Inc. Systems and methods for processing search queries utilizing hierarchically organized data
US9881590B2 (en) * 2014-03-12 2018-01-30 HERE Global, B.V. Method and apparatus for multi-resolution point of interest boundary identification in digital map rendering
US10102259B2 (en) * 2014-03-31 2018-10-16 International Business Machines Corporation Track reconciliation from multiple data sources
CN105468631A (zh) * 2014-09-04 2016-04-06 阿里巴巴集团控股有限公司 兴趣点查询方法及装置
CN106156138B (zh) 2015-04-10 2019-08-09 高德软件有限公司 兴趣点的空间索引的建立、周边搜索方法和装置
CN105404685B (zh) * 2015-12-09 2020-07-28 中国农业银行股份有限公司 一种电子地图空间查询方法及***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103150309A (zh) * 2011-12-07 2013-06-12 清华大学 一种空间方向感知地图兴趣点搜索方法和***
CN102651026A (zh) * 2012-04-01 2012-08-29 百度在线网络技术(北京)有限公司 通过预计算优化搜索引擎分词的方法及搜索引擎分词装置
CN103383682A (zh) * 2012-05-01 2013-11-06 刘龙 一种地理编码方法、位置查询***及方法
CN103279560A (zh) * 2013-06-13 2013-09-04 清华大学 基于安全区域的关键字连续查询方法
CN104199860A (zh) * 2014-08-15 2014-12-10 浙江大学 一种基于二维地理位置信息的数据集分片方法
CN104516950A (zh) * 2014-12-10 2015-04-15 百度在线网络技术(北京)有限公司 一种兴趣点的查询方法及装置

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798054A (zh) * 2017-09-04 2018-03-13 昆明理工大学 一种基于Trie的范围查询方法及装置
CN107798054B (zh) * 2017-09-04 2021-06-18 昆明理工大学 一种基于Trie的范围查询方法及装置
CN108055638A (zh) * 2017-12-07 2018-05-18 海尔优家智能科技(北京)有限公司 获取目标位置的方法、装置、计算机可读介质及设备
CN107977458A (zh) * 2017-12-19 2018-05-01 深圳马可孛罗科技有限公司 一种机场信息过滤方法及***
CN108763522A (zh) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 Poi检索排序方法、装置及计算机可读存储介质
CN110785627A (zh) * 2018-06-07 2020-02-11 北京嘀嘀无限科技发展有限公司 一种用于路径确定的***和方法
CN110785627B (zh) * 2018-06-07 2020-09-11 北京嘀嘀无限科技发展有限公司 一种用于路径确定的***和方法
CN110287426A (zh) * 2019-05-23 2019-09-27 北京百度网讯科技有限公司 兴趣点父子关系的建立方法、装置、存储介质及处理器
CN110287426B (zh) * 2019-05-23 2021-12-31 北京百度网讯科技有限公司 兴趣点父子关系的建立方法、装置、存储介质及处理器
CN112154428A (zh) * 2019-10-12 2020-12-29 深圳市大疆创新科技有限公司 数据处理方法、处理及存储设备、飞行设备和控制***
WO2021068268A1 (zh) * 2019-10-12 2021-04-15 深圳市大疆创新科技有限公司 数据处理方法、处理及存储设备、飞行设备和控制***
CN110909260A (zh) * 2019-11-12 2020-03-24 浙江大搜车软件技术有限公司 车辆显示方法、装置、计算机可读存储介质和计算机设备
CN111274272A (zh) * 2020-01-15 2020-06-12 江苏苏宁物流有限公司 一种对象的查找方法、装置及计算机***
CN112446768A (zh) * 2021-02-01 2021-03-05 北京每日优鲜电子商务有限公司 物品信息推荐方法、装置、电子设备和计算机可读介质
CN112446768B (zh) * 2021-02-01 2021-07-13 北京每日优鲜电子商务有限公司 物品信息推荐方法、装置、电子设备和计算机可读介质

Also Published As

Publication number Publication date
AU2017250221B2 (en) 2019-11-21
GB201719634D0 (en) 2018-01-10
AU2017250221A1 (en) 2018-02-08
US10969239B2 (en) 2021-04-06
EP3443485A4 (en) 2019-02-20
CN109074370B (zh) 2022-04-05
TWI630373B (zh) 2018-07-21
US20180080794A1 (en) 2018-03-22
US10712170B2 (en) 2020-07-14
TW201738532A (zh) 2017-11-01
US20200300657A1 (en) 2020-09-24
CN109074370A (zh) 2018-12-21
GB2553735A (en) 2018-03-14
WO2017177916A1 (en) 2017-10-19
EP3443485A1 (en) 2019-02-20
JP2018537005A (ja) 2018-12-13
JP6571801B2 (ja) 2019-09-04

Similar Documents

Publication Publication Date Title
CN107291785A (zh) 一种数据查找方法及装置
US11106708B2 (en) Layered locality sensitive hashing (LSH) partition indexing for big data applications
CN107565973B (zh) 一种结点可扩展的哈夫曼编码的实现方法及电路结构
CN103107945B (zh) 一种快速查找ipv6路由的***及方法
CN104636349B (zh) 一种索引数据压缩以及索引数据搜索的方法和设备
CN101827137A (zh) 一种基于哈希表和扩展存储器的高性能IPv6地址查找方法
CN108256082A (zh) 一种基于深度多相似度哈希的多标签图像检索方法
CN106897280A (zh) 数据查询方法及装置
CN101848248B (zh) 一种规则查找方法和装置
CN104933143B (zh) 获取推荐对象的方法及装置
CN110768936A (zh) 隐私数据的上报方法、装置与存储介质
US8493249B2 (en) Compression match enumeration
CN100476824C (zh) 存储元素的方法与***及查找元素的方法与***
CN105357247A (zh) 基于分层云对等网络的多维属性云资源区间查找方法
CN108628907A (zh) 一种用于基于Aho-Corasick的Trie树多关键词匹配的方法
CN112434031A (zh) 一种基于信息熵的不确定高效用模式挖掘方法
Gawrychowski et al. Sublinear-space distance labeling using hubs
Vu et al. R*-grove: Balanced spatial partitioning for large-scale datasets
Liu et al. Distributed incomplete pattern matching via a novel weighted bloom filter
Kekely et al. Packet classification with limited memory resources
CN101437016B (zh) ip地址结构树的构建方法
Lu et al. An Algorithm of Top-k High Utility Itemsets Mining over Data Stream.
Xiang Answering exact distance queries on real-world graphs with bounded performance guarantees
Al Aziz et al. Graceful labeling of trees: Methods and applications
Qiao et al. Computing weight constraint reachability in large networks

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201210

Address after: Building 34, yard 8, Dongbei Wangxi Road, Haidian District, Beijing 100193

Applicant after: BEIJING DIDI INFINITY TECHNOLOGY AND DEVELOPMENT Co.,Ltd.

Address before: Room 219-23, 2 / F, block D, comprehensive service area, Nangang Industrial Zone, Binhai New Area, Tianjin 300480

Applicant before: Didi (China) Technology Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20171024