技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种基于检查点机制的数据集成任务断点续跑方法与流程  >  正文

一种基于检查点机制的数据集成任务断点续跑方法与流程

  • 国知局
  • 2024-11-21 12:05:06

本发明涉及数据集成任务执行方法,尤其涉及一种基于检查点机制的数据集成任务断点续跑方法及装置。

背景技术:

1、在现有的数据集成技术中,当数据集成任务在执行过程中遇到故障或中断时(比如,由于系统故障、网络中断或其他不可预测因素导致的任务中断问题),通常需要从头开始重新执行整个任务,这会导致大量的计算资源浪费和时间成本增加。

技术实现思路

1、为了克服现有方法存在的上述缺陷,本发明提出了一种新的基于检查点机制的数据集成任务断点续跑方法。本方法通过引入检查点机制,能够在任务执行过程中设置检查点,并在任务中断时从最近的检查点恢复执行,从而实现任务的断点续跑,达到提高数据集成任务的稳定性和可靠性的目的。

2、术语解释

3、数据集成:数据集成是指将来自不同源、格式或性质的数据合并成一个统一的数据视图或存储库的过程。这个过程通常涉及数据的抽取、转换和加载(etl,extract,transform,load)等步骤,旨在实现数据的整合、共享和一致性。数据集成是构建企业级数据仓库、实现业务智能(bi)和大数据分析等应用的基础。

4、检查点:在数据处理、系统恢复或计算任务中,检查点是一种机制,用于在特定时刻保存程序或任务的状态信息,以便在发生故障或需要暂停后能够恢复到该状态并继续执行。检查点技术广泛应用于数据库管理、分布式计算、操作系统和应用程序等领域。

5、断点续跑:也称为断点续传或断点恢复,是一种在程序执行过程中,当遇到特定条件(如用户暂停、系统错误或资源限制)时,能够保存当前执行状态并在后续时间从该状态恢复执行的功能。这种机制在长时间运行的任务、复杂计算或需要频繁中断的交互式应用程序中尤为重要。

6、任务调度:任务调度系统是计算机领域中常用的一种工具,用于管理和执行各种任务。它可以帮助开发人员有效地安排和执行任务,提高系统的效率和性能。

7、具体地,本发明提供了一种基于检查点机制的数据集成任务断点续跑方法,如图6所示,本方法包括下述步骤:

8、s1.在数据集成模块中预先设置检查点策略,通过该检查点策略在任务执行过程中进行检查点设置,并将设置的检查点信息存储到存储介质中;

9、s2.在数据集成模块中创建集成任务,并配置集成任务的参数和数据抽取范围,需要执行集成任务时,由任务调度模块向数据集成模块发送触发消息,数据集成模块触发集成任务;

10、s3.解析集成任务的配置参数,根据源表和数据抽取范围组装源表的查询sql语句,然后根据并行参数对组装好的查询sql语句进行分段,将集成任务拆分成多个子任务,再将拆分好的子任务分发到数据集成模块的执行器上进行执行;

11、s4.子任务开始执行时,首先检查并判断检查点策略,然后按照该策略生成检查点数据,并将检查点数据发送到redis进行存储;如果未配置检查点策略,则直接执行任务的抽取逻辑,最终执行完成或者异常终止;

12、s5.当子任务执行过程中发生异常导致任务中断时,集成任务读取存储在redis中的距离任务中断点最近的检查点数据,然后根据该检查点数据对子任务进行重新构建和分发(实现任务中断恢复)。

13、进一步地,本发明基于检查点机制的数据集成任务断点续跑方法步骤s1中所述的检查点策略包括以下三种类型:

14、指定数据步长策略:集成任务以指定步长为批次,对数据进行一批批的抽取或计算,当上一批数据操作成功后,生成该批次数据的一条检查点数据发送到redis进行存储;

15、指定时间间隔策略:集成任务记录数据抽取的时间,当执行了指定时间的时候,将针对该时间段内成功操作的数据生成一条检查点数据发送到redis进行存储,然后重新开始计算执行时间;

16、数据步长与时间间隔混合策略:集成任务根据指定的数据步长和时间间隔,哪个先到达就按照对应的策略生成一条检查点数据发送到redis进行存储。

17、进一步地,本发明基于检查点机制的数据集成任务断点续跑方法步骤s2中所述的集成任务的参数包括但不限于:源表、目标表、并行参数、检查点策略、以及定时参数;

18、所述的数据抽取范围包括时间型抽取范围和数值型抽取范围。

19、进一步地,本发明基于检查点机制的数据集成任务断点续跑方法步骤s3中将集成任务拆分成多个子任务,所有子任务除了数据抽取范围不同外,其他的配置参数完全相同。

20、进一步地,本发明基于检查点机制的数据集成任务断点续跑方法步骤s4中生成的检查点数据包括:所在执行器ip、子任务数据抽取范围、已经成功抽取的数据范围和正在抽取的数据范围。

21、进一步地,本发明基于检查点机制的数据集成任务断点续跑方法步骤s4中发送到redis中的检查点数据按照时间戳的大小顺序存储,系统定时清理已经恢复成功或者执行成功的任务的检查点数据。

22、进一步地,本发明基于检查点机制的数据集成任务断点续跑方法步骤s5中包括:

23、s51.当子任务执行过程中发生异常导致任务中断时,集成任务读取存储在redis中的距离任务中断点最近的检查点数据;

24、s52.通过检查点数据中记录的数据抽取范围和已经成功抽取的数据范围,重新组装构建集成任务的抽取sql语句;

25、s53.将重新组装构建的集成任务抽取sql语句分发到指定的数据集成模块的执行器上进行执行,实现任务中断恢复。

26、另外,本发明还提供了一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述程序被处理器执行时实现上述的基于检查点机制的数据集成任务断点续跑方法的步骤。

27、另一方面,本发明还提供了一种基于检查点机制的数据集成任务断点续跑装置,本装置运行时实现上述的基于检查点机制的数据集成任务断点续跑方法的步骤,本装置包括:任务调度模块、数据集成模块、关系型数据库、数据仓库以及redis缓存模块,其中:

28、任务调度模块负责对集成任务的调度和触发;

29、数据集成模块负责执行集成任务,并生产检查点数据;

30、redis缓存模块负责存储任务的检查点数据,供任务恢复时查询;

31、关系型数据库和数据仓库负责对数据集成任务抽取和写入的数据提供载体。

32、进一步地,本发明基于检查点机制的数据集成任务断点续跑装置中所述的关系型数据库包括但不限于:mysql、oracle、postgresql。

33、综上,本发明基于检查点机制的数据集成任务断点续跑方法具有以下优点:

34、(1)本发明方法通过引入基于redis的检查点机制,实现了数据集成任务的断点续跑。

35、(2)本发明方法提供了指定数据步长、指定时间间隔、以及混合模式共三种检查点策略,能够有效减少任务恢复时的重复抽取和计算的数据量。

36、(3)通过本发明方法,当任务在执行过程中遇到中断时,可以从最近的检查点恢复执行,避免了从头开始重新执行整个任务的资源浪费和时间成本增加。

37、(4)本发明方法通过定期更新检查点信息并存储到可靠的存储介质中,保证了检查点信息的可靠性和可用性。

本文地址:https://www.jishuxx.com/zhuanli/20241120/334200.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。