批处理任务时间监控方法、装置、电子设备及存储介质制造方法及图纸

技术编号:25834776 阅读:19 留言:0更新日期:2020-10-02 14:16
本发明专利技术提供一种批处理任务时间监控方法、装置、电子设备及存储介质,其中监控方法包括步骤:获取批处理任务的依赖关系表,开启批处理任务;计算得到批处理任务中各任务的单任务预测时长;根据批处理任务的历史模型和所述依赖关系表计算得到所述各任务之间的多个流程关系,同时计算得到各流程关系中由关键任务组成的关键路径;根据所述单任务预测时长和所述关键路径得到各流程关系的各整体预测时长;对比所述整体预测时长是否处于批处理任务预设时长范围内,如果不是,则告警;如果是,则通过数据监控系统发送当前各任务的开始时间数据,根据所述历史模型和所述开始时间数据触发对当前各任务的监测,并持续监测。

【技术实现步骤摘要】
批处理任务时间监控方法、装置、电子设备及存储介质
本专利技术涉及数据处理
,尤其涉及一种批处理任务时间监控方法、装置、电子设备及计算机可读存储介质。
技术介绍
随着运维服务和金融行业业务特点的需求发展,越来越多的系统需要进行批处理任务。批处理任务,指任务会按照一定的周期性定时地执行(比如每天执行),比如数据备份、业务对账等,一般是由多个SQL语句组成一套完整流程。单个任务拥有自己的开始和完成时间,一个系统的完整流程作为一个工作组,大部分任务都有自己的前序依赖任务,由于流程上(如清理过期数据再检查剩余空间)和输入上(生成报表给到下个任务)的要求,只有在前序任务都执行完后,当前任务才会开始。批处理任务是金融行业最基础和重要的任务,重要业务如果不能按时完成会直接影响第二天的正常营业(如结息、对账),所以对批处理任务运行时长的监控是特别重要的,而这里面又分为两部分:(1)单个任务的运行时间不能太长,会影响后续任务的如期完成;但是如果执行太短,往往意味着任务报错提前退出或者没有拿到期望的输入(2)整体的运行任务需要控制在某个时间节点前完成(如24:00或8:00等)。学术界有一些专注于批处理任务的研究,包括在云中自动扩展的批处理作业运行时间预测(AAAI-2020云智能研讨会),使用交互感知模型和仿真预测批量查询工作量的完成时间(EDBT-2011)等等,但是专注点更多的是在于资源瓶颈的分析以及合理调度,或者专注于慢SQL问题等等,对于跑批时间的直接预测均采用一些比较基础的时序预测算法,但是由于跑批数据有其自身的特点,已有算法很难在时序数据形态各异的情况下做到较好的预测,以及由于跑批业务的重要性,大家一般会配置机器专门用于批处理任务,同时允许相当比例的资源冗余,以防任务由于资源不足产生抢占的问题导致任务延迟或失败(如某国有银行有6台服务器专门处理跑批任务,一般CPU利用率不超过40%)。工业界还没有大规模的应用机器学习的相关算法来解决相关问题,金融业的现状是:(1)根据系统运维管理员知识、历史跑批的均值来设置固定的阈值:如均值的2倍等等;(2)不对跑批时间过短进行监控;(3)特殊日维护一套特殊的阈值;(4)对于关键系统甚至每天修改阈值;(5)对历史缺乏经验(缺乏每个业务跑批的历史统计);综上,基于批处理时间的预测和异常检测的重要性和存在难点,目前学术界的已有工作和工业界的实践在我们的实际挑战中存在一些局限。
技术实现思路
本专利技术的目的在于解决
技术介绍
中的至少一个技术问题,提供一种批处理任务时间监控方法、监控装置、电子设备及计算机可读存储介质。为实现上述目的,本专利技术提供一种批处理任务时间监控方法,包括以下步骤:获取批处理任务的依赖关系表,开启批处理任务;计算得到批处理任务中各任务的单任务预测时长;根据批处理任务的历史模型和所述依赖关系表计算得到待所述各任务之间的多个流程关系,同时计算得到各流程关系中由关键任务组成的关键路径;根据所述单任务预测时长和所述关键路径得到各流程关系的各整体预测时长;判断所述整体预测时长是否处于批处理任务预设时长范围内,如果不是,则告警;如果是,则通过数据监控系统发送当前各任务的开始时间数据,根据所述历史模型和所述开始时间数据触发对当前各任务的监测流程,并持续监测。根据本专利技术的一个方面,单任务执行完成时,通过所述数据监控系统发送任务的结束时间数据,判断任务的执行时间是否在阈值范围内,如果是,则根据任务的开始时间数据和结束时间数据进行训练,更新单任务的模型,然后继续下一个任务,如果不是,则产生告警;其中,所述单任务预测时长为所述阈值范围的中间值。根据本专利技术的一个方面,所述计算得到批处理任务中各任务的单任务预测时长包括:对所述批处理任务中各任务的数据指标类型进行自动判断并且预估跑批时间,其中数据指标类型包括:周期型数据、趋势型数据、压缩型数据和其他类型数据。根据本专利技术的一个方面,判断数据指标类型的流程为:先判断是否是周期型数据,如果不是,则继续判断是否为趋势型数据或者压缩型数据,如果都不是,则属于其他类型数据。根据本专利技术的一个方面,所述判断是否是周期型数据为:利用傅里叶变换公式判断数据是否为周期型数据,傅里叶变换公式为:;式中:ξ代表频率、x代表时间,-2πixξ为复变函数。根据本专利技术的一个方面,判断是否是趋势型数据为:采用单位根检验的方式进行平稳性检验,判断数据是否具有趋势性,从而判断数据是否为趋势型数据。根据本专利技术的一个方面,判断是否是压缩型数据为:采用数据分桶后寻找是否有明显断层的方式和假设检验来判断数据是否为压缩型数据。根据本专利技术的一个方面,对所述批处理任务中特殊日进行判断,其中特殊日包括:除春节以外的普通节日;春节;特殊行为日期;每个月、每个季度或者每年的其中一天;每个月、每个季度或者每年的其中一个工作日。根据本专利技术的一个方面,使用DTW算法判断特殊日,其中DTW公式为:;式中:i和j分别表示时序坐标x序列和y序列中的坐标点,D(i,j)表示路径规整距离矩阵,Dist(i,j)表示x序列第i个点与y序列第j个点之间的距离。根据本专利技术的一个方面,采用最小二乘估计预测趋势型数据任务的趋势性变化,获取时间阈值,所述最小二乘估计为:;式中:X为趋势型数据的预测变量、y为趋势型数据的响应变量,XT为X的转置。根据本专利技术的一个方面,针对所述压缩型数据任务,在判断数据指标类型时分析是否存在数据分布拐点,如果存在,则拐点所处数据大小的位置即为时间阈值。根据本专利技术的一个方面,针对所述周期型数据任务,使用变分自编码器对历史数据波动模式进行学习,并对和重建数据差距过大的数据认为是异常,则异常数据的位置即为时间阈值。根据本专利技术的一个方面,针对所述其他类型数据任务,采用3-sigma算法,获得历史数据的均值mean和标准差std,时间阈值为mean±k*std,其中k为标准差std的倍数。根据本专利技术的一个方面,根据所述时间阈值和历史的跑批时长以及一般变化量,利用高斯分布的参数的最大似然估计可得到当日的跑批时间预测值,所述高斯分布的参数的最大似然估计公式为:;式中,为历史跑批时间实际值均值,为历史跑批时间实际值的方差,Xi为历史跑批时间实际值数据集,n为历史跑批时间实际值数据集的个数;所述一般变化量为标准差的范围。根据本专利技术的一个方面,在各任务运行过程中,对各任务的执行时间进行判断,判断结果包括:任务超时和任务提前结束。根据本专利技术的一个方面,判断任务超时时,判断其是否为关键节点超时,如果是,则调整监测流程的预计结束时间;如果不是,则判断关键节点是否执行完毕;在判断关键节点是否执行完毕时,如果是,则直接调整监测流程的预计结束时间;如果不是,则持续本文档来自技高网
...

【技术保护点】
1.一种批处理任务时间监控方法,其特征在于,包括以下步骤:/n获取批处理任务的依赖关系表,开启批处理任务;/n计算得到批处理任务中各任务的单任务预测时长;/n根据批处理任务的历史模型和所述依赖关系表计算得到所述各任务之间的多个流程关系,同时计算得到各流程关系中由关键任务组成的关键路径;/n根据所述单任务预测时长和所述关键路径得到各流程关系的各整体预测时长;/n判断所述整体预测时长是否处于批处理任务预设时长范围内,如果不是,则告警;/n如果是,则通过数据监控系统发送当前各任务的开始时间数据,根据所述历史模型和所述开始时间数据触发对当前各任务的监测流程,并持续监测。/n

【技术特征摘要】
1.一种批处理任务时间监控方法,其特征在于,包括以下步骤:
获取批处理任务的依赖关系表,开启批处理任务;
计算得到批处理任务中各任务的单任务预测时长;
根据批处理任务的历史模型和所述依赖关系表计算得到所述各任务之间的多个流程关系,同时计算得到各流程关系中由关键任务组成的关键路径;
根据所述单任务预测时长和所述关键路径得到各流程关系的各整体预测时长;
判断所述整体预测时长是否处于批处理任务预设时长范围内,如果不是,则告警;
如果是,则通过数据监控系统发送当前各任务的开始时间数据,根据所述历史模型和所述开始时间数据触发对当前各任务的监测流程,并持续监测。


2.根据权利要求1所述的批处理任务时间监控方法,其特征在于,单任务执行完成时,通过所述数据监控系统发送任务的结束时间数据,判断任务的执行时间是否在阈值范围内,如果是,则根据任务的开始时间数据和结束时间数据进行训练,更新单任务的模型,然后继续下一个任务,如果不是,则产生告警;
其中,所述单任务预测时长为所述阈值范围的中间值。


3.根据权利要求1所述的批处理任务时间监控方法,其特征在于,所述计算得到批处理任务中各任务的单任务预测时长包括:
对所述批处理任务中各任务的数据指标类型进行自动判断并且预估跑批时长,其中数据指标类型包括:周期型数据、趋势型数据、压缩型数据和其他类型数据。


4.根据权利要求3所述的批处理任务时间监控方法,其特征在于,判断数据指标类型的流程为:先判断是否是周期型数据,如果不是,则继续判断是否为趋势型数据或者压缩型数据,如果都不是,则属于其他类型数据。


5.根据权利要求3所述的批处理任务时间监控方法,其特征在于,所述判断是否是周期型数据为:利用傅里叶变换公式判断数据是否为周期型数据,傅里叶变换公式为:


式中:ξ代表频率、x代表时间,-2πixξ为复变函数。


6.根据权利要求3所述的批处理任务时间监控方法,其特征在于,判断是否是趋势型数据为:采用单位根检验的方式进行平稳性检验,判断数据是否具有趋势性,从而判断数据是否为趋势型数据。


7.根据权利要求3所述的批处理任务时间监控方法,其特征在于,判断是否是压缩型数据为:采用数据分桶后寻找是否有明显断层的方式和假设检验来判断数据是否为压缩型数据。


8.根据权利要求1所述的批处理任务时间监控方法,其特征在于,对所述批处理任务中特殊日进行判断,其中特殊日包括:
除春节以外的节日;
春节;
特殊行为日期;
每个月、每个季度或者每年的其中一天;
每个月、每个季度或者每年的其中一个工作日。


9.根据权利要求8所述的批处理任务时间监控方法,其特征在于,使用DTW算法判断特殊日,其中DTW公式为:


式中:i和j分别表示时序坐标x序列和y序列中的坐标点,D(i,j)表示路径规整距离矩阵,Dist(i,j)表示x序列第i个点与y序列第j个点之间的距离。


10.根据权利要求3所述的批处理任务时间监控方法,其特征在于,采用最小二乘估计预测趋势型数据任务的趋势性变化,获取时间阈值,所述最小二乘估计为:


式中:X为趋势型数据的预测变量、y为趋势型数据的响应变量,XT为X的转置。


11.根据权利要求3所述的批处理任务时间监控方法,其特征在于,针对所述压缩型数据任务,在判断数据指标类型时分析是否存在数据分布拐点,如果存在,则拐点所处数据大小的位置即为时间阈值。

...

【专利技术属性】
技术研发人员:张文池程博成逸然王西平姚振翮隋楷心刘大鹏
申请(专利权)人:北京必示科技有限公司
类型:发明
国别省市:北京;11

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

1