CN110377681B - 一种数据查询的方法、装置、可读存储介质和电子设备 - Google Patents
一种数据查询的方法、装置、可读存储介质和电子设备 Download PDFInfo
- Publication number
- CN110377681B CN110377681B CN201910626618.1A CN201910626618A CN110377681B CN 110377681 B CN110377681 B CN 110377681B CN 201910626618 A CN201910626618 A CN 201910626618A CN 110377681 B CN110377681 B CN 110377681B
- Authority
- CN
- China
- Prior art keywords
- hash value
- geographical
- geographic
- target
- point
- 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 37
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012216 screening Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 241001137251 Corvidae Species 0.000 description 1
- 240000007651 Rubus glaucus Species 0.000 description 1
- 235000011034 Rubus glaucus Nutrition 0.000 description 1
- 235000009122 Rubus idaeus Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 235000015108 pies Nutrition 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Software Systems (AREA)
- Marketing (AREA)
- Probability & Statistics with Applications (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Quality & Reliability (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- Computational Linguistics (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Remote Sensing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了一种数据查询的方法、装置、可读存储介质和电子设备。本发明实施例通过获取任务数据,确定所述任务数据的起点和终点;确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。通过上述方法,经过一次查询即可确定所述点对对应的目标地理哈希值,然后根据所述目标地理哈希值确定所述点对对应的距离和/或配送时间,减少了查询次数,提高了查询效率。
Description
技术领域
本发明涉及数据处理领域,具体涉及一种数据查询的方法、装置、可读存储介质和电子设备。
背景技术
随着社会需求的发展,在物流、外卖等行业中对目标订单配送时间的准确性的要求越来越高,为了准确的估计出配送时间,在目标订单配送之前,需要确定目标订单起点和终点之间的距离。
现有技术中,根据目标订单数据的起点和终点的位置坐标确定该起点和终点之间的距离或配送时间,具体的,首先根据起点和终点的位置坐标对应的四个经纬度的值在数据库中查询四次经纬度索引列表,然后确定出查找到的经纬度的值对应的距离或配送时间,作为目标订单的配送距离或配送时间。但采用上述方法,需要经过四次查询,查询次数较多,查询效率较低。
综上所述,如何减少查询次数,提高查询效率是目前需要解决的问题。
发明内容
有鉴于此,本发明实施例提供了一种数据查询的方法、装置、可读存储介质和电子设备,能够减少查询次数,提高查询效率。
第一方面,本发明实施例提供了一种数据查询的方法,该方法包括:获取任务数据,确定所述任务数据的起点和终点;确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
优选地,确定所述起点和所述终点的点对对应的目标地理哈希值,具体包括:确定所述起点的位置坐标对应的第一地理哈希值,以及所述终点的位置坐标对应的第二地理哈希值,其中,所述第一地理哈希值与所述第二地理哈希值均为二进制序列;根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,其中,所述第三地理哈希值为二进制序列;将所述第三地理哈希值进行转换,得到所述目标地理哈希值,其中,所述目标地理哈希值为字符串序列。
优选地,所述根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,具体包括:将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
优选地,所述将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第二地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值,具体包括:将所述第一地理哈希值的二进制序列中的数值作为奇数位,所述第二地理哈希值的二进制序列中的数值作为偶数位,将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
优选地,所述将所述第三地理哈希值进行转换,确定所述目标地理哈希值,具体包括:将所述第三地理哈希值进行64进制转换,确定第四地理哈希值;根据基础64编码表,将所述第四地理哈希值转换为所述目标地理哈希值。
优选地,所述数据库中包括所述哈希值索引列表以及所述哈希值索引列表中的地理哈希值对应的距离和/或配送时间,所述在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值,具体包括:在所述哈希值索引列表中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值。
优选地,所述地理哈希值的目标字符序列与所述目标地理哈希值的目标字符序列相同,其中,所述目标字符序列为起始位至设定阈值的终止位的字符。
第二方面,本发明实施例提供了一种数据查询的装置,该装置包括:获取单元,用于获取任务数据,确定所述任务数据的起点和终点;确定单元,用于确定所述起点和所述终点的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;查询单元,用于在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;所述查询单元还用于,在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
第三方面,本发明实施例提供了一种计算机可读存储介质,其上存储计算机程序指令,所述计算机程序指令在被处理器执行时实现如第一方面或第一方面任一种可能中任一项所述的方法。
第四方面,本发明实施例提供了一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如下步骤:获取任务数据,确定所述任务数据的起点和终点;确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
优选地,所述处理器具体执行如下步骤:确定所述起点的位置坐标对应的第一地理哈希值,以及所述终点的位置坐标对应的第二地理哈希值,其中,所述第一地理哈希值与所述第二地理哈希值均为二进制序列;根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,其中,所述第三地理哈希值为二进制序列;将所述第三地理哈希值进行转换,得到所述目标地理哈希值,其中,所述目标地理哈希值为字符串序列。
优选地,所述处理器具体执行如下步骤:将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第二地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
优选地,所述处理器具体执行如下步骤:将所述第一地理哈希值的二进制序列中的数值作为奇数位,所述第二地理哈希值的二进制序列中的数值作为偶数位,将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
优选地,所述处理器具体执行如下步骤:将所述第三地理哈希值进行64进制转换,确定第四地理哈希值;根据基础64编码表,将所述第四地理哈希值转换为所述目标地理哈希值。
优选地,所述数据库中包括所述哈希值索引列表以及所述哈希值索引列表中的地理哈希值对应的距离和/或配送时间,所述处理器具体执行如下步骤:在所述哈希值索引列表中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值。
优选地,所述地理哈希值的目标字符序列与所述目标地理哈希值的目标字符序列相同,其中,所述目标字符序列为起始位至设定阈值的终止位的字符。
本发明实施例通过获取任务数据,确定所述任务数据的起点和终点;确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。通过上述方法,经过一次查询即可确定所述点对对应的目标地理哈希值,然后根据所述目标地理哈希值确定所述点对对应的距离和/或配送时间,减少了查询次数,提高了查询效率。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:
图1是本发明第一实施例的一种数据查询的方法流程图;
图2是本发明第一实施例的一种地图划分示意图;
图3是本发明第二实施例的应用场景图;
图4是本发明第三实施例的一种数据查询的装置示意图;
图5是本发明第四实施例的电子设备的示意图。
具体实施方式
以下基于实施例对本发明公开进行描述,但是本发明公开并不仅仅限于这些实施例。在下文对本发明公开的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明公开。为了避免混淆本发明公开的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
除非上下文明确要求,否则整个说明书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明公开的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明公开的描述中,除非另有说明,“多个”的含义是两个或两个以上。
通常为了准确的估计出配送时间,在目标订单配送之前,需要确定目标订单起点和终点之间的距离,现有技术中,根据目标订单数据的起点和终点的位置坐标确定该起点和终点之间的距离或配送时间,具体的,该起点和终点的位置坐标分别对应一对经纬度,即四个经纬度的值,根据上述四个经纬度的值在数据库中查询四次经纬度索引列表,所述经纬度索引列表中包含四列经纬度数值,在所述经纬度索引列表中确定与所述订单的点对相同或相近的经纬度的值,根据在所述经纬度索引列表中查找到的经纬度的值,在数据库中确定上述查找到的经纬度的值对应的距离或配送时间,作为目标订单的配送距离或配送时间。举例说明,假设目标订单的起点A的经纬度为(75.947,39.466),终点B的经纬度为(75.985,39.461),需要查询起点A和起点B之间的距离和/或配送时间,可以查询起点A的经纬度值以及起点A周边实际距离500米内的经纬度值,假设实际500米在经纬度上的显示为0.001,即查询起点A的经纬度(75.947,39.466)偏差(-0.001,0.001)的点经纬度值,查询终点B同理,本发明对其不做赘述。数据库中的经纬度索引以及不同的经纬度索引对应的距离和时间如下表1所示:
表1
在实际使用中,表1的数值为一千条、一万条或者十万条,具体根据实际情况确定,本发明表1仅仅是示例性说明。
首先根据起点的经度值75.947在表1中进行查询,即75.947周围偏差(-0.001,0.001)范围内的点都为符合条件的经度值,筛选之后的数据如表2所示:
表2
然后在通过起点的纬度值进行筛选,在实际使用中,表2的数值为多条,具体根据实际情况确定,本发明表2仅仅是示例性说明。继而根终点经度值和终点纬度值逐步筛选,最后确定出一条或多条索引,例如,确定出表3为最终筛选结果,具体表3如下:
表3
根据表3中的数据,确定起点A和起点B之间的距离为3443米,配送时间为826秒。
采用上述方法,需要经过四次查询,查询次数较多,查询效率较低。因此,综上所述,如何减少查询次数,提高查询效率是目前需要解决的问题。
本发明实施例中所述目标订单可以称为任务,本发明对其不做限定。
图1是本发明第一实施例的数据查询的方法流程图。如图1所示,具体包括如下步骤:
步骤S100、获取任务数据,确定所述任务数据的起点和终点。
例如,任务的起点为C,终点为D,起点C的经纬度值为(116.29513,40.04920),起点D的经纬度值为(116.248283,40.222012)。
步骤S101、确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对。
具体的,确定所述起点的位置坐标对应的第一地理哈希值,以及所述终点的位置坐标对应的第二地理哈希值,由于对地图通过网格线进行划分,假设,经度经过3次划分,分为8块,用3位二进制序列表示,分别为000、001、010、011、100、101、110和111,8个二进制序列,其中,0和1表示二进制数值,纬度经过2次划分,用2位二进制序列表示,分别为11、10、01和00,4个二进制序列,将一块地图划分为32块,具体如图2所示,每一块区域的经度的二进制序列和纬度的二进制序列进行交叉后,确定每一块区域的经纬度二进制序列,因此所述第一地理哈希值与所述第二地理哈希值均为二进制序列;根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,其中,将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值,所述第三地理哈希值为二进制序列,采用上述方式使坐标交叉,可以更加方便的查找出与第三地理哈希值的点对相近的点对的地理哈希值;将所述第三地理哈希值进行转换,确定所述目标地理哈希值,其中,所述目标地理哈希值为字符串序列。
举例说明,起点C的位置坐标(116.29513,40.04920)对应的第一地理哈希值为二进制编码,即11100 11101 00100 01101 11110,终点D的位置坐标(116.248283,40.222012)对应的第二地理哈希值为二进制编码,即11100 11101 00100 11000 11011,根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,例如,将所述第一地理哈希值的二进制序列中的数值作为奇数位,所述第二地理哈希值的二进制序列中的数值作为偶数位,11100 11101 00100 01101 11110和11100 11101 0010011000 11011生成的第三地理哈希值,然后将所述第三地理哈希值进行64进制转换,得到第四地理哈希值;具体的,根据基础64编码表,将所述第四地理哈希值转换为所述目标地理哈希值。例如,111111 000011 111100 110000 110000 011110 001011 111011,将上述第三地理哈希值每6位为一组进行64进制转换,得到64进制数值63 3 60 48 48 30 11 59,将二进制转换为64进制可以减小数据量,提高查询速度,根据上述64进制数值查询基础(Base)64编码表4:
表4
根据查询表4,确定63 3 60 48 48 30 11 59对应的字符串为D8wweL7,即目标地理哈希值为D8wweL7。
步骤S102、在数据库查找与所述目标地理哈希值相同或在设定范围内的地理哈希值。
具体的,所述数据库包括所述哈希值索引列表以及所述哈希值索引列表中的地理哈希值对应的距离和/或配送时间,其中,所述哈希值索引列表以及所述哈希值索引列表中的地理哈希值对应的距离和/或配送时间为预先设置的,具体的,确定两点之间的实际距离和/或配送时间,然后将两点之间的实际位置坐标转换为地理哈希值;所述地理哈希值的目标字符序列与所述目标地理哈希值的目标字符序列相同,所述目标字符序列为起始位至设定阈值的终止位的字符。
举例说明,所述哈希值索引列表如表5所示,其中,哈希值索引列表的第一列为地理哈希值,第二列为距离,第三列为配送时间,其中,第二列和第三列可以存在至少一列。具体表5如下:
表5
地理哈希值 | 距离/米 | 配送时间/秒 |
D8wweK8 | 2345 | 200 |
F8wweK8 | 3202 | 261 |
D8wweL7 | 3443 | 273 |
A4wweK8 | 1345 | 120 |
D8wweL6 | 3440 | 270 |
D8wweN1 | 3001 | 251 |
D8RweN1 | 3078 | 257 |
W82DeN1 | 4325 | 310 |
W62DeN1 | 4524 | 354 |
上述表5的数据仅仅是实例性的说明,具体根据实际使用情况确定。
根据目标地理哈希值D8wweL7在上述表5中进行查找,查找与目标地理哈希值D8wweL7相同或相近的地理哈希值,具体的,字符串的长度表现了点对精度,相同前缀字符越长表示两个点对的空间位置越接近,采用上述查询方法通过一次查询就可以查询到与目标地理哈希值D8wweL7相同或相近的地理哈希值,假设,查询到表6,即与目标地理哈希值D8wweL7相同的地理哈希值,具体表6如下:
表6
地理哈希值 | 距离/米 | 配送时间/秒 |
D8wweL7 | 3443 | 273 |
步骤S103、在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
举例说明,通过上述表6可以确定出任务起点C到终点D之间的距离为3443米,起点C到终点D之间的配送时间为273秒。
图3是本发明第二实施例的应用场景图,服务器查询到任务起点到终点间的距离或配送时间后,将任务分配给配送资源的终端,其中,所述配送资源的终端为多个,例如,配送资源的终端1、配送资源的终端2等。本发明实施例通过获取任务数据,确定所述任务数据的起点和终点;确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。通过上述方法,经过一次查询即可确定所述点对对应的目标地理哈希值,然后根据所述目标地理哈希值确定所述点对对应的距离和/或配送时间,减少了查询次数,提高了查询效率。
图4是本发明第三实施例的数据查询的装置示意图。如图4所示,本实施例的装置包括获取单元41、确定单元42和查询单元43。
其中,获取单元41,用于获取任务数据,确定所述任务数据的起点和终点;确定单元42,用于确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;查询单元43,用于根在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;所述查询单元43还用于,在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
进一步地,所述确定单元42具体用于:确定所述起点的位置坐标对应的第一地理哈希值,以及所述终点的位置坐标对应的第二地理哈希值,其中,所述第一地理哈希值与所述第二地理哈希值均为二进制序列;根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,其中,所述第三地理哈希值为二进制序列;将所述第三地理哈希值进行转换,得到所述目标地理哈希值,其中,所述目标地理哈希值为字符串序列。
进一步地,所述确定单元42具体用于:所述根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,具体包括:将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
进一步地,所述确定单元42具体用于:将所述第一地理哈希值的二进制序列中的数值作为奇数位,所述第二地理哈希值的二进制序列中的数值作为偶数位,将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
进一步地,所述确定单元42具体用于:将所述第三地理哈希值进行64进制转换,确定第四地理哈希值;根据基础64编码表,将所述第四地理哈希值转换为所述目标地理哈希值。
进一步地,所述数据库包括所述哈希值索引列表以及所述哈希值索引列表中的地理哈希值对应的距离和/或配送时间,所述查询单元具体43用于:在所述哈希值索引列表中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值。
进一步地,所述地理哈希值的目标字符序列与所述目标地理哈希值的目标字符序列相同,其中,所述目标字符序列为起始位至设定阈值的终止位的字符。
图5是本发明第四实施例的电子设备的示意图。在本实施例中,电子设备为服务器。应理解,还可以为其他电子设备,如树莓派。如图5所示,该电子设备:至少包括一个处理器501;以及,与至少一个处理器501通信连接的存储器502;以及,与扫描装置通信连接的通信组件503,通信组件503在处理器501的控制下接收和发送数据;其中,存储器502存储有可被至少一个处理器501执行的指令,指令被至少一个处理器501执行以实现:获取任务数据,确定所述任务数据的起点和终点;确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
进一步地,所述处理器具体执行如下步骤:确定所述起点的位置坐标对应的第一地理哈希值,以及所述终点的位置坐标对应的第二地理哈希值,其中,所述第一地理哈希值与所述第二地理哈希值均为二进制序列;根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,其中,所述第三地理哈希值为二进制序列;将所述第三地理哈希值进行转换,得到所述目标地理哈希值,其中,所述目标地理哈希值为字符串序列。
进一步地,所述处理器具体执行如下步骤:将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
进一步地,所述处理器具体执行如下步骤:将所述第一地理哈希值的二进制序列中的数值作为奇数位,所述第二地理哈希值的二进制序列中的数值作为偶数位,将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
进一步地,所述处理器具体执行如下步骤:将所述第三地理哈希值进行64进制转换,确定第四地理哈希值;根据基础64编码表,将所述第四地理哈希值转换为所述目标地理哈希值。
进一步地,所述数据库包括所述哈希值索引列表以及所述哈希值索引列表中的地理哈希值对应的距离和/或配送时间,所述处理器具体执行如下步骤:在所述哈希值索引列表中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值。
进一步地,所述地理哈希值的目标字符序列与所述目标地理哈希值的目标字符序列相同,其中,所述目标字符序列为起始位至设定阈值的终止位的字符。
具体地,该电子设备包括:一个或多个处理器501以及存储器502,图5中以一个处理器501为例。处理器501、存储器502可以通过总线或者其他方式连接,图5中以通过总线连接为例。存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。处理器501通过运行存储在存储器502中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述数据查询的方法。
存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储选项列表等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器502可选包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器502中,当被一个或者多个处理器501执行时,执行上述任意方法实施例中的数据查询的方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本发明的第五实施例涉及一种非易失性存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (16)
1.一种数据查询的方法,其特征在于,该方法包括:
获取任务数据,确定所述任务数据的起点和终点;
确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;
在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;
在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
2.如权利要求1所述的方法,其特征在于,所述确定所述起点和所述终点的点对对应的目标地理哈希值,具体包括:
确定所述起点的位置坐标对应的第一地理哈希值,以及所述终点的位置坐标对应的第二地理哈希值,其中,所述第一地理哈希值与所述第二地理哈希值均为二进制序列;
根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,其中,所述第三地理哈希值为二进制序列;
将所述第三地理哈希值进行转换,得到所述目标地理哈希值,其中,所述目标地理哈希值为字符串序列。
3.如权利要求2所述的方法,其特征在于,所述根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,具体包括:
将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
4.如权利要求3所述的方法,其特征在于,所述将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第二地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值,具体包括:
将所述第一地理哈希值的二进制序列中的数值作为奇数位,所述第二地理哈希值的二进制序列中的数值作为偶数位,将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
5.如权利要求2所述的方法,其特征在于,所述将所述第三地理哈希值进行转换,确定所述目标地理哈希值,具体包括:
将所述第三地理哈希值进行64进制转换,确定第四地理哈希值;
根据基础64编码表,将所述第四地理哈希值转换为所述目标地理哈希值。
6.如权利要求1所述的方法,其特征在于,所述数据库中包括哈希值索引列表以及所述哈希值索引列表中的地理哈希值对应的距离和/或配送时间,所述在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值,具体包括:
在所述哈希值索引列表中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值。
7.如权利要求1所述的方法,其特征在于,所述地理哈希值的目标字符序列与所述目标地理哈希值的目标字符序列相同,其中,所述目标字符序列为起始位至设定阈值的终止位的字符。
8.一种数据查询的装置,其特征在于,该装置包括:
获取单元,用于获取任务数据,确定所述任务数据的起点和终点;
确定单元,用于确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;
查询单元,用于在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;
所述查询单元还用于,在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
9.一种计算机可读存储介质,其上存储计算机程序指令,其特征在于,所述计算机程序指令在被处理器执行时实现如权利要求1-7中任一项所述的方法。
10.一种电子设备,包括存储器和处理器,其特征在于,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如下步骤:
获取任务数据,确定所述任务数据的起点和终点;
根确定所述起点和所述终点组成的点对对应的目标地理哈希值,所述目标地理哈希值用于唯一表征所述点对;
在数据库中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值;
在所述数据库中,根据所述地理哈希值确定所述点对对应的距离和/或配送时间。
11.如权利要求10所述的电子设备,其特征在于,所述处理器具体执行如下步骤:
确定所述起点的位置坐标对应的第一地理哈希值,以及所述终点的位置坐标对应的第二地理哈希值,其中,所述第一地理哈希值与所述第二地理哈希值均为二进制序列;
根据所述第一地理哈希值和所述第二地理哈希值生成所述点对对应的第三地理哈希值,其中,所述第三地理哈希值为二进制序列;
将所述第三地理哈希值进行转换,得到所述目标地理哈希值,其中,所述目标地理哈希值为字符串序列。
12.如权利要求11所述的电子设备,其特征在于,所述处理器具体执行如下步骤:
将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第二地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
13.如权利要求12所述的电子设备,其特征在于,所述处理器具体执行如下步骤:
将所述第一地理哈希值的二进制序列中的数值作为奇数位,所述第二地理哈希值的二进制序列中的数值作为偶数位,将所述第二地理哈希值的二进制序列中的数值按顺序插入所述第一地理哈希值的二进制序列中,生成所述点对对应的第三地理哈希值。
14.如权利要求11所述的电子设备,其特征在于,所述处理器具体执行如下步骤:
将所述第三地理哈希值进行64进制转换,确定第四地理哈希值;
根据基础64编码表,将所述第四地理哈希值转换为所述目标地理哈希值。
15.如权利要求10所述的电子设备,其特征在于,所述数据库中包括哈希值索引列表以及所述哈希值索引列表中的地理哈希值对应的距离和/或配送时间,所述处理器具体执行如下步骤:在所述哈希值索引列表中查找与所述目标地理哈希值相同或在设定范围内的地理哈希值。
16.如权利要求10所述的电子设备,其特征在于,所述地理哈希值的目标字符序列与所述目标地理哈希值的目标字符序列相同,其中,所述目标字符序列为起始位至设定阈值的终止位的字符。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910626618.1A CN110377681B (zh) | 2019-07-11 | 2019-07-11 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910626618.1A CN110377681B (zh) | 2019-07-11 | 2019-07-11 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110377681A CN110377681A (zh) | 2019-10-25 |
CN110377681B true CN110377681B (zh) | 2021-02-12 |
Family
ID=68252736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910626618.1A Active CN110377681B (zh) | 2019-07-11 | 2019-07-11 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110377681B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111324825B (zh) * | 2020-01-20 | 2024-04-30 | 北京百度网讯科技有限公司 | 查找目标人员的方法及装置 |
CN111460237B (zh) * | 2020-03-31 | 2024-02-27 | 拉扎斯网络科技(上海)有限公司 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
CN113902368A (zh) * | 2021-10-12 | 2022-01-07 | 上海寻梦信息技术有限公司 | 信息处理方法、装置、设备及存储介质 |
CN117573781A (zh) * | 2024-01-17 | 2024-02-20 | 成都小步创想慧联科技有限公司 | 一种基于哈希算法的地图多层级数据展示方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446179A (zh) * | 2010-10-09 | 2012-05-09 | Tcl集团股份有限公司 | 公交线路查询方法 |
JPWO2013129580A1 (ja) * | 2012-02-28 | 2015-07-30 | 公立大学法人大阪府立大学 | 近似最近傍探索装置、近似最近傍探索方法およびそのプログラム |
CN104978420B (zh) * | 2015-06-30 | 2018-09-07 | 百度在线网络技术(北京)有限公司 | 行车路线匹配方法和装置 |
CN105843918B (zh) * | 2016-03-25 | 2020-04-07 | 前锦网络信息技术(上海)有限公司 | 一种从职位数据库中快速筛选职位的方法 |
CN106779163B (zh) * | 2016-11-18 | 2020-06-19 | 华南理工大学 | 一种基于智能搜索的定制公交线网优化方法 |
US10129705B1 (en) * | 2017-12-11 | 2018-11-13 | Facebook, Inc. | Location prediction using wireless signals on online social networks |
-
2019
- 2019-07-11 CN CN201910626618.1A patent/CN110377681B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110377681A (zh) | 2019-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110377681B (zh) | 一种数据查询的方法、装置、可读存储介质和电子设备 | |
CN103383682B (zh) | 一种地理编码方法、位置查询系统及方法 | |
CN105426372B (zh) | 一种电子地图数据制作及更新方法和装置 | |
CN106936887B (zh) | 一种地理位置定位方法及装置 | |
CN104765749A (zh) | 一种数据存储方法及装置 | |
CN111460237B (zh) | 一种数据查询的方法、装置、可读存储介质和电子设备 | |
CN108108436B (zh) | 数据存储方法、装置、存储介质及电子设备 | |
WO2019201135A1 (zh) | 基于全局路网特征的数据匹配方法、装置及存储介质 | |
CN105808661A (zh) | 一种数据查询的方法及装置 | |
CN113706592A (zh) | 一种定位信息的修正方法、装置、电子设备和存储介质 | |
CN110909260A (zh) | 车辆显示方法、装置、计算机可读存储介质和计算机设备 | |
CN112039861B (zh) | 风险识别方法、装置、电子设备和计算机可读存储介质 | |
CN104867402A (zh) | 一种离线的逆地理编码的方法及其装置和终端设备 | |
CN110427574B (zh) | 路线相似度确定方法、装置、设备和介质 | |
CN109377284B (zh) | 用于推送信息的方法和电子设备 | |
CN105138527A (zh) | 一种数据分类回归方法及装置 | |
CN115661852B (zh) | 地图分割方法、装置、计算机可读存储介质及处理器 | |
CN115190587A (zh) | Wifi位置确定方法、装置、电子设备及存储介质 | |
CN109344209A (zh) | 一种基于大数据的地址测试方法及终端设备 | |
CN106998371B (zh) | 可信ip信息的判定方法、ip信息库的更新方法及装置 | |
CN114553819B (zh) | 一种IPv6地址识别方法及装置 | |
CN111737237B (zh) | 缺失里程桩数据生成方法、装置、设备及存储介质 | |
CN113129438B (zh) | 一种车道线的精度提升方法、装置及可读存储介质 | |
CN109829025B (zh) | 线路校正方法及装置、电子设备、存储介质 | |
CN106997355B (zh) | 基于Mongodb获取距离、确定距离最短线段的方法及装置 |
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 |