[发明专利]一种识别任务链路中无效计算的方法、系统及设备在审
申请号: | 201911013599.1 | 申请日: | 2019-10-23 |
公开(公告)号: | CN110764893A | 公开(公告)日: | 2020-02-07 |
发明(设计)人: | 廖松博 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 11623 北京晋德允升知识产权代理有限公司 | 代理人: | 王戈 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务链 系统及设备 顺序执行 输入相 外部 申请 | ||
1.一种识别任务链路中无效计算的方法,所述方法包括:
在按照任务链路的执行顺序执行计算任务的过程中,当执行到第一计算任务时,在执行所述第一计算任务前识别所述第一计算任务在本轮任务链路执行过程中是否为无效计算,其中,当满足以下所有条件时,所述第一计算任务为无效计算:
在本轮任务链路执行过程中,所述第一计算任务依赖的所有计算任务均为无效计算;
在本轮任务链路执行过程中,所述第一计算任务依赖的所有任务链路外部输入相较上一轮任务链路执行时没有发生变化。
2.根据权利要求1所述的方法,所述方法还包括:
在本轮任务链路执行过程中,当所述第一计算任务为无效计算时,不执行所述第一计算任务,直接拷贝所述第一计算任务上次执行的执行结果作为当前的执行结果。
3.根据权利要求2所述的方法:
所述方法还包括,在本轮任务链路执行过程中,当所述第一计算任务为无效计算时,标记所述第一计算任务为执行结果未更新;
识别所述第一计算任务是否为无效计算,其中,当满足以下所有条件时,所述第一计算任务为无效计算:
在本轮任务链路执行过程中,所述第一计算任务依赖的所有计算任务均被标记为执行结果未更新;
在本轮任务链路执行过程中,所述第一计算任务依赖的所有任务链路外部输入相较上一轮任务链路执行时没有发生变化。
4.根据权利要求3所述的方法,所述方法还包括:
创建标记表,所述标记表包括用于描述所述任务链路中每一个计算任务执行结果和/或每一个任务链路外部输入输入参数是否被更新的标志位;
当所述计算任务被识别为无效计算时,将对应的标记位记录为未更新;
在识别所述计算任务是否为无效计算时,读取所述标记表并根据所述标记表中的标记位判断所述计算任务是否为无效计算。
5.根据权利要求1~4中任一项所述的方法,所述方法还包括:
记录所述任务链路每轮执行过程中无效计算的识别结果并输出。
6.根据权利要求1~5中任一项所述的方法,所述任务链路为数仓任务,所述数仓任务包括同步任务、ODS层任务、DWD层/DWS层任务以及ADM层任务。
7.根据权利要求6所述的方法,识别所述ODS层任务是否为无效计算,其中,当所述同步任务对应的更新数据为空时,所述ODS层任务为无效计算。
8.根据权利要求6所述的方法,识别所述DWD层/DWS层任务是否为无效计算,其中,当所述DWD层/DWS层任务依赖的ODS层任务执行结果没有被更新时,所述DWD层/DWS层任务为无效计算。
9.根据权利要求6所述的方法,识别所述ADM层任务是否为无效计算,其中,当所述ADM层任务依赖的DWD层/DWS层任务执行结果没有被更新时,所述DWD层/DWS层任务为无效计算。
10.一种识别任务链路中无效计算的系统,所述系统包括:
无效计算识别模块,其用于在按照任务链路的执行顺序执行计算任务的过程中,当执行到第一计算任务时,在执行所述第一计算任务前识别所述第一计算任务在本轮任务链路执行过程中是否为无效计算,其中,当满足以下所有条件时,所述第一计算任务为无效计算:
在本轮任务链路执行过程中,所述第一计算任务依赖的所有计算任务均为无效计算;
在本轮任务链路执行过程中,所述第一计算任务依赖的所有任务链路外部输入相较上一轮任务链路执行时没有发生变化。
11.一种用于在访问方设备端信息处理的设备,该设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该设备执行权利要求1至8中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911013599.1/1.html,转载请声明来源钻瓜专利网。