基于JAVA的防止父子依赖JOB执行后数据错乱的方法及系统技术方案

技术编号:29089548 阅读:13 留言:0更新日期:2021-06-30 09:55
本发明专利技术提供了一种基于JAVA的防止父子依赖JOB执行后数据错乱的方法及系统,包括:步骤S1:对Job中间件进行封装,使封装后的Job中间件支持父子Job依赖;步骤S2:将多项数据Check规则通过组ID关联配置成组,并包装成数据校验Job;步骤S3:Job中间件按业务Job顺序依次执行业务Job,当当前业务Job执行成功后,则执行相应的数据校验Job,相应的数据校验Job执行成功后,下一个业务Job继承当前数据校验Job,重复执行步骤S3,直至执行结束。直至执行结束。直至执行结束。

【技术实现步骤摘要】
基于JAVA的防止父子依赖JOB执行后数据错乱的方法及系统


[0001]本专利技术涉及区块链
,具体地,涉及一种基于JAVA的防止父子依赖JOB执行后数据错乱的方法及系统,更为具体地,涉及基于JAVA的防止父子依赖JOB执行后数据错乱的解决方案。

技术介绍

[0002]大数据作为时下最火热的IT行业的词汇,随之而来的数据仓库、数据安全、数据分析、数据挖掘等等围绕大数据的商业价值的利用逐渐成为行业人士争相追捧的利润焦点。随着大数据时代的来临,大数据分析也应运而生。
[0003]现有技术中,大量的数据需要录入到标准的表格中,由于延迟、录入失败等原因,将导致原始数据与表格中的目标数据不一致,这是就需要对数据进行检测,保证目标数据与原始数据的一致性。
[0004]专利文献CN112199184A(申请号:202011203431.X)公开了一种跨语言任务调度方法、装置、设备及可读存储介质,该方法包括获取具有任务依赖关系的上游任务和下游任务;分配上游任务给上游节点,分配下游任务给下游节点;上游节点与下游节点对应不同编程语言;利用任务依赖关系,确定数据交换规则;在上游节点和下游节点之间,建立远程过程调用对应的通讯连接;利用通讯连接并结合数据交换规则,在上游节点和下游节点之间,进行跨语言的实时数据传输。该专利可满足分布式任务的调度和计算的情况下,便省去了单独存储中间结果数据,减少系统存储IO开销,能够加快任务执行效率。本专利技术JOB调度部分是仅基于JAVA的父子Job二次开发,语言范围小于该专利的“跨语言”范围。该专利注重在上游节点和下游节点之间,进行跨语言的实时数据传输,本专利技术着重父子Job间的调度机制的完备性,并未涉及“实时数据传输”,且包含把数据校验规则封装成Job的部分,意在解决“父子依赖JOB执行后数据错乱”的问题,即侧重点不同。
[0005]专利文献CN109828979A(申请号:201910100217.2)公开了一种数据一致性检测方法,属于大数据处理
,实现了目标数据与原始数据的一致性检测。包括如下步骤:S1:主机接收原始数据和目标数据;S2:主机设定检测节点;S3:主机根据检测节点,提取原始数据与目标数据中对应的数据,进行数据数量比较,判断数据一致性,若数量一致,则该检测节点对应的原始数据与目标数据一致,若数量不一致,则该检测节点对应的原始数据与目标数据不一致,返回步骤S2。本专利技术数据校验部分,重在通过二次开发,将数据校验规则封装成Job,并通过父子Job的配置,达到防止父子依赖JOB执行后数据错乱的效果。该专利仅支持根据目标数据和原始数据的数量一致性校验,判断数据的一致性。所以本专利技术和该专利切入点不同。

技术实现思路

[0006]针对现有技术中的缺陷,本专利技术的目的是提供一种基于JAVA的防止父子依赖JOB执行后数据错乱的方法及系统。
[0007]根据本专利技术提供的一种基于JAVA的防止父子依赖JOB执行后数据错乱的方法,包括:
[0008]步骤S1:对Job中间件进行封装,使封装后的Job中间件支持父子Job依赖;
[0009]步骤S2:将多项数据Check规则通过组ID关联配置成组,并包装成数据校验Job;
[0010]步骤S3:Job中间件按业务Job顺序依次执行业务Job,当当前业务Job执行成功后,则执行相应的数据校验Job,相应的数据校验Job执行成功后,下一个业务Job继承当前数据校验Job,重复执行步骤S3,直至执行结束。
[0011]优选地,所述封装后的Job中间件包括:封装后的Job中间件支持父子Job多层依赖的配置与执行;
[0012]所述父子Job多层依赖的配置与执行包括:执行父Job,在可配置的等待时间后,判断父Job执行情况,当父Job执行成功,则执行子Job;当父Job执行失败或执行中时,则不执行子Job。
[0013]优选地,所述封装后的Job中间件还包括父子Job在依赖关系的基础上,支持Job重试,以及支持父Job取消,则子Job也取消。
[0014]优选地,所述步骤S2中数据校验Job支持通过页面配置数据校验规则和执行顺序以及支持将多项数据校验规则关联到一个Job名,多对一封装成一个Job,依次执行数据校验规则。
[0015]优选地,所述步骤S3包括:任何一项数据校验规则执行失败,则对应Job执行失败,并发出告警信息;
[0016]所述告警信息包括执行失败的校验规则名、期望值和实际值。
[0017]根据本专利技术提供的一种基于JAVA的防止父子依赖JOB执行后数据错乱的系统,包括:
[0018]模块M1:对Job中间件进行封装,使封装后的Job中间件支持父子Job依赖;
[0019]模块M2:将多项数据Check规则通过组ID关联配置成组,并包装成数据校验Job;
[0020]模块M3:Job中间件按业务Job顺序依次执行业务Job,当当前业务Job执行成功后,则执行相应的数据校验Job,相应的数据校验Job执行成功后,下一个业务Job继承当前数据校验Job,重复触发模块M3执行,直至执行结束。
[0021]优选地,所述封装后的Job中间件包括:封装后的Job中间件支持父子Job多层依赖的配置与执行;
[0022]所述父子Job多层依赖的配置与执行包括:执行父Job,在可配置的等待时间后,判断父Job执行情况,当父Job执行成功,则执行子Job;当父Job执行失败或执行中时,则不执行子Job。
[0023]优选地,所述封装后的Job中间件还包括父子Job在依赖关系的基础上,支持Job重试,以及支持父Job取消,则子Job也取消。
[0024]优选地,所述模块M2中数据校验Job支持通过页面配置数据校验规则和执行顺序以及支持将多项数据校验规则关联到一个Job名,多对一封装成一个Job,依次执行数据校验规则。
[0025]优选地,所述模块M3包括:任何一项数据校验规则执行失败,则对应Job执行失败,并发出告警信息;
[0026]所述告警信息包括执行失败的校验规则名、期望值和实际值。
[0027]与现有技术相比,本专利技术具有如下的有益效果:
[0028]1、本专利技术通过JAVA+React Ant Design框架,对Job中间件的二次开发,解决父子Job依赖问题;
[0029]2、本专利技术通过JAVA将数据校验规则封装为Job,并和业务Job间隔配置为父子Job,从而解决父子依赖Job批量处理数据后,数据易错乱的问题;
[0030]3、本专利技术精准的告警机制,更是能在第一时间帮助技术人员评估后续处理方案,起到双保险作用;
[0031]4、本专利技术将多元化Check规则包装成Job,扩展性会很灵活;
[0032]5、本专利技术确保前一个业务Job执行后的数据校验均无问题,再执行下一个Job,该机制最大程度规避了前一个业务Job处理错误的基础上,后续Job的处理错上加错的情况。
...

【技术保护点】

【技术特征摘要】
1.一种基于JAVA的防止父子依赖JOB执行后数据错乱的方法,其特征在于,包括:步骤S1:对Job中间件进行封装,使封装后的Job中间件支持父子Job依赖;步骤S2:将多项数据Check规则通过组ID关联配置成组,并包装成数据校验Job;步骤S3:Job中间件按业务Job顺序依次执行业务Job,当当前业务Job执行成功后,则执行相应的数据校验Job,相应的数据校验Job执行成功后,下一个业务Job继承当前数据校验Job,重复执行步骤S3,直至执行结束。2.根据权利要求1所述的基于JAVA的防止父子依赖JOB执行后数据错乱的方法,其特征在于,所述封装后的Job中间件包括:封装后的Job中间件支持父子Job多层依赖的配置与执行;所述父子Job多层依赖的配置与执行包括:执行父Job,在可配置的等待时间后,判断父Job执行情况,当父Job执行成功,则执行子Job;当父Job执行失败或执行中时,则不执行子Job。3.根据权利要求1所述的基于JAVA的防止父子依赖JOB执行后数据错乱的方法,其特征在于,所述封装后的Job中间件还包括父子Job在依赖关系的基础上,支持Job重试,以及支持父Job取消,则子Job也取消。4.根据权利要求1所述的基于JAVA的防止父子依赖JOB执行后数据错乱的方法,其特征在于,所述步骤S2中数据校验Job支持通过页面配置数据校验规则和执行顺序以及支持将多项数据校验规则关联到一个Job名,多对一封装成一个Job,依次执行数据校验规则。5.根据权利要求1所述的基于JAVA的防止父子依赖JOB执行后数据错乱的方法,其特征在于,所述步骤S3包括:任何一项数据校验规则执行失败,则对应Job执行失败,并发出告警信息;所述告警信息包括执行失败的校验规则名、期望值和实际值。6.一种基于JA...

【专利技术属性】
技术研发人员:谢怡珺
申请(专利权)人:上海万向区块链股份公司
类型:发明
国别省市:

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

1