一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据作业的调整方法、装置、计算机设备和存储介质与流程

2022-12-19 23:47:39 来源:中国专利 TAG:


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.调整模块,用于对所述目标数据作业链路进行调整,直至调整后的目标数据作业链路满足所述优化对象的预设要求。
30.在其中一个实施例中,所述预设的优化对象包括数据作业耗时;所述第二确定模块,包括:
31.获取模块,用于获取所述数据作业关系图中的每个数据作业对应的数据作业耗时;
32.确定子模块,用于根据所述数据作业耗时确定对应的节点权重,其中,所述节点权重与所述数据作业耗时之间为正相关关联关系或负相关关联关系。
33.在其中一个实施例中,所述第三确定模块,包括:
34.第一确定子模块,用于确定所述数据作业关系图中的初始节点和终点,其中,所述终点与目标数据作业相对应;
35.第二确定子模块,用于根据所述节点权重利用预设路径算法,确定从所述初始节点至所述终点的满足预设条件的数据作业链路;
36.第三确定子模块,用于确定所述满足预设条件的数据作业链路为目标数据作业链路。
37.在其中一个实施例中,所述调整模块,包括:
38.获取子模块,用于获取所述预设的优化对象对应的目标数据作业耗时;
39.调整子模块,用于在所述目标数据作业链路的数据作业耗时大于所述目标数据作
业耗时的情况下,调整所述目标数据作业链路,直至调整后的目标数据作业链路的数据作业耗时小于等于所述目标数据作业耗时。
40.在其中一个实施例中,所述获取模块,包括:
41.第一获取子模块,用于获取所述数据作业关系图中的数据作业在预设历史时段内的历史数据作业耗时;
42.确定子模块,用于确定所述历史数据作业耗时的平均耗时为所述数据作业对应的数据作业耗时;
43.第二获取子模块,用于获取所述数据作业关系图中的每个数据作业对应的数据作业耗时。
44.在其中一个实施例中,所述预设的优化对象包括数据作业层级。
45.第三方面,本公开实施例还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本公开实施例中任一项所述的方法的步骤。
46.第四方面,本公开实施例还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本公开实施例中任一项所述的方法的步骤。
47.第五方面,本公开实施例还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本公开实施例中任一项所述的方法的步骤。
48.本公开实施例,根据数据库中待处理的目标数据作业的上游数据作业和作业依赖关系,确定目标数据作业对应的数据作业关系图,并根据预设的优化对象确定关系图中每个节点的节点权重,确定得到目标数据作业链路,对目标数据作业链路进行调整,直到调整后的目标数据作业链路满足预设要求,实现了对数据作业的调整,通过对数据作业链路的调整,使得调整后的数据作业满足要求,保证了目标数据作业完成效果,且通过预设的优化对象确定节点权重,能够适用于不同场景的不同优化需求,提升了数据作业的调整效果。
附图说明
49.图1为一个实施例中数据作业的调整方法的应用环境图;
50.图2为一个实施例中数据作业的调整方法的流程示意图;
51.图3为一个实施例中数据作业关系图的结构示意图;
52.图4为一个实施例中带权正权图的结构示意图;
53.图5为一个实施例中带权负权图的结构示意图;
54.图6为一个实施例中正等权图的结构示意图;
55.图7为一个实施例中负等权图的结构示意图;
56.图8为一个实施例中数据作业的调整方法的流程示意图;
57.图9为一个实施例中数据作业的调整方法的流程示意图;
58.图10为一个实施例中数据作业的调整装置的结构框图;
59.图11为一个实施例中计算机设备的内部结构图。
具体实施方式
60.为了使本公开实施例的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本公开实施例进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本公开实施例,并不用于限定本公开实施例。
61.本公开实施例提供的数据作业的调整方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
62.在一个实施例中,如图2所示,提供了一种数据作业的调整方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
63.步骤s210,根据数据库中待处理的目标数据作业的上游数据作业和作业依赖关系,确定目标数据作业对应的数据作业关系图,其中,所述数据作业关系图中的节点与数据作业一一对应;
64.通常情况下,在数据作业过程中,需要经过一系列上游数据作业后执行目标数据作业,数据作业之间存在依赖关系。通常情况下,本实施例中的数据作业流程结构为大数据领域内的标准数据作业链路结构,存在很多交叉点,数据链路复杂庞大,同时,相邻数据作业之间都存在串联式的强依赖关系。
65.本公开实施例中,获取数据库中待处理的目标数据作业的上游数据作业和作业依赖关系。在一个示例中,当一个数据作业需要依赖另一个数据作业执行时,认为两个数据作业之间存在作业依赖关系,其中,作业依赖关系可以为单向关系或双向关系,一个数据作业可以与一个或多个数据作业之间存在作业依赖关系。将目标数据作业和上游数据作业作为节点,根据作业依赖关系连接节点,得到目标数据作业对应的数据作业关系图。在一个示例中,可以设置一个虚拟节点,根据作业依赖关系连接节点后,将初始节点与虚拟节点连接,得到目标数据作业对应的数据作业关系图,其中,初始节点通常为没有对应上游数据作业的数据作业节点,本实施例中得到的数据作业关系图的起点为虚拟节点,终点为目标数据作业对应的节点;本实施例中基于数据作业全链路,包含了数据加载、数据整合、数据加工全流程,若针对单个数据源模块逐个计算,整体效率较低,因此通过创建虚拟节点,连接所有数据加载数据作业,整合优化数据作业链路结构,保证了源点,即起点的单一性,提高了计算效率。图3为根据一示范性实施例示出的一种数据作业关系图的结构示意图,参考图3所示,虚拟节点、目标数据作业节点、目标数据作业的上游数据作业的节点根据依赖关系相互连接,数据作业节点之间存在单向的依赖关系,用带箭头的连接线表示,其中,a1、a2、a3、a4可以为数据加载数据作业,b1、b2、b3、b4、b5、b6可以为数据整合数据作业,c1、c2、c3可以为公共层数据作业,d1、d2、d3可以为应用数据作业。
66.步骤s220,根据预设的优化对象,确定所述数据作业关系图中每个节点的节点权重,所述节点权重与所述优化对象相匹配;
67.本公开实施例中,得到数据作业关系图后,根据预设的优化对象确定数据作业关
系图中每个节点的节点权重。其中,预设的优化对象通常为事先根据实际应用场景设置的想要进行优化的对象,在一个示例中,预设的优化对象可以包括但不限于数据作业耗时、数据作业层级等。获取到预设的优化对象后,确定优化对象对应的节点权重设置方式,其中,节点权重设置方式与优化对象相匹配,例如,当优化对象为数据作业耗时时,可以根据数据作业关系图中的每个节点对应的数据作业的耗时确定对应的节点权重。根据对应的节点权重设置方式确定数据作业关系图中每个节点的节点权重。在一个示例中,虚拟节点对应的权重可以为一个固定的预设值,如0。在一个示例中,可以通过设置数据作业关系图中的边权得到带有权重的数据作业关系图,根据不同需求场景,通过不同的权重设置方式设置边权,带有权重的数据作业关系图可以包括但不限于带权正权图、带权负权图、正等权图、负等权图。其中,带权正权图的普通节点之间的边权为正数或0,即初始权值不变,可以用于计算最短耗时加权路径;带权负权图的普通节点之间的边权为负数或0,即边权转换为初始权值的相反数,可以用于计算最长耗时加权路径,简称“最长加权路径”,即关键路径;正等权图中除了权值为0的边,所有普通节点之间的边权调整为1,可以用于计算最短层级链路;负等权图中除了权重为0的边,所有普通节点之间的边权调整为-1,可以用于计算最长层级链路。图4为一个实施例中的带权正权图的结构示意图,图5为一个实施例中的带权负权图的结构示意图,图6为一个实施例中的正等权图的结构示意图,图7为一个实施例中的负等权图的结构示意图。
68.步骤s230,根据所述优化对象及所述节点权重确定以所述目标数据作业节点为终点的目标数据作业链路;
69.本公开实施例中,确定得到数据作业关系图中的节点权重后,根据节点权重及对应的优化对象确定目标数据作业链路。其中,在数据作业关系图中,由于作业依赖关系是有向的,因此在数据作业关系图中包括一个或多个数据作业链路,且数据作业链路以目标数据作业节点为终点。根据数据作业关系图中的节点权重就能够确定不同链路的链路权重。根据对应的优化对象从数据作业关系图中的数据作业链路中确定目标数据作业链路,其中,目标数据作业链路可以为一个或多个。在一个示例中,当对应的优化对象为数据作业耗时时,节点权重与数据作业耗时之间存在关联关系,此时可以确定数据作业耗时最长的链路为目标数据作业链路,根据节点权重与数据作业耗时之间的关联关系确定数据作业耗时最长的链路。在一个示例中,确定目标数据作业链路时,可以通过预设的算法对节点权重计算得到目标数据作业链路,也可以确定数据作业关系图中数据作业链路之后,再确定不同数据作业链路的链路权重,进而得到目标数据作业链路。
70.步骤s240,对所述目标数据作业链路进行调整,直至调整后的目标数据作业链路满足所述优化对象的预设要求。
71.本公开实施例中,得到目标数据作业链路后,对目标数据作业链路进行调整,直到调整后的目标数据作业链路满足预设要求。其中,预设要求与预设的优化对象之间存在对应关系,例如,若预设的优化对象为数据作业耗时,则预设要求可以设置为预设耗时;若预设的优化对象为数据作业层级,则预设要求可以设置为预设层级。在一个示例中,调整的方式可以包括但不限于删除数据作业节点、变更数据作业节点、新增数据作业节点、调整数据作业节点的具体数据作业参数等。在一个示例中,调整之后,重新计算得到新的目标数据作业链路,判断新的目标数据作业链路是否满足预设要求,若满足预设要求,则调整完成;若
不满足预设要求,则继续进行调整,直到调整后的目标数据作业链路满足预设要求。在一个示例中,按照调整完成后的数据作业关系图执行目标数据作业。在一个示例中,调整方式可以为在不调整数据链路的情况下,对中间数据作业耗时进行降序排序,将高耗时数据作业的执行时间缩短到合理范围内,重新计算关键路径(即目标数据作业链路),并得出最佳的数据处理时效;还可以为支持用户自定义调整数据链路,基于关键路径(即目标数据作业链路),调整数据作业依赖和数据作业耗时、新增/变更/删除中间数据作业,基于最新的数据链路结构,迭代计算新的关键路径,预估数据作业完成时间,直至满足目标时效。
72.本公开实施例,根据数据库中待处理的目标数据作业的上游数据作业和作业依赖关系,确定目标数据作业对应的数据作业关系图,并根据预设的优化对象确定关系图中每个节点的节点权重,确定得到目标数据作业链路,对目标数据作业链路进行调整,直到调整后的目标数据作业链路满足预设要求,实现了对数据作业的调整,通过对数据作业链路的调整,使得调整后的数据作业满足要求,保证了目标数据作业完成效果,且通过预设的优化对象确定节点权重,能够适用于不同场景的不同优化需求,提升了数据作业的调整效果。
73.在一个实施例中,如图8所示,所述预设的优化对象包括数据作业耗时;所述根据预设的优化对象,确定所述数据作业关系图中每个节点的节点权重,所述节点权重与所述优化对象相匹配,包括:
74.步骤s221,获取所述数据作业关系图中的每个数据作业对应的数据作业耗时;
75.步骤s222,根据所述数据作业耗时确定对应的节点权重,其中,所述节点权重与所述数据作业耗时之间为正相关关联关系或负相关关联关系。
76.本公开实施例中,预设的优化对象包括数据作业耗时,确定节点权重时,获取数据作业关系图中的每个数据作业对应的数据作业耗时,根据数据作业耗时确定数据作业对应的节点权重。其中,设置节点权重时,节点权重与数据作业耗时之间为正相关或负相关关联关系。在一个示例中,每个数据作业对应的数据作业耗时可以通过对历史数据作业耗时数据进行分析获取,还可以通过对数据作业的具体内容进行分析确定得到。
77.本公开实施例,通过数据作业耗时确定节点权重,能够使得后续确定得到的数据作业链路与数据作业耗时之间存在关联关系,进而能够根据包括数据作业耗时的优化对象进行调整,使得调整后的数据作业链路满足要求,进而实现了对目标数据作业的耗时的优化,提升了目标数据作业的完成时效。
78.在一个实施例中,所述根据所述优化对象及所述节点权重确定以所述目标数据作业节点为终点的目标数据作业链路,包括:
79.确定所述数据作业关系图中的初始节点和终点,其中,所述终点与目标数据作业相对应;
80.根据所述节点权重利用预设路径算法,确定从所述初始节点至所述终点的满足预设条件的数据作业链路;
81.确定所述满足预设条件的数据作业链路为目标数据作业链路。
82.本公开实施例中,确定目标数据作业链路时,获取数据作业关系图中的初始节点和终点,其中,终点对应于目标数据作业,初始节点可以为一个或多个。在一个示例中,初始节点可以为没有上游数据作业相对应的数据作业节点,也可以为事先设置的与没有上游数据作业相对应的数据作业节点相连接的虚拟节点。根据节点权重,利用预设的路径算法,确
定初始节点到终点之间满足预设条件的数据作业链路。在一个示例中,预设的路径算法可以为最长路径算法、可以为最短路径算法,最短路径算法可以包括但不限于贝尔曼-福特算法。其中,预设条件通常为事先根据优化对象确定得到,在一个示例中,优化对象为数据作业耗时,想要使得优化后的数据作业耗时较短时,当节点权重与数据作业耗时之间存在正相关关联关系时,预设条件可以设置为链路权重大于预设阈值,也可以设置为链路权重为数据作业关系图中的最大权重;当节点权重与数据作业耗时之间存在负相关关联关系时,预设条件可以设置为链路权重小于预设阈值,也可以设置为链路权重为数据作业关系图中的最小权重。
83.在一个示例中,利用贝尔曼-福特算法计算目标数据作业链路时,假设n为节点数,s为起点,即源点,t为终点。数组distant[i]表示源点s到节点i的路径长度,e(u,v)表示节点u和节点v的连接边,w(u,v)表示节点u和节点v之间的边权,pre(u)=v表示节点u的前趋点为节点v;调整边权,每一个节点u代表一个数据作业,每一条边e(u,v)代表从节点u到节点v之间的边,即数据作业v依赖于数据作业u,对应边权w(u,v)取近一个月数据作业u平均耗时的相反数(即前趋点耗时);初始化所有节点的距离值,距离值表示从源点到达这个点的路径长度,虚拟节点作为源点s,初始距离值为0,即distant[s]=0;其他点的初始距离值设置为0,即distant[v]=0,v=1,2,3,

,t;循环遍历,从虚拟节点s开始,循环计算每个节点的路径长度。在单个节点的循环内部,遍历松弛每一条相关有向边,判断是否存在distant[v]》distant[u] w(u,v)。若存在,则更新distant[v]=distant[u] w(u,v),pre(v)=u;若不满足,节点v的路径长度distant[v]保持不变,节点v的前趋点保持不变。若遍历结束,distant[v]无法更新,说明源点s到达节点v的最短路径已经查找完毕,执行下一次循环,直至终点路径长度distant[t]不再更新,循环结束;根据计算结果,反向回溯连接前趋点,所得出的路径即关键路径,即此条链路耗时最长,得到目标数据作业路径。在本实施例中,由于在数据作业链路数据结构中,不存在循环依赖,因此不存在环图,可省略判断是否存在权值小于0的负环路操作。
[0084]
本公开实施例,通过数据作业关系图中的节点、节点权重、预设路径算法,从而能够确定目标数据作业链路,进而能够进行后续的调整;通过预设路径算法能够快速准确的得到目标数据作业链路,保证了后续调整优化的效果,实现了对目标数据作业效果的优化。
[0085]
在一个实施例中,所述对所述目标数据作业链路进行调整,直至调整后的目标数据作业链路满足所述优化对象的预设要求,包括:
[0086]
获取所述预设的优化对象对应的目标数据作业耗时;
[0087]
在所述目标数据作业链路的数据作业耗时大于所述目标数据作业耗时的情况下,调整所述目标数据作业链路,直至调整后的目标数据作业链路的数据作业耗时小于等于所述目标数据作业耗时。
[0088]
本公开实施例中,获取预设的优化对象对应的目标数据作业耗时,其中,预设要求与优化对象之间存在关联关系,优化对象为数据作业耗时时,可以设置预设要求为目标数据作业耗时。比较目标数据作业链路的数据作业耗时与目标数据作业耗时,在目标数据作业链路的数据作业耗时大于目标数据作业耗时时,可以认为此时的数据作业关系图的数据作业耗时不满足要求,需要进行调整。在一个示例中,当目标链路的数据作业耗时小于等于目标数据作业耗时时,可以认为此时的数据作业关系图的数据作业耗时满足要求,不需要
进行调整。本公开实施例中,通常情况下,目标数据作业的完成耗时与目标数据作业链路的数据作业耗时之间存在关联关系。当调整后的目标数据作业链路的数据作业耗时小于等于目标数据作业耗时时,认为满足要求,无需调整。在一个示例中,每调整一次后,都更新数据作业关系图,重新获取新的目标数据作业链路进行判断。
[0089]
本公开实施例,设置目标数据作业耗时,并通过目标数据作业耗时对数据作业链路进行调整,能够使得调整后的目标数据作业的时效满足要求,实现了对目标数据作业耗时的优化,提高了数据作业的效率,保证了目标数据作业的完成效果。
[0090]
在一个实施例中,所述获取所述数据作业关系图中的每个数据作业对应的数据作业耗时,包括:
[0091]
获取所述数据作业关系图中的数据作业在预设历史时段内的历史数据作业耗时;
[0092]
确定所述历史数据作业耗时的平均耗时为所述数据作业对应的数据作业耗时;
[0093]
获取所述数据作业关系图中的每个数据作业对应的数据作业耗时。
[0094]
本公开实施例中,获取数据作业关系图中的数据作业在预设历史时段内的历史数据作业耗时。其中,预设历史时段可以为事先根据实际应用场景确定得到。将获取到的历史数据作业耗时的平均耗时作为数据作业对应的数据作业耗时,获取数据作业关系图中每个数据作业对应的数据作业耗时。其中,可以根据数据作业的具体参数或执行过程获取对应的参数相同或执行过程相同的历史数据,作为该数据作业对应的历史数据作业耗时。
[0095]
本公开实施例,通过历史数据作业耗时的平均耗时作为数据作业耗时,根据历史数据确定耗时,保证了确定得到的数据作业耗时的准确可靠性,进而能够保证后续的优化调整的效果,使得调整后的数据作业时效满足要求,提升了数据作业的效果。
[0096]
在一个实施例中,所述预设的优化对象包括数据作业层级。
[0097]
本公开实施例中,预设的优化对象还包括数据作业层级。在一个示例中,当优化对象为数据作业层级时,可以根据数据作业层级设置对应权重,如每个节点设置权重相等,从而能够直接根据链路权重得到层级最多、层级最少或层级数量满足预设要求的目标数据作业链路,从而能够通过对目标数据作业链路进行调整,使得调整优化后的数据作业链路层级满足预设要求。
[0098]
本公开实施例,能够对数据作业层级进行优化调整,使得调整后的目标数据作业的数据作业层级满足预设要求,从而能够适用于需要调整数据作业层级的应用场景,保证了调整后的数据作业的效果,提升了用户的体验感。
[0099]
在一个实施例中,可以对数据作业的时效进行优化,图9是根据一示例性实施例示出的一种数据作业的调整方法的示意图,参考图9所示,读取数据库信息,其中,读取信息包括作业依赖关系和数据作业耗时;根据目标数据作业,筛选其数据作业的所有上游数据作业;将每一个数据作业作为一个节点,取预设历史时段(如近一个月)内数据作业的平均耗时的相反数为初始权重;创建虚拟节点,连接目标数据作业上游所有的数据加载数据作业,边权值设置为0;创建带权负权有向图。以虚拟节点为起始点,目标数据作业(评估对象)为终点,通过bellman-ford最短路径算法(贝尔曼-福特最短路径算法),计算最短路径,从而得到耗时最长的路径作为关键路径,即目标数据作业链路;根据关键路径,反向回溯数据链路,预估数据作业完成时间;判断数据作业时效是否符合目标时效,若不符合,根据标准约束,利用预设的优化策略对链路进行优化,循环迭代计算关键路径和数据作业完成时间,直
至时效满足;若满足,任务结束。其中,优化策略可以包括但不限于优化关键路径,按需停止;优化所有超时数据作业;接收用户输入的指令进行优化等。
[0100]
本公开实施例,基于最短路径算法和数据作业链路结构,实时同步数据库数据作业信息,循环迭代计算数据作业关键路径;在复杂庞大的数据链路体系中,自动化快速定位数据作业关键路径,以此快速预估数据作业完成时间。基于数据作业关键路径和数据时效性要求,不仅支持多种预设标准约束,如数据作业层级标准、数据作业耗时标准等,而且支持自定义选择优化策略,比如变动影响范围最小、时效提升效果最好,快速提供数据作业时效的提升方案;并根据优化调整方案,动态迭代计算数据作业关键路径,直至满足时效要求。不局限实时动态计算数据作业关键路径,也支持实时计算数据作业层级最长、层级最短、耗时最短等多种数据链路,支持多方面分析数据模型的开发合理性和数据时效的提升空间。
[0101]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,附图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0102]
基于同样的发明构思,本公开实施例还提供了一种用于实现上述所涉及的数据作业的调整方法的数据作业的调整装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据作业的调整装置实施例中的具体限定可以参见上文中对于数据作业的调整方法的限定,在此不再赘述。
[0103]
在一个实施例中,如图10所示,提供了一种数据作业的调整装置1000,包括:
[0104]
第一确定模块1010,用于根据数据库中待处理的目标数据作业的上游数据作业和作业依赖关系,确定目标数据作业对应的数据作业关系图,其中,所述数据作业关系图中的节点与数据作业一一对应;
[0105]
第二确定模块1020,用于根据预设的优化对象,确定所述数据作业关系图中每个节点的节点权重,所述节点权重与所述优化对象相匹配;
[0106]
第三确定模块1030,用于根据所述优化对象及所述节点权重确定以所述目标数据作业节点为终点的目标数据作业链路;
[0107]
调整模块1040,用于对所述目标数据作业链路进行调整,直至调整后的目标数据作业链路满足所述优化对象的预设要求。
[0108]
在一个实施例中,所述预设的优化对象包括数据作业耗时;所述第二确定模块,包括:
[0109]
获取模块,用于获取所述数据作业关系图中的每个数据作业对应的数据作业耗时;
[0110]
确定子模块,用于根据所述数据作业耗时确定对应的节点权重,其中,所述节点权重与所述数据作业耗时之间为正相关关联关系或负相关关联关系。
[0111]
在一个实施例中,所述第三确定模块,包括:
[0112]
第一确定子模块,用于确定所述数据作业关系图中的初始节点和终点,其中,所述
终点与目标数据作业相对应;
[0113]
第二确定子模块,用于根据所述节点权重利用预设路径算法,确定从所述初始节点至所述终点的满足预设条件的数据作业链路;
[0114]
第三确定子模块,用于确定所述满足预设条件的数据作业链路为目标数据作业链路。
[0115]
在一个实施例中,所述调整模块,包括:
[0116]
获取子模块,用于获取所述预设的优化对象对应的目标数据作业耗时;
[0117]
调整子模块,用于在所述目标数据作业链路的数据作业耗时大于所述目标数据作业耗时的情况下,调整所述目标数据作业链路,直至调整后的目标数据作业链路的数据作业耗时小于等于所述目标数据作业耗时。
[0118]
在一个实施例中,所述获取模块,包括:
[0119]
第一获取子模块,用于获取所述数据作业关系图中的数据作业在预设历史时段内的历史数据作业耗时;
[0120]
确定子模块,用于确定所述历史数据作业耗时的平均耗时为所述数据作业对应的数据作业耗时;
[0121]
第二获取子模块,用于获取所述数据作业关系图中的每个数据作业对应的数据作业耗时。
[0122]
在一个实施例中,所述预设的优化对象包括数据作业层级。
[0123]
上述数据作业的调整装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0124]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据作业数据等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据作业的调整方法。
[0125]
本领域技术人员可以理解,图11中示出的结构,仅仅是与本公开实施例方案相关的部分结构的框图,并不构成对本公开实施例方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0126]
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
[0127]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0128]
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0129]
需要说明的是,本公开实施例所涉及的用户信息(包括但不限于用户设备信息、用
户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
[0130]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本公开实施例所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本公开实施例所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本公开实施例所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0131]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0132]
以上所述实施例仅表达了本公开实施例的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本公开实施例专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开实施例构思的前提下,还可以做出若干变形和改进,这些都属于本公开实施例的保护范围。因此,本公开实施例的保护范围应以所附权利要求为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献