数据同步方法、装置、设备和介质制造方法及图纸

技术编号:37419809 阅读:6 留言:0更新日期:2023-04-30 09:42
本公开提供了一种数据同步方法,可以应用于大数据技术领域。该方法包括:当监控到第一位置中的数据变动时,从所述数据处理表中定位用于指示所述第一位置的第一源数据配置信息所在的N条记录,基于每条记录中的数据处理标识和输出配置标识,生成一个待执行任务,并调度所述待执行任务。其中,当存在与所述待执行任务具有相同的输出配置标识的在先任务组成的目标队列时,将所述待执行任务归并到所述目标队列中等待调度。当所述待执行任务被调度时,执行所述待执行任务,并且当所述待执行任务执行成功后,按照目标输出配置信息输出所述待执行任务的执行结果。本公开还提供了一种数据同步装置、设备、存储介质和程序产品。存储介质和程序产品。存储介质和程序产品。

【技术实现步骤摘要】
数据同步方法、装置、设备和介质


[0001]本公开涉及大数据领域,具体地涉及一种数据同步方法、装置、设备、介质和程序产品。

技术介绍

[0002]企业的日常运营中,往往需要从外部系统中导入大量数据,例如金融企业的风险管理过程中,诸如金融产品信息数据、头寸数据、市场数据等需要从外部导入。外部导入的数据量可能很大,而且来源渠道也可能较多,这样外部导入的数据的种类和存储格式也可能多种多样。与此同时,企业运营的下游应用随着应用场景和计算场景的不同所需要的数据格式也可能具有多样性。这样,往往导致从外部系统导入的数据,通常不能直接被下游应用使用,而是需要进一步处理加工(即,预处理)后才能使用。
[0003]然而,如果每次都在下游应用需要作计算时,才将外部导入的数据进行预处理,很显然会降低下游应用的响应效率,尤其是当该下游应用是面向最终客户提供服务的情况下,会严重影响用户体验。

技术实现思路

[0004]鉴于上述问题,本公开提供了一种能够对外部导入的数据进行高效地预处理的数据同步方法、装置、设备、介质和程序产品。
[0005]本公开实施例的第一方面,提供了一种数据同步方法。所述方法包括:监控由数据处理表中的源数据配置信息所指示的至少一个存储位置中的数据变动;当监控到所述至少一个存储位置中任意的第一位置中的数据变动时,从所述数据处理表中定位出用于指示所述第一位置的第一源数据配置信息所在的N条记录,其中,N为大于或等于1的整数;获取所述N条记录中每条记录中的数据处理标识和输出配置标识;其中,在所述数据处理表的每条记录中配置有与数据处理标识对应的数据处理逻辑,在输出任务表的每条记录中配置有与输出配置标识对应的输出配置信息;基于每条记录中的数据处理标识和输出配置标识,生成一个待执行任务;调度所述待执行任务,其中,当存在与所述待执行任务具有相同的输出配置标识的在先任务组成的目标队列时,将所述待执行任务归并到所述目标队列中等待调度;以及当不存在所述目标队列时,将所述待执行任务分配到新的线程中调度执行;当所述待执行任务被调度时,执行所述待执行任务,其中,将所述第一位置中的数据,按照目标数据处理逻辑进行处理转换,其中,所述目标数据处理逻辑为所述待执行任务中的数据处理标识对应的数据处理逻辑;当所述待执行任务执行成功后,按照目标输出配置信息输出所述待执行任务的执行结果,其中,所述目标输出配置信息为所述待执行任务中的输出配置标识对应的输出配置信息。
[0006]根据本公开的实施例,所述执行所述待执行任务包括:从所述输出任务表中查询所述待执行任务中的输出配置标识所在的记录中的输出配置信息,得到所述目标输出配置信息;从所述数据处理表中查询所述待执行任务中的数据处理标识所在记录中的数据处理
逻辑,得到所述目标数据处理逻辑;以及基于所述第一源数据配置信息从所述第一位置中读取待处理数据,并按照所述目标数据处理逻辑处理所述待处理数据,得到所述执行结果。
[0007]根据本公开的实施例,所述输出任务表中不同记录的输出配置标识和输出配置信息均不同;所述数据处理表中的不同记录中的源数据配置信息相同或不同。其中,当所述数据处理表中的不同记录中的源数据配置信息相同时,该不同记录中的输出配置标识不同。
[0008]根据本公开的实施例,所述数据处理表中的不同记录中的数据处理标识不同。其中,当所述数据处理表中的不同记录中的源数据配置信息相同时,该不同记录中的数据处理逻辑也不同。
[0009]根据本公开的实施例,所述数据处理逻辑包括能够热部署的处理脚本,所述将所述第一位置中的数据,按照目标数据处理逻辑进行处理转换包括:以热部署的方式,执行实现所述目标数据处理逻辑的处理脚本。
[0010]根据本公开的实施例,所述目标队列为分段锁领取队列,其中,当所述待执行任务被调度时,执行所述待执行任务包括:在所述待执行任务领取到所述分段锁领取队列分配的锁对象后,执行所述待执行任务。
[0011]根据本公开的实施例,所述方法还包括:从任务调度表中查询状态为正在执行或等待执行的在先任务的输出配置标识;当存在与所述待执行任务相同的输出配置标识时,确定存在所述目标队列;否则确定不存在所述目标队列。其中,所述任务调度表实时记录包括所述待执行任务在内的每个任务的调度执行状态。
[0012]根据本公开的实施例,所述当所述待执行任务执行成功后,按照目标输出配置信息输出所述待执行任务的执行结果包括:定时扫描所述任务调度表;以及当从所述任务调度表中首次扫描到所述待执行任务的状态为执行成功时,按照所述目标输出配置信息输出所述执行结果。
[0013]根据本公开的实施例,所述方法应用于分布式系统,所述基于每条记录中的数据处理标识和输出配置标识,生成一个待执行任务包括:所述分布式系统中的任务发起节点基于每条记录中的数据处理标识和输出配置标识,发起一个同步任务请求;所述分布式系统中的任务调度节点接收所述同步任务请求,基于所述同步任务请求生成所述待执行任务,并调度所述待执行任务。
[0014]本公开实施例的另一方面,提供了一种数据同步装置。所述装置包括数据监控模块、任务发起模块、任务调度模块和任务执行模块。所述数据监控模块,用于监控由数据处理表中的源数据配置信息所指示的至少一个存储位置中的数据变动。所述任务发起模块用于:当监控到所述至少一个存储位置中任意的第一位置中的数据变动时,从所述数据处理表中定位出用于指示所述第一位置的第一源数据配置信息所在的N条记录,其中,N为大于或等于1的整数;以及获取所述N条记录中每条记录中的数据处理标识和输出配置标识;其中,在所述数据处理表的每条记录中配置有与数据处理标识对应的数据处理逻辑,在输出任务表的每条记录中配置有与输出配置标识对应的输出配置信息。所述任务调度模块用于:基于每条记录中的数据处理标识和输出配置标识,生成一个待执行任务;以及调度所述待执行任务,其中,当存在与所述待执行任务具有相同的输出配置标识的在先任务组成的目标队列时,将所述待执行任务归并到所述目标队列中等待调度,以及当不存在所述目标队列时,将所述待执行任务分配到新的线程中调度执行。所述任务执行模块,用于当所述待
执行任务被调度时,执行所述待执行任务,包括:将所述第一位置中的数据,按照目标数据处理逻辑进行处理转换,其中,所述目标数据处理逻辑所述待执行任务中的数据处理标识对应的数据处理逻辑,以及当所述待执行任务执行成功后,按照目标输出配置信息输出所述待执行任务的执行结果,其中,所述目标输出配置信息为所述待执行任务中的输出配置标识对应的输出配置信息。
[0015]根据本公开的实施例,任务执行模块包括数据导出模块、数据转换模块和数据导入模块。所述数据导出模块用于从所述数据处理表中查询所述待执行任务中的数据处理标识所在记录中的源数据配置信息,得到第一源数据配置信息,并基于所述第一源数据配置信息从所述第一位置中读取待处理数据。数据转换模块用于从所述数据处理表中查询所述待执行任务中的数据处理标识所在记录中的数据处理逻辑,得到所述目标数据处理逻辑,并本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据同步方法,包括:监控由数据处理表中的源数据配置信息所指示的至少一个存储位置中的数据变动;当监控到所述至少一个存储位置中任意的第一位置中的数据变动时,从所述数据处理表中定位出用于指示所述第一位置的第一源数据配置信息所在的N条记录,其中,N为大于或等于1的整数;获取所述N条记录中每条记录中的数据处理标识和输出配置标识;其中,在所述数据处理表的每条记录中配置有与数据处理标识对应的数据处理逻辑,在输出任务表的每条记录中配置有与输出配置标识对应的输出配置信息;基于每条记录中的数据处理标识和输出配置标识,生成一个待执行任务;调度所述待执行任务,其中,当存在与所述待执行任务具有相同的输出配置标识的在先任务组成的目标队列时,将所述待执行任务归并到所述目标队列中等待调度;以及当不存在所述目标队列时,将所述待执行任务分配到新的线程中调度执行;当所述待执行任务被调度时,执行所述待执行任务;其中,将所述第一位置中的数据,按照目标数据处理逻辑进行处理转换,其中,所述目标数据处理逻辑为所述待执行任务中的数据处理标识对应的数据处理逻辑;当所述待执行任务执行成功后,按照目标输出配置信息输出所述待执行任务的执行结果,其中,所述目标输出配置信息为所述待执行任务中的输出配置标识对应的输出配置信息。2.根据权利要求1所述的方法,其中,所述执行所述待执行任务包括:从所述输出任务表中查询所述待执行任务中的输出配置标识所在的记录中的输出配置信息,得到所述目标输出配置信息;从所述数据处理表中查询所述待执行任务中的数据处理标识所在记录中的数据处理逻辑,得到所述目标数据处理逻辑;基于所述第一源数据配置信息从所述第一位置中读取待处理数据,并按照所述目标数据处理逻辑处理所述待处理数据,得到所述执行结果。3.根据权利要求1或2所述的方法,其中,所述输出任务表中不同记录的输出配置标识和输出配置信息均不同;所述数据处理表中的不同记录中的源数据配置信息相同或不同;其中,当所述数据处理表中的不同记录中的源数据配置信息相同时,该不同记录中的输出配置标识不同。4.根据权利要求3所述的方法,其中,所述数据处理表中的不同记录中的数据处理标识不同;其中,当所述数据处理表中的不同记录中的源数据配置信息相同时,该不同记录中的数据处理逻辑也不同。5.根据权利要求1或2所述的方法,所述数据处理逻辑包括能够热部署的处理脚本,所述将所述第一位置中的数据,按照目标数据处理逻辑进行处理转换包括:以热部署的方式,执行实现所述目标数据处理逻辑的处理脚本。6.根据权利要求1所述的方法,其中,所述目标队列为分段锁领取队列,其中,当所述待执行任务被调度时,执行所述待执行任务包括:
在所述待执行任务领取到所述分段锁领取队列分配的锁对象后,执行所述待执行任务。7.根据权利要求1所述的方法,其中,所述方法还包括:从任务调度表中查询状态为正在执行或等待执行的在先任务的输出配置标识;当存在与所述待执行任务...

【专利技术属性】
技术研发人员:李杨薛潺涓冯海潮郑焕彰
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

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

1