CN111460237A - 一种数据查询的方法、装置、可读存储介质和电子设备 - Google Patents
一种数据查询的方法、装置、可读存储介质和电子设备 Download PDFInfo
- Publication number
- CN111460237A CN111460237A CN202010247282.0A CN202010247282A CN111460237A CN 111460237 A CN111460237 A CN 111460237A CN 202010247282 A CN202010247282 A CN 202010247282A CN 111460237 A CN111460237 A CN 111460237A
- Authority
- CN
- China
- Prior art keywords
- target
- point
- determining
- geographic
- processor
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000004044 response Effects 0.000 claims description 15
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 230000004807 localization Effects 0.000 claims 1
- 238000004590 computer program Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000013500 data storage Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 241001137251 Corvidae Species 0.000 description 2
- 240000007651 Rubus glaucus Species 0.000 description 2
- 235000011034 Rubus glaucus Nutrition 0.000 description 2
- 235000009122 Rubus idaeus Nutrition 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 235000015108 pies Nutrition 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 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/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- 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/903—Querying
- G06F16/9032—Query formulation
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Mathematical Physics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种数据查询的方法、装置、可读存储介质和电子设备。本发明实施例通过获取所述任务数据的起点和终点;确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。通过上述方法,首先通过点对的目标地理哈希值进行查询,确定出所述目标地理哈希值对应的多个关键字符串,然后根据目标关键字符串在所述多个关键字符串中查询,减小了查询范围,进而减少了查询时间,提高了查询效率。
Description
技术领域
本发明涉及数据处理领域,具体涉及一种数据查询的方法、装置、可读存储介质和电子设备。
背景技术
随着社会需求的发展,在物流、外卖等行业中对目标任务配送时间的准确性的要求越来越高,为了准确的估计出配送时间,在目标任务配送之前,需要确定目标任务起点和终点之间的距离。
现有技术中,根据目标任务数据的起点和终点的位置坐标确定该起点和终点之间的距离或配送时间,具体的,首先根据起点和终点的位置坐标对应的四个经纬度的值确定出关键(key)字符串,然后根据key字符串在预先存储的数据库中查找该key字符串,进而确定该key字符串对应的距离,但采用上述方法,需要在大量的key字符串中查询,查询时间长,且查询效率较低。
综上所述,如何减少查询时间,提高查询效率是目前需要解决的问题。
发明内容
有鉴于此,本发明实施例提供了一种数据查询的方法、装置、可读存储介质和电子设备,能够减少查询时间,提高查询效率。
第一方面,本发明实施例提供了一种数据查询的方法,该方法包括:接收来自目标配送资源终端的任务数据;通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
结合第一方面,本发明实施例在第一方面的第一种实现方式中,所述通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离,具体包括:通过所述至少一个处理器在数据库中查找所述目标地理哈希值;响应于在所述数据库中查找到与所述目标地理哈希值相同的地理哈希值,确定所述数据库中所述地理哈希值对应的多个关键字符串;通过所述至少一个处理器在所述多个关键字符串中查找所述目标关键字符串;响应于在所述多个关键字符中查找到与所述目标关键字符串相同的关键字符串,根据所述关键字符串确定所述目标点对对应的距离。
结合第一方面,本发明实施例在第一方面的第二种实现方式中,所述通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,具体包括:确定所述起点的位置坐标对应的第一经度值与第一纬度值,以及所述终点的位置坐标对应的第二经度值与第二纬度值;将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数;根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串。
结合第一方面的第二种实现方式,本发明实施例在第一方面的第三种实现方式中,所述将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数,具体包括:将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别乘以设定数值,取整后生成所述设定位数的整数。
结合第一方面的第二种实现方式,本发明实施例在第一方面的第四种实现方式中,所述根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串,具体包括:将所述四个设定位数的整数分别转换为四个8位元组类型的数据;将所述四个8位元组类型的数据案子设定顺序进行串联,生成8位元组类型的目标关键字符。
结合第一方面,本发明实施例在第一方面的第五种实现方式中,所述通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,具体包括:通过所述至少一个处理器将所述目标关键字符串通过设定算法生成所述目标地理哈希值。
结合第一方面,本发明实施例在第一方面的第六种实现方式中,所述数据库中预先存储多对点对的距离,以及每个所述点对对应的关键字符串,以及所述关键字符串对应的地理哈希值。
结合第一方面,本发明实施例在第一方面的第七种实现方式中,该方法还包括:通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;通过所述至少一个处理器根据所述关键字符串确定地理哈希值;将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,存储到所述数据库中。
结合第一方面的第二种实现方式,本发明实施例在第一方面的第八种实现方式中,该方法还包括:响应于在所述多个关键字符中未查找到与所述目标关键字符串相同的关键字符串,确定所述起点和/或所述终点在地理网格中的至少一个实际定位点;根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格;根据所述至少一个相邻地理网格的经纬度生成新的目标关键字符串在所述多个关键字符串中进行查询。
结合第一方面的第八种实现方式,本发明实施例在第一方面的第九种实现方式中,所述根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格,具体包括:根据所述至少一个实际定位点所在的地理网格的两条对边中心点的连线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格任一边相邻的至少一个地理网格。
结合第一方面的第八种实现方式,本发明实施例在第一方面的第十种实现方式中,所述根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格,具体包括:根据所述至少一个实际定位点所在的地理网格的两条对角线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格相邻的地理网格。
第二方面,本发明实施例提供了一种数据存储的方法,该方法包括:通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;通过所述至少一个处理器根据所述关键字符串确定地理哈希值;将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
第三方面,本发明实施例提供了一种数据查询的装置,该装置包括:第一接收单元,用于接收来自目标配送资源终端的任务数据;第一获取单元,用于通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;第一确定单元,用于通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;所述第一确定单元,还用于通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;所述第一确定单元,还用于通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
第四方面,本发明实施例提供了一种数据存储的装置,该装置包括:第二获取单元,用于通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;第二确定单元,用于通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;所述第二确定单元,还用于通过所述至少一个处理器根据所述关键字符串确定地理哈希值;存储单元,用于将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
第五方面,本发明实施例提供了一种计算机可读存储介质,其上存储计算机程序指令,所述计算机程序指令在被处理器执行时实现如第一方面、第一方面任一种实现方式、第二方面、第二方面任一种实现方式中任一项所述的方法。
第六方面,本发明实施例提供了一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如下步骤:接收来自目标配送资源终端的任务数据;通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
结合第六方面,本发明实施例在第六方面的第一种实现方式中,所述处理器具体执行如下步骤:通过所述至少一个处理器在数据库中查找所述目标地理哈希值;响应于在所述数据库中查找到与所述目标地理哈希值相同的地理哈希值,确定所述数据库中所述地理哈希值对应的多个关键字符串;通过所述至少一个处理器在所述多个关键字符串中查找所述目标关键字符串;响应于在所述多个关键字符中查找到与所述目标关键字符串相同的关键字符串,根据所述关键字符串确定所述目标点对对应的距离。
结合第六方面,本发明实施例在第一方面的第二种实现方式中,所述处理器具体执行如下步骤:确定所述起点的位置坐标对应的第一经度值与第一纬度值,以及所述终点的位置坐标对应的第二经度值与第二纬度值;将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数;根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串。
结合第六方面的第二种实现方式,本发明实施例在第六方面的第三种实现方式中,所述处理器具体执行如下步骤:将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别乘以设定数值,取整后生成所述设定位数的整数。
结合第六方面的第二种实现方式,本发明实施例在第六方面的第四种实现方式中,所述处理器具体执行如下步骤:将所述四个设定位数的整数分别转换为四个8位元组类型的数据;将所述四个8位元组类型的数据案子设定顺序进行串联,生成8位元组类型的目标关键字符。
结合第六方面,本发明实施例在第六方面的第五种实现方式中,所述处理器具体执行如下步骤:通过所述至少一个处理器将所述目标关键字符串通过设定算法生成所述目标地理哈希值。
结合第六方面,本发明实施例在第六方面的第六种实现方式中,所述数据库中预先存储多对点对的距离,以及每个所述点对对应的关键字符串,以及所述关键字符串对应的地理哈希值。
结合第六方面,本发明实施例在第六方面的第七种实现方式中,所述处理器还执行如下步骤:通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;通过所述至少一个处理器根据所述关键字符串确定地理哈希值;将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,存储到所述数据库中。
结合第六方面的第二种实现方式,本发明实施例在第六方面的第八种实现方式中,所述处理器还执行如下步骤:响应于在所述多个关键字符中未查找到与所述目标关键字符串相同的关键字符串,确定所述起点和/或所述终点在地理网格中的至少一个实际定位点;根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格;根据所述至少一个相邻地理网格的经纬度生成新的目标关键字符串在所述多个关键字符串中进行查询。
结合第六方面的第八种实现方式,本发明实施例在第六方面的第九种实现方式中,所述处理器具体执行如下步骤:根据所述至少一个实际定位点所在的地理网格的两条对边中心点的连线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格任一边相邻的至少一个地理网格。
结合第六方面的第八种实现方式,本发明实施例在第六方面的第十种实现方式中,所述处理器具体执行如下步骤:根据所述至少一个实际定位点所在的地理网格的两条对角线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格相邻的地理网格。
第七方面,本发明实施例提供了一种电子设备,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如下步骤:通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;通过所述至少一个处理器根据所述关键字符串确定地理哈希值;将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
本发明实施例通过获取所述任务数据的起点和终点;确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。通过上述方法,首先通过点对的目标地理哈希值进行查询,确定出所述目标地理哈希值对应的多个关键字符串,然后根据目标关键字符串在所述多个关键字符串中查询,减小了查询范围,进而减少了查询时间,提高了查询效率。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:
图1是本发明的一种数据查询的方法流程图;
图2是本发明的另一种数据查询的方法流程图;
图3是本发明的一种数据存储的方法流程图;
图4是本发明的一种地图划分示意图;
图5是本发明的另一种地图划分示意图;
图6是本发明的一种应用场景图;
图7是本发明的一种数据查询的装置示意图;
图8是本发明的一种数据存储的装置示意图;
图9是本发明的一种电子设备的示意图;
图10是本发明的另一种电子设备的示意图。
具体实施方式
以下基于实施例对本发明公开进行描述,但是本发明公开并不仅仅限于这些实施例。在下文对本发明公开的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明公开。为了避免混淆本发明公开的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
除非上下文明确要求,否则整个申请文件中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明公开的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明公开的描述中,除非另有说明,“多个”的含义是两个或两个以上。
通常当需要确定目标任务的起点和终点的位置坐标之间的距离时,可以进行实时计算,但是实时计算需要消耗大量的线上资源,并且较长的计算时间,现有技术中,为了减小线上资源的消耗,并减少计算时间,采用关键(key)字符串-距离数值(value)的方式进行查询,具体的,根据起点的位置坐标对应的两个经纬度的值和终点的位置坐标对应的两个经纬度的值,确定出关键(key)字符串,然后根据key字符串在预先存储的数据库中查找该key字符串,进而确定该key字符串对应的距离,但采用上述方法,需要在大量的key字符串中查询,查询时间长,且查询效率较低。
图1是本发明第一实施例的数据查询的方法流程图。如图1所示,具体包括如下步骤:
步骤S100、接收来自目标配送资源终端的任务数据。
本发明实施例中,所述目标配送资源可以为骑手,也可以为自动配送装置,所述目标配送资源终端可以为手机、平板等脑等可以获取任务数据的设备;本发明实施例中,所述任务数据也可以在客户终端或者其它带有定位功能的系统中获取的,本发明实施例对其不做限定。
步骤S101、通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点。
具体的,获取所述任务的起点经纬度数据以及终点经纬度数据,假设,起点为A点,对应的经纬度数据分别为(116.295132,40.049253),终点为B点,对应的经纬度数据分别为(116.248283,40.222012)。
步骤S102、通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对。
本发明实施例中,确定所述起点的位置坐标对应的第一经度值与第一纬度值,以及所述终点的位置坐标对应的第二经度值与第二纬度值;将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数;根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串。
具体的,将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别乘以设定数值,取整后生成所述设定位数的整数。举例说明,假设第一经度值为116.295132,第一纬度值为40.049253,第二经度值为116.248283,第二纬度值为40.222012,将上述四个数值分别乘以10000,本发明实施例中,当乘以的设定数据为10000时,该起点和终点所在的网格的实际大小为10米×10米,在后续查询过程中,先在10米×10米的网格或该网格周围同样大小的网格中进行查询;将上述四个经纬度的值乘以10000后分别为1162951.32、400492.53、1162482.83和402220.12,将上述四个数据通过四舍五入的处理方式取整,确定出四个整数分别为1162951、400493、1162483和402220;将所述四个设定位数的整数分别转换为四个8位元组(byte)类型的数据,然后将所述四个8位元组类型的数据案子设定顺序进行串联,生成一串8位元组类型的目标关键字符;由于byte类型的数据为8位有符号的,以二进制补码表示的整数,最小值为-128,最大值为127,具体生成的8位元组类型的目标关键字符,例如,01010101,10101010,11110000,00001111等,本发明实施例不做具体限定,根据实际使用情况确定;假设起点对应的经纬度乘以设定数值并取整后的整数转换为byte类型后对应的数值为01010101,10101010,终点对应的经纬度乘以设定数值并取整后的整数转换为byte类型后对应的数值为11110000,00001111,将上述01010101,10101010,11110000,00001111进行串联,生成一个字符串01010101101010101111000000001111,该字符串即目标关键字符串。
在一种可能的实现方式中,当上述10米×10米的网格以及该网格周围的网格查询失败时,需扩大查询范围时,例如在100米×100米的网格中查询时,需要减小所述第一经度值、第一纬度值、第二经度值与第二纬度值的精度,将上述四个数据分别乘以1000,将起点和终点所在的网格的确定为100米×100米,由于在后续处理中需要进行数据类型转换,因此,确定100米×100米精度后,在乘以10,保证数据长度的统一,后续具体的数据处理方式与上述相同,本发明实施例对其不做赘述。
步骤103、通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串。
本发明实施例中,通过所述至少一个处理器将所述目标关键字符串通过设定算法生成所述目标地理哈希值,具体的,所述设定算法可以为md5,也可以为其它算法,本发明实施例对其不做限定。
假设,所述目标字符串通过md5转换生成的目标地理哈希值为D8wweL7,该哈希值仅仅为示例性说明,具体的哈希值的表示方式根据实际情况确定,本发明实施例对其不做限定。
本发明实施例中,由于目标关键字符串是通过经纬度乘以设定数据后,四舍五入取整确定的,因此存在多个点对通过一个相同地理哈希值表示,假设,一个地理哈希值可以表示50个点对,本发明实施例对其不做限定。
步骤104、通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
具体的,通过所述至少一个处理器在数据库中查找所述目标地理哈希值;响应于在所述数据库中查找到与所述目标地理哈希值相同的地理哈希值,确定所述数据库中所述地理哈希值对应的多个关键字符串;通过所述至少一个处理器在所述多个关键字符串中查找所述目标关键字符串;响应于在所述多个关键字符中查找到与所述目标关键字符串相同的关键字符串,根据所述关键字符串确定所述目标点对对应的距离。
举例说明,假设数据库中的地理哈希值、关键字符串以及距离的对应关系如下表1所示:
表1
上述表1仅仅为示意性说明,具体数值,以及每个地理哈希值对应的关键字符串的个数都根据实际情况确定。
假设,确定出目标地理哈希值为F8wweK8,在数据库存储的表1中的地理哈希值查询是否存在与目标地理哈希值相同的地理哈希值,当查询到与目标地理哈希值相同的地理哈希值时,确定该地理哈希值对应的关键字符串,如上表1所示地理哈希值F8wweK8对应的关键字符串有5个,进而在5个关键字符串中查询是否存在于目标关键字符串相同的关键字符串,假设目标字符串为01010101101010101111000011101111,表1中F8wweK8对应的关键字符串有5个关键字符串中存在与目标字符串相同的关键字符串,确定该关键字符串对应的距离,查询表1确定起点与终点间的距离为1345米。
图2是本发明第一实施例的另一种数据查询的方法流程图。如图2所示,在上述步骤S100之前,该方法还包括如下步骤:
步骤S105、所述至少一个处理器通过历史数据生成数据库。
具体的,所述数据库中预先存储多对点对的距离,以及每个所述点对对应的关键字符串,以及所述关键字符串对应的地理哈希值;所述数据库在存储上述数据时可以通过列表的形式进行存储,本发明实施例对其不做限定。具体的列表形式如表1所示。
图3是本发明第二实施例的一种数据存储的方法流程图,如图3所示,具体包括如下步骤:
步骤S300、通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离。
步骤S301、通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;
步骤S302、通过所述至少一个处理器根据所述关键字符串确定地理哈希值;
步骤S303、将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
在一个具体实施例中,若在所述多个关键字符中未查找到与所述目标关键字符串相同的关键字符串,确定所述起点和/或所述终点在地理网格中的至少一个实际定位点;根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格;根据所述至少一个相邻地理网格的经纬度生成新的目标关键字符串在所述多个关键字符串中进行查询。
本发明实施例中,所述根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格,具体包括两种方式:
方式一、根据所述至少一个实际定位点所在的地理网格的两条对边中心点的连线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格任一边相邻的至少一个地理网格。
举例说明,假设起点为A点与终点为B点的目标关键字符串为01010101101010101111000000001111,未在数据库中查找到该目标关键字符串,则确定所述起点和/或所述终点在地理网格中的至少一个实际定位点,以起点A为例,图4(1)所示,确定起点A位于网格5中的右下方,将所述网格5通过图4(2)所示的方式进行四等分,确定所述起点A所在小网格相邻的三个网格,分别为网格6、网格8和网格9,在所述网格6、网格8和网格9中进行扩展查询,本发明实施例中,在进行扩展查询时,采用网格6、网格8或网格9的经纬度(具体的,可以是每个网格中心点的经纬度,也可以是每个网格中任一点的经纬度,本发明实施例不做限定)代替起点A的经纬度,生成新的目标关键字符串,继续在数据库中对应的多个关键字符串中继续查询;若所述新的目标关键字符串仍旧无法查找到,将所述终点B采用相同的方式进行扩展查询,本发明实施例对其不再赘述;若仍旧无法查询到,扩大网格的精度,进行下一步扩展查询,例如,在100米×100米的网格中进行查询,若100米×100米的网格中没有查询到,扩展到100米×100米的网格周围的网格中继续查询,以此类推,本发明实施例对其不做限定。
方式二、根据所述至少一个实际定位点所在的地理网格的两条对角线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格相邻的地理网格。
举例说明,假设起点为A点与终点为B点的目标关键字符串未在数据库中查找到该目标关键字符串,则确定所述起点和/或所述终点在地理网格中的至少一个实际定位点,以起点A为例,图5(1)所示,确定起点A位于网格5中的右下方,将所述网格5通过图5(2)所示的方式进行四等分,确定所述起点A所在小网格相邻的一个网格8,在所述网格6、网格8和网格9中进行扩展查询,后续的处理方式与上一个例子中的处理方式类似,本发明实施例对其不再赘述。
下面通过一个具体实施例,对本发明的数据查询的方法进行详细说明,假设出租车调度平台需要对出租车进行调度时,需要精确的获取出租车的起点到终点(乘客上车地点)的距离,用于计算出租车到达乘客上车地点所需要的时间。本发明实施例中,具体的,首先获取起点和终点的位置信息,其中,所述起点和终点的位置信息可以为从第三方平台获取到的经纬度数据,根据所述起点和终点的经纬度数据生成目标关键字符串,以及目标地理哈希值,通过上述目标地理哈希值和目标关键字符串确定出起点和终点间的距离,进而确定起点到终点需要的时间。
在一种可能的实现方式中,本发明的数据查询的方法还可以用于无人驾驶、步行导航等方面,具体的处理方式和上述方式相同,本发明对其不做赘述。
图6是本发明第三实施例的应用场景图,包括服务器和目标配送资源终端,其中,所述服务器还可以称为平台、系统等,目标配送资源终端可以为手机、平板等可以定位获取目标任务起点或终点的设备,所述服务器为至少一个,所述目标配送资源终端的数量为多个,服务器接收来自目标配送资源终端的任务数据;通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。通过上述方法,首先通过点对的目标地理哈希值进行查询,确定出所述目标地理哈希值对应的多个关键字符串,然后根据目标关键字符串在所述多个关键字符串中查询,减小了查询范围,进而减少了查询时间,提高了查询效率。
图7是本发明第四实施例的数据查询的装置示意图。如图7所示,本实施例的装置包括接收单元71、第一获取单元72和第一确定单元73。
其中,所述接收单元71,用于接收来自目标配送资源终端的任务数据;所述第一获取单元72,用于通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;所述第一确定单元73,用于通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;所述第一确定单元73,还用于通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;所述第一确定单元73,还用于通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
进一步地,所述第一确定单元具体用于:通过所述至少一个处理器在数据库中查找所述目标地理哈希值;响应于在所述数据库中查找到与所述目标地理哈希值相同的地理哈希值,确定所述数据库中所述地理哈希值对应的多个关键字符串;通过所述至少一个处理器在所述多个关键字符串中查找所述目标关键字符串;响应于在所述多个关键字符中查找到与所述目标关键字符串相同的关键字符串,根据所述关键字符串确定所述目标点对对应的距离。
进一步地,所述第一确定单元具体用于:确定所述起点的位置坐标对应的第一经度值与第一纬度值,以及所述终点的位置坐标对应的第二经度值与第二纬度值;
将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数;
根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串。
进一步地,所述第一确定单元具体还用于:将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别乘以设定数值,取整后生成所述设定位数的整数。
进一步地,所述第一确定单元具体还用于:将所述四个设定位数的整数分别转换为四个8位元组类型的数据;
将所述四个8位元组类型的数据案子设定顺序进行串联,生成8位元组类型的目标关键字符。
进一步地,所述第一确定单元具体还用于:通过所述至少一个处理器将所述目标关键字符串通过设定算法生成所述目标地理哈希值。
进一步地,所述数据库中预先存储多对点对的距离,以及每个所述点对对应的关键字符串,以及所述关键字符串对应的地理哈希值。
进一步地,所述获取单元还用于通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;所述第一确定单元还用于通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;所述第一确定单元还用于通过所述至少一个处理器根据所述关键字符串确定地理哈希值;所述存储单元还用于,将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
进一步地,该装置还包括,更新单元:响应于在所述多个关键字符中未查找到与所述目标关键字符串相同的关键字符串,确定所述起点和/或所述终点在地理网格中的至少一个实际定位点;根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格;根据所述至少一个相邻地理网格的经纬度生成新的目标关键字符串在所述多个关键字符串中进行查询。
进一步地,所述更新单元具体用于:根据所述至少一个实际定位点所在的地理网格的两条对边中心点的连线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格任一边相邻的至少一个地理网格。
进一步地,所述更新单元具体还用于:根据所述至少一个实际定位点所在的地理网格的两条对角线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格相邻的地理网格。
图8是本发明第五实施例的数据查询的装置示意图。如图8所示,本实施例的装置包括第二获取单元81、第二确定单元82和存储单元83。其中,所述第二获取单元81,用于通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;所述第二确定单元82,用于通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;所述第二确定单元82,还用于通过所述至少一个处理器根据所述关键字符串确定地理哈希值;所述存储单元83,用于将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
图9是本发明第六实施例的电子设备的示意图。在本实施例中,电子设备为服务器。应理解,还可以为其他电子设备,如树莓派。如图9所示,该电子设备:至少包括一个处理器901;以及,与至少一个处理器901通信连接的存储器902;以及,与扫描装置通信连接的通信组件903,通信组件903在处理器901的控制下接收和发送数据;其中,存储器902存储有可被至少一个处理器901执行的指令,指令被至少一个处理器901执行以实现:接收来自目标配送资源终端的任务数据;通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
进一步地,所述处理器具体执行如下步骤:通过所述至少一个处理器在数据库中查找所述目标地理哈希值;响应于在所述数据库中查找到与所述目标地理哈希值相同的地理哈希值,确定所述数据库中所述地理哈希值对应的多个关键字符串;通过所述至少一个处理器在所述多个关键字符串中查找所述目标关键字符串;响应于在所述多个关键字符中查找到与所述目标关键字符串相同的关键字符串,根据所述关键字符串确定所述目标点对对应的距离。
进一步地,所述处理器具体执行如下步骤:确定所述起点的位置坐标对应的第一经度值与第一纬度值,以及所述终点的位置坐标对应的第二经度值与第二纬度值;将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数;根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串。
进一步地,所述处理器具体执行如下步骤:将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别乘以设定数值,取整后生成所述设定位数的整数。
进一步地,所述处理器具体执行如下步骤:将所述四个设定位数的整数分别转换为四个8位元组类型的数据;将所述四个8位元组类型的数据案子设定顺序进行串联,生成8位元组类型的目标关键字符。
进一步地,所述处理器具体执行如下步骤:通过所述至少一个处理器将所述目标关键字符串通过设定算法生成所述目标地理哈希值。
进一步地,所述数据库中预先存储多对点对的距离,以及每个所述点对对应的关键字符串,以及所述关键字符串对应的地理哈希值。
进一步地,所述处理器还执行如下步骤:通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;通过所述至少一个处理器根据所述关键字符串确定地理哈希值;将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,存储到所述数据库中。
进一步地,所述处理器还执行如下步骤:响应于在所述多个关键字符中未查找到与所述目标关键字符串相同的关键字符串,确定所述起点和/或所述终点在地理网格中的至少一个实际定位点;根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格;根据所述至少一个相邻地理网格的经纬度生成新的目标关键字符串在所述多个关键字符串中进行查询。
进一步地,所述处理器具体执行如下步骤:根据所述至少一个实际定位点所在的地理网格的两条对边中心点的连线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格任一边相邻的至少一个地理网格。
进一步地,所述处理器具体执行如下步骤:根据所述至少一个实际定位点所在的地理网格的两条对角线将所述地理网格分为四个局部地理网格;确定所述实际定位点所在的所述局部地理网格;获取与所述局部地理网格相邻的地理网格。
具体地,该电子设备包括:一个或多个处理器901以及存储器902,图9中以一个处理器901为例。处理器901、存储器902可以通过总线或者其他方式连接,图9中以通过总线连接为例。存储器902作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。处理器901通过运行存储在存储器902中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述数据查询的方法。
存储器902可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储选项列表等。此外,存储器902可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器902可选包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器902中,当被一个或者多个处理器901执行时,执行上述任意方法实施例中的数据查询的方法。
图10是本发明第七实施例的电子设备的示意图。在本实施例中,电子设备为服务器。应理解,还可以为其他电子设备,如树莓派。如图10所示,该电子设备:至少包括一个处理器1001;以及,与至少一个处理器1001通信连接的存储器1002;以及,与扫描装置通信连接的通信组件1003,通信组件1003在处理器1001的控制下接收和发送数据;其中,存储器1002存储有可被至少一个处理器1001执行的指令,指令被至少一个处理器1001执行以实现:通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;通过所述至少一个处理器根据所述关键字符串确定地理哈希值;将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本发明的第五实施例涉及一种非易失性存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
本申请实施例公开了A1、一种数据查询的方法,该方法包括:
接收来自目标配送资源终端的任务数据;
通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;
通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;
通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;
通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
A2、如A1所述的方法,所述通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离,具体包括:
通过所述至少一个处理器在数据库中查找所述目标地理哈希值;
响应于在所述数据库中查找到与所述目标地理哈希值相同的地理哈希值,确定所述数据库中所述地理哈希值对应的多个关键字符串;
通过所述至少一个处理器在所述多个关键字符串中查找所述目标关键字符串;
响应于在所述多个关键字符中查找到与所述目标关键字符串相同的关键字符串,根据所述关键字符串确定所述目标点对对应的距离。
A3、如A1所述的方法,所述通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,具体包括:
确定所述起点的位置坐标对应的第一经度值与第一纬度值,以及所述终点的位置坐标对应的第二经度值与第二纬度值;
将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数;
根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串。
A4、如A3所述的方法,所述将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数,具体包括:
将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别乘以设定数值,取整后生成所述设定位数的整数。
A5、如A3所述的方法,所述根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串,具体包括:
将所述四个设定位数的整数分别转换为四个8位元组类型的数据;
将所述四个8位元组类型的数据案子设定顺序进行串联,生成8位元组类型的目标关键字符。
A6、如A1所述的方法,所述通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,具体包括:
通过所述至少一个处理器将所述目标关键字符串通过设定算法生成所述目标地理哈希值。
A7、如A1所述的方法,所述数据库中预先存储多对点对的距离,以及每个所述点对对应的关键字符串,以及所述关键字符串对应的地理哈希值。
A8、如A1所述的方法,该方法还包括:
通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;
通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;
通过所述至少一个处理器根据所述关键字符串确定地理哈希值;
将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,存储到所述数据库中。
A9、如A2所述的方法,该方法还包括:
响应于在所述多个关键字符中未查找到与所述目标关键字符串相同的关键字符串,确定所述起点和/或所述终点在地理网格中的至少一个实际定位点;
根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格;
根据所述至少一个相邻地理网格的经纬度生成新的目标关键字符串在所述多个关键字符串中进行查询。
A10、如A9所述的方法,所述根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格,具体包括:
根据所述至少一个实际定位点所在的地理网格的两条对边中心点的连线将所述地理网格分为四个局部地理网格;
确定所述实际定位点所在的所述局部地理网格;
获取与所述局部地理网格任一边相邻的至少一个地理网格。
A11、如A9所述的方法,所述根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格,具体还包括:
根据所述至少一个实际定位点所在的地理网格的两条对角线将所述地理网格分为四个局部地理网格;
确定所述实际定位点所在的所述局部地理网格;
获取与所述局部地理网格相邻的地理网格。
本申请实施例公开了B1、一种数据存储的方法,该方法包括:
通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;
通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;
通过所述至少一个处理器根据所述关键字符串确定地理哈希值;
将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
本申请实施例公开了C1、一种数据查询的装置,该装置包括:
接收单元,用于接收来自目标配送资源终端的任务数据;
第一获取单元,用于通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;
第一确定单元,用于通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;
所述第一确定单元,还用于通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;
所述第一确定单元,还用于通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
本申请实施例公开了D1、一种数据存储的装置,该装置包括:
第二获取单元,用于通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;
第二确定单元,用于通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;
所述第二确定单元,还用于通过所述至少一个处理器根据所述关键字符串确定地理哈希值;
存储单元,用于将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
本申请实施例公开了E1、一种计算机可读存储介质,其上存储计算机程序指令,所述计算机程序指令在被处理器执行时实现如A1-A12中任一项所述的方法。
本申请实施例公开了F1、一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如下步骤:
接收来自目标配送资源终端的任务数据;
通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;
通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;
通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;
通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
F2、如F1所述的电子设备,所述处理器具体执行如下步骤:
通过所述至少一个处理器在数据库中查找所述目标地理哈希值;
响应于在所述数据库中查找到与所述目标地理哈希值相同的地理哈希值,确定所述数据库中所述地理哈希值对应的多个关键字符串;
通过所述至少一个处理器在所述多个关键字符串中查找所述目标关键字符串;
响应于在所述多个关键字符中查找到与所述目标关键字符串相同的关键字符串,根据所述关键字符串确定所述目标点对对应的距离。
F3、如F1所述的电子设备,所述处理器具体执行如下步骤:
确定所述起点的位置坐标对应的第一经度值与第一纬度值,以及所述终点的位置坐标对应的第二经度值与第二纬度值;
将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数;
根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串。
F4、如F3述的电子设备,所述处理器具体执行如下步骤:
将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别乘以设定数值,取整后生成所述设定位数的整数。
F5、如F3所述的电子设备,所述处理器具体执行如下步骤:
将所述四个设定位数的整数分别转换为四个8位元组类型的数据;
将所述四个8位元组类型的数据案子设定顺序进行串联,生成8位元组类型的目标关键字符。
F6、如F1所述的电子设备,所述处理器具体执行如下步骤:
通过所述至少一个处理器将所述目标关键字符串通过设定算法生成所述目标地理哈希值。
F7、如F1所述的电子设备,所述数据库中预先存储多对点对的距离,以及每个所述点对对应的关键字符串,以及所述关键字符串对应的地理哈希值。
F8、如F1所述的电子设备,所述处理器还执行如下步骤:
通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;
通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;
通过所述至少一个处理器根据所述关键字符串确定地理哈希值;
将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,存储到所述数据库中。
F9、如F2所述的电子设备,所述处理器还执行如下步骤:
响应于在所述多个关键字符中未查找到与所述目标关键字符串相同的关键字符串,确定所述起点和/或所述终点在地理网格中的至少一个实际定位点;
根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格;
根据所述至少一个相邻地理网格的经纬度生成新的目标关键字符串在所述多个关键字符串中进行查询。
F10、如F9所述的电子设备,所述处理器具体执行如下步骤:
根据所述至少一个实际定位点所在的地理网格的两条对边中心点的连线将所述地理网格分为四个局部地理网格;
确定所述实际定位点所在的所述局部地理网格;
获取与所述局部地理网格任一边相邻的至少一个地理网格。
F11、如F9所述的电子设备,所述处理器具体执行如下步骤:
根据所述至少一个实际定位点所在的地理网格的两条对角线将所述地理网格分为四个局部地理网格;
确定所述实际定位点所在的所述局部地理网格;
获取与所述局部地理网格相邻的地理网格。
本申请实施例公开了G1、一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如下步骤:
通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;
通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;
通过所述至少一个处理器根据所述关键字符串确定地理哈希值;
将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,按照对应关系存储到数据库中。
Claims (10)
1.一种数据查询的方法,其特征在于,该方法包括:
接收来自目标配送资源终端的任务数据;
通过至少一个处理器解析所述任务数据,获取所述任务数据的起点和终点;
通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,其中,所述目标关键字符串用于唯一表征所述目标点对;
通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,其中,所述目标地理哈希值用于表征多个关键字符串;
通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离。
2.如权利要求1所述的方法,其特征在于,所述通过所述至少一个处理器在数据库中,根据所述目标关键字符串以及所述目标地理哈希值确定所述目标点对对应的距离,具体包括:
通过所述至少一个处理器在数据库中查找所述目标地理哈希值;
响应于在所述数据库中查找到与所述目标地理哈希值相同的地理哈希值,确定所述数据库中所述地理哈希值对应的多个关键字符串;
通过所述至少一个处理器在所述多个关键字符串中查找所述目标关键字符串;
响应于在所述多个关键字符中查找到与所述目标关键字符串相同的关键字符串,根据所述关键字符串确定所述目标点对对应的距离。
3.如权利要求1所述的方法,其特征在于,所述通过所述至少一个处理器确定所述起点和所述终点组成的目标点对对应的目标关键字符串,具体包括:
确定所述起点的位置坐标对应的第一经度值与第一纬度值,以及所述终点的位置坐标对应的第二经度值与第二纬度值;
将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数;
根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串。
4.如权利要求3所述的方法,其特征在于,所述将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别确定为设定位数的整数,具体包括:
将所述第一经度值、第一纬度值、第二经度值与第二纬度值分别乘以设定数值,取整后生成所述设定位数的整数。
5.如权利要求3所述的方法,其特征在于,所述根据四个所述设定位数的整数,确定所述目标点对对应的设定字符类型的目标关键字符串,具体包括:
将所述四个设定位数的整数分别转换为四个8位元组类型的数据;
将所述四个8位元组类型的数据案子设定顺序进行串联,生成8位元组类型的目标关键字符。
6.如权利要求1所述的方法,其特征在于,所述通过所述至少一个处理器根据所述目标关键字符串确定目标地理哈希值,具体包括:
通过所述至少一个处理器将所述目标关键字符串通过设定算法生成所述目标地理哈希值。
7.如权利要求1所述的方法,其特征在于,所述数据库中预先存储多对点对的距离,以及每个所述点对对应的关键字符串,以及所述关键字符串对应的地理哈希值。
8.如权利要求1所述的方法,其特征在于,该方法还包括:
通过至少一个处理器获取历史任务数据,获取每个历史任务数据的历史起点和历史终点,以及每对所述历史起点和历史终点之间的距离;
通过所述至少一个处理器确定所述历史起点和所述历史终点组成的历史目标点对对应的关键字符串;
通过所述至少一个处理器根据所述关键字符串确定地理哈希值;
将所述地理哈希值、所述历史目标点对对应的关键字符串,以及每对所述历史起点和历史终点之间的距离,存储到所述数据库中。
9.如权利要求2所述的方法,其特征在于,该方法还包括:
响应于在所述多个关键字符中未查找到与所述目标关键字符串相同的关键字符串,确定所述起点和/或所述终点在地理网格中的至少一个实际定位点;
根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格;
根据所述至少一个相邻地理网格的经纬度生成新的目标关键字符串在所述多个关键字符串中进行查询。
10.如权利要求9所述的方法,其特征在于,所述根据所述至少一个实际定位点,确定所述地理网格的至少一个相邻地理网格,具体包括:
根据所述至少一个实际定位点所在的地理网格的两条对边中心点的连线将所述地理网格分为四个局部地理网格;
确定所述实际定位点所在的所述局部地理网格;
获取与所述局部地理网格任一边相邻的至少一个地理网格。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010247282.0A CN111460237B (zh) | 2020-03-31 | 2020-03-31 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010247282.0A CN111460237B (zh) | 2020-03-31 | 2020-03-31 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111460237A true CN111460237A (zh) | 2020-07-28 |
CN111460237B CN111460237B (zh) | 2024-02-27 |
Family
ID=71685771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010247282.0A Active CN111460237B (zh) | 2020-03-31 | 2020-03-31 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111460237B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113902368A (zh) * | 2021-10-12 | 2022-01-07 | 上海寻梦信息技术有限公司 | 信息处理方法、装置、设备及存储介质 |
CN114579063A (zh) * | 2022-05-07 | 2022-06-03 | 浙江口碑网络技术有限公司 | Od数据的存储及读取方法、装置、存储介质及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605775A (zh) * | 2013-11-28 | 2014-02-26 | 北京锐安科技有限公司 | 一种查询周围地理位置信息的方法及装置 |
CN109256029A (zh) * | 2018-09-12 | 2019-01-22 | 广州小鹏汽车科技有限公司 | 一种地点属性的自动设置方法及装置 |
CN109284946A (zh) * | 2017-07-20 | 2019-01-29 | 阿里巴巴集团控股有限公司 | 一种行程距离、物流服务行程时间确定方法、装置和系统 |
CN110377681A (zh) * | 2019-07-11 | 2019-10-25 | 拉扎斯网络科技(上海)有限公司 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
-
2020
- 2020-03-31 CN CN202010247282.0A patent/CN111460237B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605775A (zh) * | 2013-11-28 | 2014-02-26 | 北京锐安科技有限公司 | 一种查询周围地理位置信息的方法及装置 |
CN109284946A (zh) * | 2017-07-20 | 2019-01-29 | 阿里巴巴集团控股有限公司 | 一种行程距离、物流服务行程时间确定方法、装置和系统 |
CN109256029A (zh) * | 2018-09-12 | 2019-01-22 | 广州小鹏汽车科技有限公司 | 一种地点属性的自动设置方法及装置 |
CN110377681A (zh) * | 2019-07-11 | 2019-10-25 | 拉扎斯网络科技(上海)有限公司 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113902368A (zh) * | 2021-10-12 | 2022-01-07 | 上海寻梦信息技术有限公司 | 信息处理方法、装置、设备及存储介质 |
CN114579063A (zh) * | 2022-05-07 | 2022-06-03 | 浙江口碑网络技术有限公司 | Od数据的存储及读取方法、装置、存储介质及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111460237B (zh) | 2024-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111950225B (zh) | 一种芯片布局方法、装置、存储介质和电子设备 | |
CN110377681B (zh) | 一种数据查询的方法、装置、可读存储介质和电子设备 | |
CN110992681B (zh) | 交通路网属性信息生成方法、装置、存储介质及电子设备 | |
CN105719221B (zh) | 针对多任务的路径协同规划方法和装置 | |
CN110611876B (zh) | 室内资产管理的方法、装置及系统 | |
CN105550225A (zh) | 索引构建方法、查询方法及装置 | |
CN111460237A (zh) | 一种数据查询的方法、装置、可读存储介质和电子设备 | |
CN110399387A (zh) | 基于表关联关系动态生成查询sql的方法及装置 | |
US20200116500A1 (en) | Matching algorithm for data with different scales based on global road network features | |
CN110427574B (zh) | 路线相似度确定方法、装置、设备和介质 | |
CN105302827A (zh) | 一种事件的搜索方法和设备 | |
CN112036697A (zh) | 一种任务分配的方法、装置、可读存储介质和电子设备 | |
CN112666548A (zh) | 测速应答机的工作模式的确定方法、装置和系统 | |
CN110598131A (zh) | 确定用户常驻区域的方法、装置、存储介质和电子设备 | |
CN111737237B (zh) | 缺失里程桩数据生成方法、装置、设备及存储介质 | |
CN112468546B (zh) | 账号位置确定方法、装置、服务器和存储介质 | |
CN111144786B (zh) | 一种资源分配方法、装置、电子设备及存储介质 | |
CN110544064B (zh) | 一种数据处理的方法、装置、可读存储介质和电子设备 | |
CN111311150B (zh) | 配送任务分组方法、平台、电子设备及存储介质 | |
CN107066247B (zh) | 补丁查询方法以及装置 | |
CN110377019B (zh) | 一种路由生成方法和装置 | |
CN109241215B (zh) | 对象搜索方法、装置、设备及计算机可读存储介质 | |
CN113312368A (zh) | 一种关系数据更新方法、装置、电子设备及存储介质 | |
CN113392131A (zh) | 数据处理方法、装置及计算机设备 | |
CN111539592B (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 |