线路查询方法、装置和存储介质制造方法及图纸

技术编号:37116092 阅读:13 留言:0更新日期:2023-04-01 05:11
本发明专利技术公开了线路查询方法、装置和存储介质。本发明专利技术提供线路查询方法,包括:步骤1、接收到查询任务的查询指令时,将所述查询任务发送给策略节点启动任务分配模块;其中,所述查询任务包括按批次对数据库中的路线进行读取的指令;步骤2、所述任务分配模块根据所述查询指令进行并发任务分配,分配成子任务。该方法在策略节点启动任务分配模块,分配成的子任务并发处理,将查询任务的查询指令分配成子任务并发处理,客观上降低了子任务内需要按批次读取OD的数量,带来查询时间的总体减少,解决了OD查询时长上下波动较大问题。查询时长上下波动较大问题。查询时长上下波动较大问题。

【技术实现步骤摘要】
线路查询方法、装置和存储介质


[0001]本专利技术涉及互联网运输领域,尤其涉及线路查询方法、装置和存储介质。

技术介绍

[0002]OD(Or i gi n

Dest i nat ion)指交通出行上的起点网格跟终点网格之间的线路。全国的OD数量至少是千万级别甚至亿级别以上的。每条OD都有各种各样的指标,例如,最近7天这条OD的下单量,表示最近7天这条线路乘客打车的订单量;最近7天这条OD的配对单量,表示最近7天这条线路乘客的下单与司机接单能配对上的订单量等等。
[0003]由于OD数据量巨大,传统的MySQL数据库已经无法存储。同时,也为了对OD进行快速的读取操作,目前行业上对于OD的存储均是存储在HDFS(Hadoop Fi l e System,Hadoop文件系统)中,也可称为线路数据库HDFS。Hive、Hbase的底层都是HDFS,都需要HDFS的支持,没有HDFS,Hive与Hbase将无法运行。H ive本质上是计算引擎,包含元表,提供了一种映射关系,但本身不存储数据;Hbase本身是一个会存储数据的数据库,但本身存储的数据又会存储到底层的HDFS中。
[0004]然而,目前的对存储于Hbase中的OD存储方案的读取上存在以下缺点:
[0005]按批次读OD导致时长上下波动大:每个批次的OD数量不固定,有的批次的OD数量只有几十万,有的批次的OD数量上千万甚至上亿。从而导致按批次对OD进行读取操作时,时间长度从毫秒级别到分钟级别的跨度。
专利技术内
[0006]本专利技术主要解决OD查询中的时长波动较大、容易超时和性能较底下的技术问题,提供线路查询方法、装置和存储介质。
[0007]为解决上述技术问题,本专利技术采用的一个技术方案是:提供线路查询方法,所述方法包括:
[0008]步骤1、接收到查询任务的查询指令时,将所述查询任务发送给策略节点启动任务分配模块;其中,所述查询任务包括按批次对数据库中的路线进行读取的指令;
[0009]步骤2、所述任务分配模块根据所述查询指令进行并发任务分配,分配成子任务。
[0010]其中,所述任务分配模块根据所述查询指令进行并发任务分配的步骤之后,所述方法还包括:
[0011]步骤3、计算所述子任务数量;
[0012]步骤41、将其中一个子任务分配给所述策略节点执行。
[0013]其中,所述将其中一个子任务分配给所述策略节点执行的步骤之后,所述方法还包括:
[0014]步骤42、在所述子任务数量大于1时,将其余子任务分配给容器化集群管理系统的作业调度器执行。
[0015]其中,所述方法包括:
[0016]步骤43、在所述子任务数量大于1时,所述策略节点等待所述作业调度器执行完毕的信息回调到所述策略节点进行汇总。
[0017]其中,所述任务分配模块根据所述查询指令进行并发任务分配的步骤包括:
[0018]任务切换模块读取Mysql,从Mysql中读取当前涉及的所有批次的路线的数量;
[0019]对当前涉及的所有批次按路线的数量进行排序;
[0020]使用预设算法对当前涉及的所有批次进行切分。
[0021]其中,所述预设算法包括:
[0022]步骤51、设定当前已累加的路线数量为S,并将S初始化为0,即S=0;
[0023]步骤52、读取当前子任务涉及的任一批次的路线的数量a,并将a赋值累加到S上,即S=S+a;
[0024]步骤53、判断赋值累加后的S是否大于等于阈值Z,
[0025]步骤54、若判断到赋值累加后的S不大于等于阈值Z,则重复步骤52;
[0026]步骤55、若判断到赋值累加后的S大于阈值Z,则计算前n

1个批次的路线总数x,对剩下的路线数量索引Z

x,从第n个批次读取;存储本次读取到的所有批次的批次信息;将S重置为第n个批次剩余数量;回到步骤53;
[0027]步骤56、若判断到赋值累加后的S等于阈值Z,则存储本次读取到的所有批次的批次信息;将S重置为0,即S=0;继续读取下一个批次,回到步骤52。
[0028]其中,所述批次信息包括批次号、起始索引和结束索引。
[0029]其中,所述策略节点等待所述作业调度器执行完毕的信息回调到所述策略节点进行汇总的步骤具体包括:
[0030]将所述作业调度器执行的子任务的参数发送给所述策略节点,所述子任务的参数包括子任务的批次号、起始索引和结束索引,所述策略节点汇总所述子任务的参数。
[0031]为解决上述技术问题,本专利技术采用的另一个技术方案是:提供线路查询装置,所述装置包括:
[0032]查询模块,用于接收到查询任务的查询指令时,将所述查询任务发送给策略节点启动任务分配模块;其中,所述查询任务包括按批次对数据库中的路线进行读取的指令;
[0033]分配模块,用于在所述任务分配模块根据所述查询指令进行并发任务分配,分配成子任务。
[0034]为解决上述技术问题,本专利技术采用的另一个技术方案是:计算机可读存储介质,所述计算机可读存储介质中存储有程序数据,所述程序数据在被处理器执行时,用于执行所述程序数据以实现上述的方法。
[0035]本专利技术实施例的有益效果是:区别于现有技术,本专利技术提供线路查询方法,包括:步骤1、接收到查询任务的查询指令时,将所述查询任务发送给策略节点启动任务分配模块;其中,所述查询任务包括按批次对数据库中的路线进行读取的指令;步骤2、所述任务分配模块根据所述查询指令进行并发任务分配,分配成子任务。该方法在策略节点启动任务分配模块,分配成的子任务并发处理,将查询任务的查询指令分配成子任务并发处理,客观上降低了子任务内需要按批次读取OD的数量,带来查询时间的总体减少,解决了OD查询时长上下波动较大问题。
附图说明
[0036]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
[0037]图1是本专利技术提供的线路查询方法一实施例的流程图;
[0038]图2是本专利技术提供的线路查询方法另一实施例的流程图;
[0039]图3是本专利技术提供的线路查询方法的预设算法的流程图;
[0040]图4是本专利技术提供的线路查询方法一实施例的切分结果示意图;
[0041]图5是本专利技术提供的线路查询方法又一实施例的流程图;
[0042]图6是本专利技术提供的线路查询装置一实施例的结构框图;
[0043]图7是本专利技术提供的计算机可读存储介质一实施例的结构框图。
具体实施方式
[0044]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述。可以理解的是,此本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.线路查询方法,其特征在于,所述方法包括:步骤1、接收到查询任务的查询指令时,将所述查询任务发送给策略节点启动任务分配模块;其中,所述查询任务包括按批次对数据库中的路线进行读取的指令;步骤2、所述任务分配模块根据所述查询指令进行并发任务分配,分配成子任务。2.根据权利要求1所述的方法,其特征在于,所述任务分配模块根据所述查询指令进行并发任务分配的步骤之后,所述方法还包括:步骤3、计算所述子任务数量;步骤41、将其中一个子任务分配给所述策略节点执行。3.根据权利要求2所述的方法,其特征在于,所述将其中一个子任务分配给所述策略节点执行的步骤之后,所述方法还包括:步骤42、在所述子任务数量大于1时,将其余子任务分配给容器化集群管理系统的作业调度器执行。4.根据权利要求3所述的方法,其特征在于,所述方法包括:步骤43、在所述子任务数量大于1时,所述策略节点等待所述作业调度器执行完毕的信息回调到所述策略节点进行汇总。5.根据权利要求1

4任一项所述的方法,其特征在于,所述任务分配模块根据所述查询指令进行并发任务分配的步骤包括:任务切换模块读取Mysql,从Mysql中读取当前涉及的所有批次的路线的数量;对当前涉及的所有批次按路线的数量进行排序;使用预设算法对当前涉及的所有批次进行切分。6.根据权利要求5所述的方法,其特征在于,所述预设算法包括:步骤51、设定当前已累加的路线数量为S,并将S初始化为0,即S=0;步骤52、读取当前子任务涉及的任一批次的路线的数量a,并将a赋值累加到S上,即S=S+a;步骤53、判...

【专利技术属性】
技术研发人员:陈佳超
申请(专利权)人:深圳依时货拉拉科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1