【技术实现步骤摘要】
推数任务调度的方法和装置
[0001]本专利技术涉及计算机
,尤其涉及一种推数任务调度的方法和装置。
技术介绍
[0002]推数任务用于将离线数据推送至集群中。为了高效利用集群功能,一个集群可能会承载多个项目的索引推数。数十亿量级的数据推送至集群时,集群吞吐量将会是瓶颈。现有技术中通常通过提高集群写入速度和串行或并行处理推数任务的方式来提高ES集群吞吐量的利用率。但是这种方式无法在集群吐量有限的情况下提高整个集群吞吐量的利用率。
技术实现思路
[0003]有鉴于此,本专利技术实施例提供一种推数任务调度的方法和装置,通过测试运行所有推数任务来自动协调一个集群上所有推数任务的执行顺序,能够达到高效利用整个集群的吞吐量的目的。
[0004]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种推数任务调度的方法,包括:
[0005]测试运行所有推数任务,定时获取测试过程中接收推送数据的目标集群的集群剩余吞吐量;
[0006]根据每个推数任务的任务参数以及定时获取的所述集群剩余吞吐量 ...
【技术保护点】
【技术特征摘要】
1.一种推数任务调度的方法,其特征在于,包括:测试运行所有推数任务,定时获取测试过程中接收推送数据的目标集群的集群剩余吞吐量;根据每个推数任务的任务参数以及定时获取的所述集群剩余吞吐量,确定所有推数任务的执行顺序;按照所述执行顺序将所述推送数据推送到所述目标集群中。2.如权利要求1所述的方法,其特征在于,所述任务参数包括:任务占用吞吐量和任务优先级;根据每个推数任务的任务参数以及定时获取的所述集群剩余吞吐量,确定所有推数任务的执行顺序,包括:每次获取所述集群剩余吞吐量之后,按照任务优先级从高到低的顺序对任务占用吞吐量小于等于所述集群剩余吞吐量的等待推数任务进行排序,得到排序结果;根据每次获取的所述集群剩余吞吐量对应的排序结果,确定所有推数任务的执行顺序。3.如权利要求1所述的方法,其特征在于,所述任务参数还包括:推数时长和开始时间;按照任务优先级从高到低的顺序对任务占用吞吐量小于等于所述集群剩余吞吐量的等待推数任务进行排序之后,还包括:判断排序后的任务序列中是否存在具有相同任务优先级的等待推数任务;若否,则以所述任务序列作为所述排序结果;若是,则按照推数时长从短到长的顺序再次对所述任务序列中具有相同任务优先级的等待推数任务进行排序;判断再次排序后的任务序列中是否存在具有相同推数时长的等待推数任务;若是,则按照开始时间从前到后的顺序对所述再次排序后的任务序列中具有相同推数时长的等待推数任务进行排序,得到所述排序结果;否则,以第二任务序列作为所述排序结果。4.如权利要求2所述的方法,其特征在于,确定所有推数任务的执行顺序之后,还包括:判断所述所有推数任务的执行顺序是否满足第一调整条件;若是,则按照如下步骤对所述所有推数任务的执行顺序进行调整:将至少一个等待推数任务的任务优先级调整至与在前推数任务的任务优先级相同,然后重新测试运行所有推数任务,确定所有推数任务的新执行顺序;判断所述新执行顺序对应的推数任务执行总时长是否大于所述执行顺序对应的推数任务执行总时长;若是,则回滚已调整的等待推数任务的任务优先级,不对所述所有推数任务的执行顺序进行调整;否则,以所述新执行顺序作为所有推数任务的执行顺序;其中,第一调整条件包括:所述执行顺序对应的推数时间轴上存在空闲时段,且所述空闲时段内存在等待推数任务;所述空闲时段是指所述目标集群的集群剩余吞吐量等于零的时段;所述在前推数任务是指在所述空闲时段之前最后执行的推数任务。5.如权利要求4所述的方法,其特征在于,将至少一个等待推数任务的任务优先级调整至与在前推数任务的任务优先级相同,包括:根据所述目标集群的集群最高吞吐量以及所述推数时间轴上每个等待推数任务的任务占用吞吐量,确定待调整优先级的等待任务;将所述待调整优先级的等待任务的任务优先级调整至与所述在前推数任务的任务优
先级相同,更新调整后所述目标集群的集群剩余吞吐量。6.如权利要求4或5所述的方...
【专利技术属性】
技术研发人员:燕媛媛,
申请(专利权)人:北京京东世纪贸易有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。