本发明属于数据保护,具体涉及基于时间分片的备份任务调度方法及系统。
背景技术:
1、随着数据对事业、企业单位的重要性不断增加,云计算业务的不断普及,越来越多的企业选择通过云备份服务将数据副本上传到云服务对象存储上,以应对自然灾害等不可抗力的影响;
2、传统数据备份策略一般设置为固定时间点执行备份业务,且时间高度集中于夜间,此短时间多任务触发的业务场景会给云备份服务造成极大的负载压力;
3、现有备份定时任务调度方法,采用阻塞队列管理并发负载,只有当前一任务执行完成后后续任务才会被唤醒调度执行,因为每个备份任务的备份数据大小不同、用户带宽不同导致不同备份任务执行耗时相差较大,容易导致部分备份任务阻塞时间过长、无法在循环周期内执行完成的情况,因此,需要研发一种新的基于时间分片的备份任务调度方法及系统来解决现有的问题。
技术实现思路
1、本发明的目的在于提供一种基于时间分片的备份任务调度方法及系统,以解决传统数据备份任务调度阻塞时间过长的问题。
2、为实现上述目的,本发明提供如下技术方案:一种基于时间分片的备份任务调度方法,包括:
3、设置任务调度池参数;
4、开启备份定时任务,任务加入任务调度池;
5、查询当前存储服务器执行队列状态,若执行队列状态为未满则加入执行队列开始执行备份任务,若执行队列状态为已满则任务加入调度队列;
6、判断原调度队列首位任务是否到达任务设置锁定时间,到达锁定时间的任务加入等待队列;
7、执行队列中有任务结束时查询等待队列中是否存在等待任务,若存在等待任务则将第一顺位任务加入执行队列并执行。
8、优选的,所述任务调度池包括执行队列、等待队列以及调度队列。
9、优选的,所述执行队列状态为已满则任务加入调度队列包括:
10、若当前存储服务器执行队列已满,则查询是否已达到队列最大任务数,未达到队列最大任务数则创建临时资源执行备份任务;
11、若当前存储服务器执行队列已达到最大执行任务数,则任务加入调度队列。
12、优选的,所述到达锁定时间的任务加入等待队列包括:
13、判断到达锁定时间的任务是否为新任务,即未执行过备份的新创建的备份任务,若任务为非新任务则根据客户端查询数据源大小和上次备份信息更新预估耗时备份任务信息,并加入旧任务池等待调度;若任务为新任务则加入新任务池等待调度,旧任务池优先新任务池被调度。
14、优选的,所述执行队列中有任务结束时查询等待队列中是否存在等待任务包括:
15、若等待队列中无任务则查询调度队列中是否存在等待任务,若调度队列中有等待任务则将第一顺位任务加入执行队列并执行;否则判断是否为临时资源,若为临时资源则释放资源并结束,否则立即结束。
16、优选的,所述加入旧任务池时,触发旧任务池排序,根据旧任务池中任务最大超时时间排序;
17、加入新任务池时,触发新任务池排序,根据新任务池中任务执行时间顺序排序。
18、优选的,所述旧任务池中任务超过最大超时时间,任务失败,清除调度队列;此任务调度池锁定不允许添加新任务,直到有执行队列资源回收解除锁定。
19、优选的,所述备份定时任务开启之前,建立备份任务策略,所述备份任务策略包括任务名称、备份源信息、备份超时时间,执行客户端、存储介质信息、任务执行周期、网络传输方式。
20、优选的,所述设置任务调度池参数包括:
21、设置执行队列默认任务数和最大任务数、锁定时长。
22、本发明另提供一种基于时间分片的备份任务调度系统,包括:
23、存储服务器,用于数据的存储;
24、备份客户端,用于执行备份数据将数据备份到所述存储服务器;
25、控制服务器,与所述备份客户端通信,用于管理页面以及控制备份与恢复任务;
26、调度器,用于查询当前存储服务器执行队列状态;
27、设置模块,用于设置任务调度池参数;
28、判断模块,用于判断原调度队列首位任务是否到达任务设置锁定时间,到达锁定时间的任务加入等待队列。
29、本发明的技术效果和优点:该基于时间分片的备份任务调度方法及系统,执行效率高,使用方便,解决了每个备份任务的备份数据因大小不同、用户带宽不同导致不同备份任务执行耗时相差较大的问题,实现了备份任务阻塞时间短、能够在设定的循环周期内完成执行,提高了工作效率。
1.一种基于时间分片的备份任务调度方法,其特征在于:包括:
2.根据权利要求1所述的一种基于时间分片的备份任务调度方法,其特征在于:所述任务调度池包括执行队列、等待队列以及调度队列。
3.根据权利要求1所述的一种基于时间分片的备份任务调度方法,其特征在于:所述执行队列状态为已满则任务加入调度队列包括:
4.根据权利要求1所述的一种基于时间分片的备份任务调度方法,其特征在于:所述到达锁定时间的任务加入等待队列包括:
5.根据权利要求1所述的一种基于时间分片的备份任务调度方法,其特征在于:所述执行队列中有任务结束时查询等待队列中是否存在等待任务包括:
6.根据权利要求4所述的一种基于时间分片的备份任务调度方法,其特征在于:所述加入旧任务池时,触发旧任务池排序,根据旧任务池中任务最大超时时间排序;
7.根据权利要求6所述的一种基于时间分片的备份任务调度方法,其特征在于:所述旧任务池中任务超过最大超时时间,任务失败,清除调度队列;此任务调度池锁定不允许添加新任务,直到有执行队列资源回收解除锁定。
8.根据权利要求1所述的一种基于时间分片的备份任务调度方法,其特征在于:所述备份定时任务开启之前,建立备份任务策略,所述备份任务策略包括任务名称、备份源信息、备份超时时间,执行客户端、存储介质信息、任务执行周期、网络传输方式。
9.根据权利要求1所述的一种基于时间分片的备份任务调度方法,其特征在于:所述设置任务调度池参数包括:
10.一种基于时间分片的备份任务调度系统,其特征在于:包括: