基于深度学习算法的ETL调度方法及装置与流程

文档序号:35019250发布日期:2023-08-04 10:35阅读:50来源:国知局
基于深度学习算法的ETL调度方法及装置与流程

本发明涉及计算机,尤其涉及一种基于深度学习算法的etl调度方法及装置。


背景技术:

1、etl(extract-transform-load,数据抽取加载和转换)作业通常由一个集中的调度平台控制他们的运行,决定执行顺序,进行错误捕捉和处理。现有的较为完善的etl系统,往往需要具有合理的调度算法来确定出调度策略,以实现合理高效的任务调度。

2、由于一些信息处理任务中涉及到多个平台多个系统的数据处理,会存在多个不同的系统或企业采用自己的etl调度平台来执行自己的etl任务调度,但现有的etl调度技术中,没有考虑到综合利用不同子系统或企业的etl中心调度的结果来修正或优化etl调度,而是大部分各自在自己的数据区域内实现调度,从而无法利用超大数据处理记录中的经验来提高etl作业的效率和效果,这严重制约了etl的大规模应用。可见,现有技术存在缺陷,亟需解决。


技术实现思路

1、本发明所要解决的技术问题在于,提供一种基于深度学习算法的etl调度方法及装置,能够结合大规模多中心的数据处理过程中的经验来有效优化etl作业的流程,提高etl调度的效率和效果。

2、为了解决上述技术问题,本发明第一方面公开了一种基于深度学习算法的etl调度方法,所述方法包括:

3、获取多个etl调度中心发送的针对目标调度任务组中的至少两个调度任务的历史调度策略;所述目标调度任务组包括有多个调度任务;

4、根据每一所述历史调度策略,确定每一所述调度任务对应的历史调度参数;

5、根据每一所述etl调度中心对应的中心设备参数和调度历史记录,确定每一所述调度任务对应的调度准确性参数;

6、根据每一所述调度任务对应的任务执行参数,和预设的神经网络预测模型,确定每一所述调度任务对应的调度优先级参数;

7、根据所有所述调度任务对应的历史调度参数、调度准确性参数和调度优先级参数,确定所述目标调度任务组对应的任务执行策略。

8、作为一个可选的实施方式,在本发明第一方面中,所述任务执行参数包括任务类型、任务执行时的处理器占用率、任务执行时的储存器占用率、任务执行时的接口占用率和任务的预计运行时长中的至少一种;以及,所述根据每一所述调度任务对应的任务执行参数,和预设的神经网络预测模型,确定每一所述调度任务对应的调度优先级参数,包括:

9、将每一所述调度任务对应的任务执行参数输入至训练好的第一神经网络预测模型,以得到输出的每一所述调度任务对应的调度优先级参数;所述第一神经网络预测模型通过包括有多个训练任务执行参数和对应的调度优先级标注的训练数据集训练得到。

10、作为一个可选的实施方式,在本发明第一方面中,所述根据每一所述历史调度策略,确定每一所述调度任务对应的历史调度参数,包括:

11、对于每一所述调度任务,确定该调度任务在任一所述历史调度策略中对应的历史调度优先级;

12、根据该调度任务在任一所述历史调度策略中对应的历史调度优先级,计算该调度任务对应的历史调度前位比例;所述历史调度前位比例为该调度任务在所有所述历史调度策略中的优先级在前预设位数内的次数占该调度任务在所有历史调度策略中的出现次数的比例;

13、根据该调度任务在任一所述历史调度策略中对应的历史调度优先级,以及任一所述历史调度策略对应的调度场景,计算该调度任务对应的历史调度场景参数;

14、计算该调度任务对应的所述历史调度前位比例和所述历史调度场景参数的加权求和值,得到该调度任务对应的历史调度参数。

15、作为一个可选的实施方式,在本发明第一方面中,所述根据该调度任务在任一所述历史调度策略中对应的历史调度优先级,以及任一所述历史调度策略对应的调度场景,计算该调度任务对应的历史调度场景参数,包括:

16、确定本次调度的当前调度场景;

17、对于该调度任务在任一所述历史调度策略中对应的历史调度优先级,计算该历史调度策略对应的调度场景和当前调度场景的场景相似度,并计算所述场景相似度和所述历史调度优先级的乘积,以得到该调度任务在该历史调度策略中对应的调度场景参数;所述当前调度场景或所述调度场景包括客户需求分析、客户需求预测、客户通信质量分析、客户通信场景分析、客户通信费用分析和客户画像分析中的一种或多种组合的需求;

18、计算该调度任务在所有所述历史调度策略中对应的所述调度场景参数的平均值,以得到该调度任务对应的历史调度场景参数。

19、作为一个可选的实施方式,在本发明第一方面中,所述根据每一所述etl调度中心对应的中心设备参数和调度历史记录,确定每一所述调度任务对应的调度准确性参数,包括:

20、对于每一所述调度任务在任一所述调度策略,根据该调度策略对应的所述etl调度中心对应的中心设备参数,计算该调度策略对应的设备先进度参数;

21、根据该调度策略对应的所述etl调度中心对应的调度历史记录,计算该调度策略对应的调度性能参数;

22、计算该调度策略对应的设备先进度参数和调度性能参数的乘积,得到该调度策略对应的调度效果参数;

23、计算该调度任务对应的所有所述调度策略的所述调度效果参数的平均值,确定该调度任务对应的调度准确性参数。

24、作为一个可选的实施方式,在本发明第一方面中,所述中心设备参数包括处理器参数、内存参数、硬盘参数、阵列卡参数、电源参数、网络硬件参数和内存参数中的至少一种;以及,所述根据该调度策略对应的所述etl调度中心对应的中心设备参数,计算该调度策略对应的设备先进度参数,包括:

25、将该调度策略对应的所述etl调度中心对应的中心设备参数,输入至训练好的第二神经网络预测模型,以得到输出的该调度策略对应的设备先进度参数;所述第二神经网络预测模型通过包括有多个训练中心设备参数和对应的设备先进度标注的训练数据集训练得到。

26、作为一个可选的实施方式,在本发明第一方面中,所述根据该调度策略对应的所述etl调度中心对应的调度历史记录,计算该调度策略对应的调度性能参数,包括:

27、根据该调度策略对应的所述etl调度中心对应的调度历史记录,统计所述etl调度中心在所述调度历史记录中计算出调度策略的平均用时的倒数,得到用时参数;

28、根据所述调度历史记录,获取所述etl调度中心计算出的所有调度策略对应的调度结果参数;所述调度结果参数包括任务执行参数、任务执行成功率和任务执行总时间;

29、将所述调度结果参数输入至训练好的第三神经网络预测模型,以得到输出的该调度结果参数对应的调度效果预测值;所述第三神经网络预测模型通过包括有多个训练调度结果参数和对应的调度效果标注的训练数据集训练得到;

30、计算所述etl调度中心对应的所述用时参数和所述调度效果预测值的乘积,得到该调度策略对应的调度性能参数。

31、作为一个可选的实施方式,在本发明第一方面中,所述根据所有所述调度任务对应的历史调度参数、调度准确性参数和调度优先级参数,确定所述目标调度任务组对应的任务执行策略,包括:

32、根据每一所述调度任务对应的历史调度参数和调度准确性参数的乘积的大小,确定每一所述调度任务对应的历史调度优先级参数;

33、确定所述目标调度任务组中不同类型的所述调度任务对应的任务执行设备;

34、确定目标函数为任务执行方案对应的所有调度任务的优先级信息对应的相似度差值达到最小;所述相似度差值为第一相似度和第二相似度的差值;所述第一相似度为所述优先级信息与所述历史调度优先级参数之间的相似度;所述第二相似度为所述优先级信息与所述调度优先级参数之间的相似度;所述任务执行方案为所述多个调度任务依照一定的执行次序所形成的执行方案;

35、确定约束条件为所述任务执行方案中的多个调度任务的执行次序能够满足所有对应的所述任务执行设备的启动顺序条件;所述启动顺序条件用于限定任一所述任务执行设备能否在任一其他所述任务执行设备之前或之后启动;

36、根据所述目标函数和所述约束条件,基于动态规划算法,演算出所述多个调度任务对应的最优的任务执行方案;

37、将所述最优的任务执行方案确定为所述目标调度任务组对应的任务执行策略。

38、本发明第二方面公开了一种基于深度学习算法的etl调度装置,所述装置包括:

39、获取模块,用于获取多个etl调度中心发送的针对目标调度任务组中的至少两个调度任务的历史调度策略;所述目标调度任务组包括有多个调度任务;

40、第一确定模块,用于根据每一所述历史调度策略,确定每一所述调度任务对应的历史调度参数;

41、第二确定模块,用于根据每一所述etl调度中心对应的中心设备参数和调度历史记录,确定每一所述调度任务对应的调度准确性参数;

42、第三确定模块,用于根据每一所述调度任务对应的任务执行参数,和预设的神经网络预测模型,确定每一所述调度任务对应的调度优先级参数;

43、第四确定模块,用于根据所有所述调度任务对应的历史调度参数、调度准确性参数和调度优先级参数,确定所述目标调度任务组对应的任务执行策略。

44、作为一个可选的实施方式,在本发明第二方面中,所述任务执行参数包括任务类型、任务执行时的处理器占用率、任务执行时的储存器占用率、任务执行时的接口占用率和任务的预计运行时长中的至少一种;以及,所述第三确定模块根据每一所述调度任务对应的任务执行参数,和预设的神经网络预测模型,确定每一所述调度任务对应的调度优先级参数的具体方式,包括:

45、将每一所述调度任务对应的任务执行参数输入至训练好的第一神经网络预测模型,以得到输出的每一所述调度任务对应的调度优先级参数;所述第一神经网络预测模型通过包括有多个训练任务执行参数和对应的调度优先级标注的训练数据集训练得到。

46、作为一个可选的实施方式,在本发明第二方面中,所述第一确定模块根据每一所述历史调度策略,确定每一所述调度任务对应的历史调度参数的具体方式,包括:

47、对于每一所述调度任务,确定该调度任务在任一所述历史调度策略中对应的历史调度优先级;

48、根据该调度任务在任一所述历史调度策略中对应的历史调度优先级,计算该调度任务对应的历史调度前位比例;所述历史调度前位比例为该调度任务在所有所述历史调度策略中的优先级在前预设位数内的次数占该调度任务在所有历史调度策略中的出现次数的比例;

49、根据该调度任务在任一所述历史调度策略中对应的历史调度优先级,以及任一所述历史调度策略对应的调度场景,计算该调度任务对应的历史调度场景参数;

50、计算该调度任务对应的所述历史调度前位比例和所述历史调度场景参数的加权求和值,得到该调度任务对应的历史调度参数。

51、作为一个可选的实施方式,在本发明第二方面中,所述第一确定模块根据该调度任务在任一所述历史调度策略中对应的历史调度优先级,以及任一所述历史调度策略对应的调度场景,计算该调度任务对应的历史调度场景参数的具体方式,包括:

52、确定本次调度的当前调度场景;

53、对于该调度任务在任一所述历史调度策略中对应的历史调度优先级,计算该历史调度策略对应的调度场景和当前调度场景的场景相似度,并计算所述场景相似度和所述历史调度优先级的乘积,以得到该调度任务在该历史调度策略中对应的调度场景参数;所述当前调度场景或所述调度场景包括客户需求分析、客户需求预测、客户通信质量分析、客户通信场景分析、客户通信费用分析和客户画像分析中的一种或多种组合的需求;

54、计算该调度任务在所有所述历史调度策略中对应的所述调度场景参数的平均值,以得到该调度任务对应的历史调度场景参数。

55、作为一个可选的实施方式,在本发明第二方面中,所述第二确定模块根据每一所述etl调度中心对应的中心设备参数和调度历史记录,确定每一所述调度任务对应的调度准确性参数的具体方式,包括:

56、对于每一所述调度任务在任一所述调度策略,根据该调度策略对应的所述etl调度中心对应的中心设备参数,计算该调度策略对应的设备先进度参数;

57、根据该调度策略对应的所述etl调度中心对应的调度历史记录,计算该调度策略对应的调度性能参数;

58、计算该调度策略对应的设备先进度参数和调度性能参数的乘积,得到该调度策略对应的调度效果参数;

59、计算该调度任务对应的所有所述调度策略的所述调度效果参数的平均值,确定该调度任务对应的调度准确性参数。

60、作为一个可选的实施方式,在本发明第二方面中,所述中心设备参数包括处理器参数、内存参数、硬盘参数、阵列卡参数、电源参数、网络硬件参数和内存参数中的至少一种;以及,所述第二确定模块根据该调度策略对应的所述etl调度中心对应的中心设备参数,计算该调度策略对应的设备先进度参数的具体方式,包括:

61、将该调度策略对应的所述etl调度中心对应的中心设备参数,输入至训练好的第二神经网络预测模型,以得到输出的该调度策略对应的设备先进度参数;所述第二神经网络预测模型通过包括有多个训练中心设备参数和对应的设备先进度标注的训练数据集训练得到。

62、作为一个可选的实施方式,在本发明第二方面中,所述第二确定模块根据该调度策略对应的所述etl调度中心对应的调度历史记录,计算该调度策略对应的调度性能参数的具体方式,包括:

63、根据该调度策略对应的所述etl调度中心对应的调度历史记录,统计所述etl调度中心在所述调度历史记录中计算出调度策略的平均用时的倒数,得到用时参数;

64、根据所述调度历史记录,获取所述etl调度中心计算出的所有调度策略对应的调度结果参数;所述调度结果参数包括任务执行参数、任务执行成功率和任务执行总时间;

65、将所述调度结果参数输入至训练好的第三神经网络预测模型,以得到输出的该调度结果参数对应的调度效果预测值;所述第三神经网络预测模型通过包括有多个训练调度结果参数和对应的调度效果标注的训练数据集训练得到;

66、计算所述etl调度中心对应的所述用时参数和所述调度效果预测值的乘积,得到该调度策略对应的调度性能参数。

67、作为一个可选的实施方式,在本发明第二方面中,所述第四确定模块根据所有所述调度任务对应的历史调度参数、调度准确性参数和调度优先级参数,确定所述目标调度任务组对应的任务执行策略的具体方式,包括:

68、根据每一所述调度任务对应的历史调度参数和调度准确性参数的乘积的大小,确定每一所述调度任务对应的历史调度优先级参数;

69、确定所述目标调度任务组中不同类型的所述调度任务对应的任务执行设备;

70、确定目标函数为任务执行方案对应的所有调度任务的优先级信息对应的相似度差值达到最小;所述相似度差值为第一相似度和第二相似度的差值;所述第一相似度为所述优先级信息与所述历史调度优先级参数之间的相似度;所述第二相似度为所述优先级信息与所述调度优先级参数之间的相似度;所述任务执行方案为所述多个调度任务依照一定的执行次序所形成的执行方案;

71、确定约束条件为所述任务执行方案中的多个调度任务的执行次序能够满足所有对应的所述任务执行设备的启动顺序条件;所述启动顺序条件用于限定任一所述任务执行设备能否在任一其他所述任务执行设备之前或之后启动;

72、根据所述目标函数和所述约束条件,基于动态规划算法,演算出所述多个调度任务对应的最优的任务执行方案;

73、将所述最优的任务执行方案确定为所述目标调度任务组对应的任务执行策略。

74、本发明第三方面公开了另一种基于深度学习算法的etl调度装置,所述装置包括:

75、存储有可执行程序代码的存储器;

76、与所述存储器耦合的处理器;

77、所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的基于深度学习算法的etl调度方法中的部分或全部步骤。

78、本发明第四方面公开了一种用于海关分货的便携式终端,包括图形码扫描装置和数据处理装置,其中,所述数据处理装置用于执行本发明第一方面公开的基于深度学习算法的etl调度方法中的部分或全部步骤。

79、与现有技术相比,本发明具有以下有益效果:

80、可见,本发明实施例能够实现利用不同系统的调度中心的历史调度策略,来确定每一调度任务的调度特点,并利用这些调度特点对应的参数来综合执行本次的调度,从而能够结合大规模多中心的数据处理过程中的经验来有效优化etl作业的流程,提高etl调度的效率和效果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1