CN107291782A - 一种以地理位置纬度和经度数位上的数字组合为索引的高效地理位置信息检索方法 - Google Patents
一种以地理位置纬度和经度数位上的数字组合为索引的高效地理位置信息检索方法 Download PDFInfo
- Publication number
- CN107291782A CN107291782A CN201610227661.7A CN201610227661A CN107291782A CN 107291782 A CN107291782 A CN 107291782A CN 201610227661 A CN201610227661 A CN 201610227661A CN 107291782 A CN107291782 A CN 107291782A
- Authority
- CN
- China
- Prior art keywords
- geographical position
- latitude
- longitude
- index
- combined
- 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
Links
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
Abstract
本发明提供了一种高效地理位置信息检索方法,通过建立一系列以地理位置纬度和经度数位上的数字组合组成的索引,当需要检索出设定地理位置周围一定距离内的位置信息时,可以将所搜索的信息范围快速缩小至目标地理位置周围的几个索引中,避免对所有地理位置的信息进行距离计算,大大地提高了检索性能。
Description
技术领域
本发明涉及地理位置信息搜索领域,特别是大数据量的地理位置信息的索引和搜索。
背景技术
现代信息系统中,地理位置通常由纬度和经度来表示,例如(31.495688度,120.311257度)代表了江苏省无锡市金匮公园的地理位置。如果没有建立索引,在需要搜索系统中某个地理位置x周围一定距离范围r内的其他地理位置信息时,需要计算系统中所有的其他地理位置(y1,y2………yn)和x之间的距离(d1,d2…dn),然后根据计算出的距离是否小于搜索给定的距离范围(d 是否小于 r)来决定是否将该信息包括在内,这需要通过大量的浮点运算来实现,效率低耗时多。
发明内容
本发明对系统中地理位置根据需要利用纬度和经度的数位上的数字组合建立索引,然后在搜索某个地理位置周围给定范围的地理位置信息时时可以利用这些索引将搜索范围快速缩小到搜索源点周围的小长方形中,以避免对系统中所有的地理位置做距离计算。
例为地理位置(31.495688度,120.311257度)建立013210439151、0132104391、和01321043三个索引,这些索引产生的方式如下:如果纬度、经度小数点前不足三位,则先在前面加0以补足三位,然后将纬度、经度从左开始轮流取一个数字然后合并起来直到产生所需长度的索引为止。理论上可以为地理位置建立2位、4位、6位...到任意位数的很多索引,但是考虑到地球上两个经度相同纬度相差1度的点之间的距离大约为111公里,而两个纬度()相同经度相差1度的点之间的距离大约为111 * cos(ø)公里,而距离的搜索范围通常是几百米到几百公里,那么实际只需要建立12位、10位、8位、6位这几个索引就足够了。
为地理位置建立索引后,在需要搜索系统中某个地理位置x周围一定距离范围r内的其他地理位置信息时,根据不同大小的搜索范围选择相应的索引可以很快将搜索区域缩小至包含搜索范围的一个长方形中。由于搜索结果在以x为原点, r为半径的园内,搜索结果内的地理位置纬度一定在x的纬度±r/111范围内,同时搜索结果内的地理位置经度一定在x的经度±r/(111 * cos(ø))内。如果搜索范围r在几百米量级,可以采用12位索引,并通过以下方法获得包含所有搜索结果的索引集:x的纬度和经度分别舍到小数点后三位,r以米为单位,纬度范围[x的纬度 - ceiling(r/111)* 0.001]~[x的纬度 + ceiling(r/111)* 0.001]、经度范围[x的经度 - ceiling(r/(111* cos(ø)))* 0.001]~[x的经度 + ceiling(r/(111* cos(ø)))* 0.001]所组成的12位索引集包含了所有的搜索结果, 其中ceiling是指向上取整。例如,我们要搜索信息系统中地理位置(31.495688度,120.311257度)周围100米内(r=100)的地理位置信息,ceiling(r/111)* 0.001 = 0.001,ceiling(r/(111* cos(ø)))* 0.001 = 0.002, 纬度31.494度~31.496度,经度120.309度~120.313度的区域包含了要搜索的全部结果,由此可以算出包含搜索结果的索引集{013210439049,
013210439140, 013210439141, 013210439142, 013210439143, 013210439059,
013210439150, 013210439151, 013210439152, 013210439153, 013210439069,
013210439160, 013210439161, 013210439162, 013210439163},通过对这个索引集内包含的地理位置信息进行和搜索源点的距离计算就得到搜索结果了,图1是描述了索引集和搜索范围的关系。
同样原理,如果搜索几公里或几十公里的范围,则可分别采用10位和8位的索引来实现。
由于现代的信息系统通常可以很快地从巨量的数据中找出索引,在采用本发明索引的地理信息系统中,当需要搜索给定位置周围某个范围内的地理信息时,可以很快地先找出包含搜索结果的索引集,然后仅对该索引集所包含的地理信息和搜索位置进行距离计算以找出搜索结果,这样搜索性能会远高于没有索引的系统。在没有索引的系统中,需要对所有的地理信息和搜索位置进行距离计算才能找出搜索结果。
Claims (4)
1.一种以地理位置纬度和经度各数位上的数字组合组成的地理位置信息索引方法。
2.一种采用以地理位置纬度和经度数位上的数字组合组成的索引的地理位置信息检索方法。
3.一种通过以下方式生成地理位置信息索引方法:如果纬度、经度小数点前不足三位,则先在前面加0以补足三位,然后将纬度、经度从左开始轮流取一个数字然后合并起来直到产生所需长度的索引。
4.一种利用一个或多个将纬度、经度从左开始轮流取一个数字然后合并起来所产生的索引将搜索范围缩小的地理位置信息检索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610227661.7A CN107291782A (zh) | 2016-04-13 | 2016-04-13 | 一种以地理位置纬度和经度数位上的数字组合为索引的高效地理位置信息检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610227661.7A CN107291782A (zh) | 2016-04-13 | 2016-04-13 | 一种以地理位置纬度和经度数位上的数字组合为索引的高效地理位置信息检索方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107291782A true CN107291782A (zh) | 2017-10-24 |
Family
ID=60095866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610227661.7A Pending CN107291782A (zh) | 2016-04-13 | 2016-04-13 | 一种以地理位置纬度和经度数位上的数字组合为索引的高效地理位置信息检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107291782A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145218A (zh) * | 2007-10-24 | 2008-03-19 | 中山大学 | 一种道路自动编码系统 |
US20130132398A1 (en) * | 2011-11-22 | 2013-05-23 | Martin Pfeifle | Location Based Full Text Search |
CN105426372A (zh) * | 2014-09-17 | 2016-03-23 | 高德软件有限公司 | 一种电子地图数据制作及更新方法和装置 |
-
2016
- 2016-04-13 CN CN201610227661.7A patent/CN107291782A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145218A (zh) * | 2007-10-24 | 2008-03-19 | 中山大学 | 一种道路自动编码系统 |
US20130132398A1 (en) * | 2011-11-22 | 2013-05-23 | Martin Pfeifle | Location Based Full Text Search |
CN105426372A (zh) * | 2014-09-17 | 2016-03-23 | 高德软件有限公司 | 一种电子地图数据制作及更新方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108846013B (zh) | 一种基于geohash与Patricia Trie的空间关键词查询方法及装置 | |
CN102867004B (zh) | 一种地址匹配的方法及设备 | |
CN104469676A (zh) | 一种移动终端的定位方法及系统 | |
CN107153711A (zh) | 地理信息数据处理方法及装置 | |
CN103810194A (zh) | 一种地理编码方法、位置查询系统及方法 | |
CN107766433A (zh) | 一种基于Geo‑BTree的范围查询方法及装置 | |
WO2016095749A1 (zh) | 电子地图中查询空间对象和建立空间索引的方法及装置 | |
CN107167136A (zh) | 一种面向电子地图的位置推荐方法及系统 | |
CN102609530A (zh) | 一种分区域双树结构的空间数据库索引方法 | |
EP3144703B1 (en) | Generating trail network maps | |
CN102890719B (zh) | 一种对车牌号进行模糊搜索的方法及装置 | |
CN110765331A (zh) | 一种时空数据的检索方法及系统 | |
CN102567497A (zh) | 一种最匹配模糊轨迹问题的查询方法 | |
CN108776666B (zh) | 一种基于关键词倒排与Trie的空间关键词查询方法及装置 | |
CN102564432A (zh) | 道路估计设备和用于估计道路的方法 | |
CN105740964A (zh) | 一种城市路网数据组织与最短路径快速计算方法 | |
CN104346444A (zh) | 一种基于路网反空间关键字查询的最佳选址方法 | |
CN105067004A (zh) | 一种基于地形的路径搜索方法 | |
CN104794175A (zh) | 基于度量k最近对的景点和酒店最佳配对方法 | |
CN109885638B (zh) | 一种三维立体空间索引方法及系统 | |
CN105159925A (zh) | 一种数据库集群数据分配方法及系统 | |
KR101376687B1 (ko) | 쿼드트리를 활용한 격자지도 기반의 지형분석 방법 | |
CN107291782A (zh) | 一种以地理位置纬度和经度数位上的数字组合为索引的高效地理位置信息检索方法 | |
CN108776667B (zh) | 一种基于geohash与B-Tree的空间关键词查询方法及装置 | |
CN105808617A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20171024 |
|
WD01 | Invention patent application deemed withdrawn after publication |