CN110716943B - 缺失数据补录方法、装置、计算机设备及存储介质 - Google Patents
缺失数据补录方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110716943B CN110716943B CN201910843650.5A CN201910843650A CN110716943B CN 110716943 B CN110716943 B CN 110716943B CN 201910843650 A CN201910843650 A CN 201910843650A CN 110716943 B CN110716943 B CN 110716943B
- Authority
- CN
- China
- Prior art keywords
- task
- data complement
- tasks
- data
- complement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及数据处理领域,通过对定时任务事务处理过程的优化,实现缺失数据的快速补录,具体提供了一种缺失数据补录方法、装置、设备及存储介质。方法包括:根据获取到的每个失败定时任务标识信息获取对应的任务执行逻辑和任务指定执行时间,生成多个数据补录任务;为每个数据补录任务设置任务状态标识变量;调用预先设置的项目容器;启动项目容器加载多个数据补录任务并触发创建一个新线程,利用新线程通过轮询机制执行数据补录任务;根据任务状态标识变量监测数据补录任务,在多个数据补录任务全部执行完成时,结束线程。通过该方法,实现了失败定时任务自动执行,解决了手动补录缺失数据效率低且易出错的问题,提高了数据处理的效率和准确性。
Description
技术领域
本申请涉及数据处理领域,尤其涉及一种缺失数据补录方法、装置、计算机设备及存储介质。
背景技术
随着企业各种不同业务的开展,通常需要定时生成一些数据报表、管理报告、状态跟踪表和文本文档等各种任务。服务器通常需要同时处理多个任务,其中任务包括生成各种数据报表、管理报告和文本文档等。目前,这些数据报表、管理报告和文本文档一般是采用定时任务的方法来自动完成的。但在实际操作过程中,常常会出现定时任务完成失败的情况。现有的方式是在定时任务自动完成失败后选择增加手动生成的方式来确保定时任务的完成。但是手动生成的方式过程复杂,效率低且出错率高。因此,有必要提供一种缺失数据补录方法以解决上述问题。
发明内容
本申请提供了一种缺失数据补录方法、装置、计算机设备及存储介质,通过自动获取失败定时任务信息,生成数据补录任务,使用项目容器自动加载数据补录任务并执行,解决了手动补录缺失数据效率低且容易出错的问题,提高了数据处理的效率和准确性。
第一方面,本申请提供了一种缺失数据补录方法,所述方法包括:
获取多个失败定时任务的任务标识信息,根据每个所述任务标识信息获取对应的任务执行逻辑和任务指定执行时间;
根据所述任务执行逻辑生成任务执行逻辑函数以及根据所述任务指定执行时间生成指定执行时间函数;
根据所述任务执行逻辑函数和所述指定执行时间函数生成多个数据补录任务;
生成任务状态信息数组,所述任务状态信息数组用于记录所述每个数据补录任务的任务状态标识变量的值;
调用预先设置的项目容器,启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务;
根据所述任务状态信息数组里的任务状态标识变量监测所述数据补录任务,并在所述多个数据补录任务全部执行完成时,结束所述线程。
第二方面,本申请还提供了一种缺失数据补录装置,所述装置包括:
信息获取模块,用于获取多个失败定时任务的任务标识信息,根据每个所述任务标识信息获取对应的任务执行逻辑和任务指定执行时间;
函数生成模块,用于根据所述任务执行逻辑生成任务执行逻辑函数以及根据所述任务指定执行时间生成指定执行时间函数;
任务生成模块,用于根据所述任务执行逻辑函数和所述指定执行时间函数生成多个数据补录任务;
数组生成模块,用于生成任务状态信息数组,所述任务状态信息数组用于记录所述每个数据补录任务的任务状态标识变量的值;
任务执行模块,用于调用预先设置的项目容器,启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务;
任务监测模块,用于根据所述任务状态信息数组里的任务状态标识变量监测所述数据补录任务,并在所述多个数据补录任务全部执行完成时,结束所述线程。
第三方面,本申请还提供了一种计算机设备,所述计算机设备包括存储器和处理器;所述存储器用于存储计算机程序;所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如上述的缺失数据补录方法。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如上述的缺失数据补录方法。
本申请公开了一种缺失数据补录方法、装置、设备及存储介质,通过根据获取到的每个失败定时任务标识信息获取对应的任务执行逻辑和任务指定执行时间,生成多个数据补录任务;为每个数据补录任务设置任务状态标识变量;调用预先设置的项目容器;启动项目容器加载多个数据补录任务并触发创建一个新的线程,利用线程通过轮询机制执行数据补录任务;根据任务状态标识变量监测数据补录任务,并在多个数据补录任务全部执行完成时,结束线程。通过该数据补录方法,实现了失败定时任务的自动执行,解决了手动补录缺失数据效率低且容易出错的问题,提高了数据处理的效率和准确性,从而节省了人力成本,提高工作效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的实施例提供的一种缺失数据补录方法的示意流程图;
图2是图1中的缺失数据补录方法的子步骤示意流程图;
图3是本申请的实施例提供的另一种缺失数据补录方法的示意流程图;
图4是本申请的实施例提供的一种缺失数据补录装置的示意性框图;
图5是本申请的实施例提供的另一种缺失数据补录装置的示意性框图;
图6为本申请的实施例提供的另一种缺失数据补录装置的示意性框图;
图7为本申请的实施例提供的一种计算机设备的结构示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本申请的实施例提供了一种缺失数据补录方法、装置、计算机设备及存储介质。其中,该缺失数据补录方法可以应用于服务器中,其中服务器可以为独立的服务器,也可以为服务器集群。通过该缺失数据补录方法,实现了失败定时任务的自动执行,解决了手动补录缺失数据效率低且容易出错的问题,提高了数据处理的效率和准确性。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参阅图1,图1是本申请的实施例提供的一种缺失数据补录方法的示意流程图。如图1所示,该缺失数据补录方法具体包括步骤S101至S106。
S101、获取多个失败定时任务的任务标识信息,根据每个所述任务标识信息获取对应的任务执行逻辑和任务指定执行时间。
定时任务系统中的每个定时任务都设置有相应的任务标识信息和任务执行逻辑,并在定时任务执行后生成记录,通过查询定时任务的生成记录,筛选出多个执行失败的定时任务,即为失败定时任务。获取多个失败定时任务对应的任务标识信息,并根据每个任务标识信息获取对应的任务执行逻辑和任务指定执行时间。
任务执行逻辑为定时任务具体的实现方式,包括数据库访问逻辑,任务数据信息的获取逻辑,以及按照定时任务需求将数据信息整合生成用户所需目标文件的逻辑。具体还可以包括目标文件存储逻辑,目标文件调用逻辑,或者目标文件展示逻辑等。
任务指定执行时间是指失败定时任务重新执行的时间,为了保证数据补录任务到期执行,任务指定执行时间需为当前时间以后的某个时间点,例如,当前时间为上午10点,则数据补录任务执行时间需在10点以后,具体时间点可以根据实际操作情况和用户需求设置。
S102、根据所述任务执行逻辑生成任务执行逻辑函数以及根据所述任务指定执行时间生成指定执行时间函数。
对应于每个失败定时任务,根据获取到的任务执行逻辑生成对应的任务执行逻辑函数,根据获取到的任务指定执行时间生成对应的指定执行时间函数函数。
任务执行逻辑函数和指定执行时间函数为编程语言中的自定义函数,是可以实现相应功能的功能模块。一般情况下,一个自定义函数包括:访问修饰符、返回值类型、函数名、参数列表、方法体。其中,访问修饰符可以省略;如果函数不返回任何值,则返回值类型可以设置为void;函数名是为函数定义的名称;参数列表根据具体情况设置;方法体为该函数需要实现的特定操作。
此外,为了使项目容器能够通过接口的方式加载每个失败定时任务,所有需要执行的失败定时任务的任务执行逻辑函数和指定执行时间函数的函数名称需相同。
S103、根据所述任务执行逻辑函数和所述指定执行时间函数生成多个数据补录任务。
对应于需要执行的每个失败定时任务,根据对应的任务执行逻辑函数和指定执行时间函数组合生成相应的数据补录任务。每个数据补录任务至少包括对应的任务执行逻辑函数和指定执行时间函数,当然还包括其他功能函数。
S104、生成任务状态信息数组,所述任务状态信息数组用于记录所述每个数据补录任务的任务状态标识变量的值。
具体地,为了监控每个数据补录任务的任务执行状态,生成任务状态信息数组,所述任务状态信息数组用于记录需要执行的多个数据补录任务对应的任务标识信息与任务状态标识变量。
在一些实施例中,所述生成任务状态信息数组,包括:为每个数据补录任务设置对应的任务状态标识变量;将所述数据补录任务对应的任务标识信息与任务状态标识变量对应存储在任务状态信息数组里,所述任务状态标识变量值根据所述补录任务的执行状态表示为未执行和已执行。
具体地,根据生成的多个数据补录任务,为每个数据补录任务设置对应的任务状态标识变量,所述任务状态标识变量和任务标识信息形成一一对应关系存储在任务状态信息数组里。定时系统初始化时,所有数据补录任务的任务状态标识变量默认值表示为未执行,当某一个数据补录任务执行一次后,对应的任务状态标识变量值重置为已执行。为了避免重复执行数据补录任务,不管该数据补录任务是否执行成功,只要该数据补录任务执行过一次,都将任务状态标识变量值置为已执行。
在一些实施例中,任务状态标识变量值可设置“0”表示为未执行、设置“1”表示为已执行,当然也可以设置“false”表示为未执行、设置“true”表示为已执行。
S105、调用预先设置的项目容器,启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务。
具体地,利用Java编程语言的项目容器中事件监听机制实现多个数据补录任务的自动执行。定时系统启动时,直接调用并启动预先设置的项目容器,并初始化项目容器,通过调用事件接口的方式加载所述多个数据补录任务,为了不影响项目容器启动及占用启动时间,新建一个线程依次执行多个数据补录任务,并启动预先设置的轮询机制。
在一些实施例中,当然也可以建立多个线程,采用并行的方式同时执行多个数据补录任务。是否建立多个线程可根据多个任务指定执行时间确定,具体过程为:判断多个任务指定执行时间是否存在相同的时间;多个任务指定执行时间存在相同的时间,确定相同的多个任务指定执行时间对应的任务数量,新建与所述任务数量相同的线程在所述任务指定执行时间并行执行多个数据补录任务。
在一些实施方式中,所述启动所述项目容器加载多个所述数据补录任务,包括:根据任务指定执行时间对多个数据补录任务进行排序;根据多个数据补录任务的排序顺序,依次将多个数据补录任务加载到所述项目容器中。由此提高任务的处理速度和效率。
在一个实施例中,如图2所示,步骤S105具体包括:
S105a、获取轮询机制对应的轮询周期;S105b、根据所述轮询周期查询所述任务状态信息数组里的各任务状态标识变量值;S105c、根据所述数据补录任务对应的状态标识变量的查询结果和所述任务指定执行时间利用所述线程执行所述数据补录任务。
具体地,轮询周期为轮询机制自动触发的时间周期,比如为每两小时自动触发,每天自动触发或每周自动触发等。根据轮询周期,到达轮询机制的自动触发时间时,定时系统自动触发轮询机制,并发送查询任务状态标识变量值请求命令,服务器响应该请求,依次查询任务状态信息数组里的各任务状态标识变量值。
所述根据所述数据补录任务对应的状态标识变量的查询结果和所述任务指定执行时间利用所述线程执行所述数据补录任务,包括:
若所述数据补录任务对应的状态标识变量值表示未执行,将所述任务指定执行时间与当前时间进行比较;若所述任务指定执行时间在当前时间之前,不执行所述数据补录任务,将所述数据补录任务对应的状态标识变量置为已执行;若所述任务指定执行时间到达当前时间,按照所述数据补录任务的任务执行逻辑执行所述数据补录任务,并在所述数据补录任务执行完成后将所述数据补录任务的任务状态标识变量置为已执行;若所述任务指定执行时间在当前时间之后,不执行所述数据补录任务,保持所述数据补录任务的任务状态标识变量不变。
具体地,若某数据补录任务的任务状态标识变量值为true,则表示该数据补录任务已经执行过一次,不再执行;若为false,则比较当前时间和任务指定执行时间,若任务指定执行时间在当前时间之前,说明该数据补录任务已经过期,将状态标识变量置为true,该数据补录任务不再执行,对应的日志文件里记录该数据补录任务的执行结果为“任务已过期,不执行”;若任务指定执行时间等于当前时间,则按照该数据补录任务的任务执行逻辑执行该数据补录任务,并在数据补录任务执行完成后将该数据补录任务的任务状态标识变量置为true;若任务指定执行时间在当前时间之后,则不执行该数据补录任务,对应的任务状态标识变量不变。
在一些实施例中,如图3所示,步骤S105之前,还包括创建项目容器的步骤,该步骤具体包括S201和S202。
S201、根据所述指定执行时间函数和所述任务执行逻辑函数设置事件接口以创建项目容器,所述事件接口用于加载所述多个数据补录任务。
对于项目容器中每个明确事件的发生,都相应的设置一个明确事件的执行方式,这些执行方式都集中定义在事件接口中。当项目容器初始化时,项目容器会自动加载实现了事件接口的事件。
根据指定执行时间函数和任务执行逻辑函数设置事件接口,包括设置事件执行方式,具体包括:根据所述指定执行时间函数设置任务指定执行时间接口函数;根据所述任务执行逻辑函数设置任务执行逻辑接口函数;根据所述任务指定执行时间接口函数和所述任务执行逻辑接口函数确定事件接口。指定执行时间接口函数为数据补录任务中的指定执行时间函数的集合,任务执行逻辑接口函数为数据补录任务中的任务执行逻辑函数的集合。
S202、为所述项目容器配置一个继承类,所述继承类继承事件监听器接口。
当项目容器初始化时,项目容器会自动加载实现了事件接口的事件,事件监听器可以监听到这些事件。定时系统启动运行,项目容器初始化,事件接口方式被触发,数据补录任务就可以通过实现该监听器接口事件执行方式来完成相应的数据补录任务。采用接口模式,可增强代码的可读性、扩展性和可维护性,便于以后系统扩展。
S106、根据所述任务状态信息数组里的任务状态标识变量监测所述数据补录任务,并在所述多个数据补录任务全部执行完成时,结束所述线程。
具体地,判断所述任务状态信息数组里每个任务状态标识变量是否全为已执行,若所述任务状态信息数组里每个任务状态标识变量全为已执行,则表示所有数据补录任务已经执行完成,所述线程结束,若所述任务状态信息数组里每个任务状态标识变量不全为已执行,则表示还有数据补录任务未执行,触发所述轮询机制,通过所述轮询机制执行数据补录任务。
上述缺失数据补录方法通过根据获取到的每个失败定时任务标识信息获取对应的任务执行逻辑和任务指定执行时间,生成多个数据补录任务;为每个数据补录任务设置任务状态标识变量;调用预先设置的项目容器;启动项目容器加载多个数据补录任务并触发创建一个新的线程,利用线程通过轮询机制执行数据补录任务;根据任务状态标识变量监测数据补录任务,并在多个数据补录任务全部执行完成时,结束线程。通过该数据补录方法,实现了失败定时任务的自动执行,解决了手动补录缺失数据效率低且容易出错的问题,提高了数据处理的效率和准确性,从而节省了人力成本,提高工作效率。
请参阅图4,图4是本申请的实施例提供一种缺失数据补录装置的示意性框图,该缺失数据补录装置用于执行前述的缺失数据补录方法。其中,该缺失数据补录装置可以配置于服务器。
如图4所示,该缺失数据补录装置400,包括:信息获取模块401、函数生成模块402、任务生成模块403、数组生成模块404、任务执行模块405和任务监测模块406。
信息获取模块401,用于获取多个失败定时任务的任务标识信息,根据每个所述任务标识信息获取对应的任务执行逻辑和任务指定执行时间。
函数生成模块402,用于根据所述任务执行逻辑生成任务执行逻辑函数以及根据所述任务指定执行时间生成指定执行时间函数。
任务生成模块403,用于根据所述任务执行逻辑函数和所述指定执行时间函数生成多个数据补录任务。
数组生成模块404,用于生成任务状态信息数组,所述任务状态信息数组用于记录所述每个数据补录任务的任务状态标识变量的值。
在一个实施例中,数组生成模块404,具体用于:为每个数据补录任务设置对应的任务状态标识变量;将所述数据补录任务对应的任务标识信息与任务状态标识变量对应存储在任务状态信息数组里,所述任务状态标识变量值根据所述补录任务的执行状态表示为未执行和已执行。
任务执行模块405,用于调用预先设置的项目容器,启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务。
在一个实施例中,任务执行模块405,具体用于:根据任务指定执行时间对多个数据补录任务进行排序;根据多个数据补录任务的排序顺序,依次将多个数据补录任务加载到所述项目容器中。
在另一个实施例中,如图5所示,任务执行模块405,具体包括:周期获取子模块4051、变量查询子模块4052和数据补录子模块4053。
周期获取子模块4051,用于获取轮询机制对应的轮询周期;变量查询子模块4052,用于根据所述轮询周期查询所述任务状态信息数组里的各任务状态标识变量值;数据补录子模块4053,用于根据所述数据补录任务对应的状态标识变量的查询结果和所述任务指定执行时间利用所述线程执行所述数据补录任务。
任务监测模块406,用于根据所述任务状态信息数组里的任务状态标识变量监测所述数据补录任务,并在所述多个数据补录任务全部执行完成时,结束所述线程。
请参阅图6,图6是本申请的实施例提供的另一种缺失数据补录装置的示意性框图,该缺失数据补录装置用于执行前述的缺失数据补录方法。其中,该缺失数据补录装置可以配置于服务器。
如图6所示,该缺失数据补录装置600,包括:容器创建模块601、继承配置模块602、信息获取模块603、函数生成模块604、任务生成模块605、数组生成模块606、任务执行模块607和任务监测模块608。
容器创建模块601,用于根据所述指定执行时间函数和所述任务执行逻辑函数设置事件接口以创建项目容器,所述事件接口用于加载所述多个数据补录任务。
其中,在一个实施例中,容器创建模块601,具体用于:根据所述指定执行时间函数设置任务指定执行时间接口函数;根据所述任务执行逻辑函数设置任务执行逻辑接口函数;根据所述任务指定执行时间接口函数和所述任务执行逻辑接口函数确定事件接口。
继承配置模块602,用于为所述项目容器配置一个继承类,所述继承类继承事件监听器接口。
信息获取模块603,用于获取多个失败定时任务的任务标识信息,根据每个所述任务标识信息获取对应的任务执行逻辑和任务指定执行时间。
函数生成模块604,用于根据所述任务执行逻辑生成任务执行逻辑函数以及根据所述任务指定执行时间生成指定执行时间函数。
任务生成模块605,用于根据所述任务执行逻辑函数和所述指定执行时间函数生成多个数据补录任务。
数组生成模块606,用于生成任务状态信息数组,所述任务状态信息数组用于记录所述每个数据补录任务的任务状态标识变量的值。
任务执行模块607,用于调用预先设置的项目容器,启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务。
任务监测模块608,用于根据所述任务状态信息数组里的任务状态标识变量监测所述数据补录任务,并在所述多个数据补录任务全部执行完成时,结束所述线程。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
上述的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图7所示的计算机设备上运行。
请参阅图7,图7是本申请的实施例提供的一种计算机设备的结构示意性框图。该计算机设备可以是服务器。
参阅图7,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种缺失数据补录方法。
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种缺失数据补录方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理模块(Central ProcessingUnit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一些实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
获取多个失败定时任务的任务标识信息,根据每个所述任务标识信息获取对应的任务执行逻辑和任务指定执行时间;根据所述任务执行逻辑生成任务执行逻辑函数以及根据所述任务指定执行时间生成指定执行时间函数;根据所述任务执行逻辑函数和所述指定执行时间函数生成多个数据补录任务;生成任务状态信息数组,所述任务状态信息数组用于记录所述每个数据补录任务的任务状态标识变量的值;调用预先设置的项目容器,启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务;根据所述任务状态信息数组里的任务状态标识变量监测所述数据补录任务,并在所述多个数据补录任务全部执行完成时,结束所述线程。
在一些实施例中,所述处理器在实现所述生成任务状态信息数组时,具体用于实现:
为每个数据补录任务设置对应的任务状态标识变量;将所述数据补录任务对应的任务标识信息与任务状态标识变量对应存储在任务状态信息数组里,所述任务状态标识变量值根据所述补录任务的执行状态表示为未执行和已执行。
在一些实施例中,所述处理器在实现所述调用预先设置的项目容器之前,还用于实现:
根据所述指定执行时间函数和所述任务执行逻辑函数设置事件接口以创建项目容器,所述事件接口用于加载所述多个数据补录任务;为所述项目容器配置一个继承类,所述继承类继承事件监听器接口。
在一些实施例中,所述处理器在实现所述根据所述指定执行时间函数和所述任务执行逻辑函数设置事件接口以创建项目容器时,具体用于实现:
根据所述指定执行时间函数设置任务指定执行时间接口函数;根据所述任务执行逻辑函数设置任务执行逻辑接口函数;根据所述任务指定执行时间接口函数和所述任务执行逻辑接口函数确定事件接口。
在一些实施例中,所述处理器在实现所述启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务时,具体用于实现:
根据任务指定执行时间对多个数据补录任务进行排序;根据多个数据补录任务的排序顺序,依次将多个数据补录任务加载到所述项目容器中。
在一些实施例中,所述处理器在实现所述启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务时,具体用于实现:
获取轮询机制对应的轮询周期;根据所述轮询周期查询所述任务状态信息数组里的各任务状态标识变量值;根据所述数据补录任务对应的状态标识变量的查询结果和所述任务指定执行时间利用所述线程执行所述数据补录任务。
在一些实施例中,所述处理器在实现所述根据所述数据补录任务对应的状态标识变量的查询结果和所述任务指定执行时间利用所述线程执行所述数据补录任务,具体用于实现:
若所述数据补录任务对应的状态标识变量值表示未执行,将所述任务指定执行时间与当前时间进行比较;若所述任务指定执行时间到达当前时间,按照所述数据补录任务的任务执行逻辑执行所述数据补录任务,并在所述数据补录任务执行完成后将所述数据补录任务的任务状态标识变量置为已执行;若所述任务指定执行时间在当前时间之后,不执行所述数据补录任务,保持所述数据补录任务的任务状态标识变量不变。
本申请的实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现本申请实施例提供的任一项缺失数据补录方法。
其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储模块,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种缺失数据补录方法,其特征在于,包括:
获取多个失败定时任务的任务标识信息,根据每个所述任务标识信息获取对应的任务执行逻辑和任务指定执行时间;
根据所述任务执行逻辑生成任务执行逻辑函数以及根据所述任务指定执行时间生成指定执行时间函数;
根据所述任务执行逻辑函数和所述指定执行时间函数生成多个数据补录任务;
生成任务状态信息数组,所述任务状态信息数组用于记录所述每个数据补录任务的任务状态标识变量的值;
调用预先设置的项目容器,启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务;其中,在所述调用预先设置的项目容器之前,还包括:根据所述指定执行时间函数设置任务指定执行时间接口函数;根据所述任务执行逻辑函数设置任务执行逻辑接口函数;根据所述任务指定执行时间接口函数和所述任务执行逻辑接口函数确定事件接口,所述事件接口用于加载所述多个数据补录任务;为所述项目容器配置一个继承类,所述继承类继承事件监听器接口;其中,所述启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务,包括:获取轮询机制对应的轮询周期;根据所述轮询周期查询所述任务状态信息数组里的各任务状态标识变量值;若所述数据补录任务对应的状态标识变量值表示未执行,将所述任务指定执行时间与当前时间进行比较;若所述任务指定执行时间到达当前时间,按照所述数据补录任务的任务执行逻辑执行所述数据补录任务,并在所述数据补录任务执行完成后将所述数据补录任务的任务状态标识变量置为已执行;若所述任务指定执行时间在当前时间之后,不执行所述数据补录任务,保持所述数据补录任务的任务状态标识变量不变;
根据所述任务状态信息数组里的任务状态标识变量监测所述数据补录任务,并在多个数据补录任务全部执行完成时,结束所述线程。
2.根据权利要求1所述的缺失数据补录方法,其特征在于,所述生成任务状态信息数组,包括:
为每个数据补录任务设置对应的任务状态标识变量;
将所述数据补录任务对应的任务标识信息与任务状态标识变量对应存储在任务状态信息数组里,所述任务状态标识变量值根据所述补录任务的执行状态表示为未执行和已执行。
3.根据权利要求1所述的缺失数据补录方法,其特征在于,所述启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务,包括:
根据任务指定执行时间对多个数据补录任务进行排序;
根据多个数据补录任务的排序顺序,依次将多个数据补录任务加载到所述项目容器中。
4.一种缺失数据的补录装置,其特征在于,包括:
信息获取模块,用于获取多个失败定时任务的任务标识信息,根据每个所述任务标识信息获取对应的任务执行逻辑和任务指定执行时间;
函数生成模块,用于根据所述任务执行逻辑生成任务执行逻辑函数以及根据所述任务指定执行时间生成指定执行时间函数;
任务生成模块,用于根据所述任务执行逻辑函数和所述指定执行时间函数生成多个数据补录任务;
数组生成模块,用于生成任务状态信息数组,所述任务状态信息数组用于记录所述每个数据补录任务的任务状态标识变量的值;
任务执行模块,用于调用预先设置的项目容器,启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务;其中,在所述调用预先设置的项目容器之前,还包括:根据所述指定执行时间函数设置任务指定执行时间接口函数;根据所述任务执行逻辑函数设置任务执行逻辑接口函数;根据所述任务指定执行时间接口函数和所述任务执行逻辑接口函数确定事件接口,所述事件接口用于加载所述多个数据补录任务;为所述项目容器配置一个继承类,所述继承类继承事件监听器接口;其中,所述启动所述项目容器加载多个所述数据补录任务并触发创建一个新的线程,利用所述线程通过轮询机制执行所述数据补录任务,包括:获取轮询机制对应的轮询周期;根据所述轮询周期查询所述任务状态信息数组里的各任务状态标识变量值;若所述数据补录任务对应的状态标识变量值表示未执行,将所述任务指定执行时间与当前时间进行比较;若所述任务指定执行时间到达当前时间,按照所述数据补录任务的任务执行逻辑执行所述数据补录任务,并在所述数据补录任务执行完成后将所述数据补录任务的任务状态标识变量置为已执行;若所述任务指定执行时间在当前时间之后,不执行所述数据补录任务,保持所述数据补录任务的任务状态标识变量不变;
任务监测模块,用于根据所述任务状态信息数组里的任务状态标识变量监测所述数据补录任务,并在多个数据补录任务全部执行完成时,结束所述线程。
5.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如权利要求1至3中任一项所述的缺失数据补录方法。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如权利要求1至3中任一项所述的缺失数据补录方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910843650.5A CN110716943B (zh) | 2019-09-06 | 2019-09-06 | 缺失数据补录方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910843650.5A CN110716943B (zh) | 2019-09-06 | 2019-09-06 | 缺失数据补录方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110716943A CN110716943A (zh) | 2020-01-21 |
CN110716943B true CN110716943B (zh) | 2023-10-27 |
Family
ID=69210343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910843650.5A Active CN110716943B (zh) | 2019-09-06 | 2019-09-06 | 缺失数据补录方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110716943B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112307002A (zh) * | 2020-11-02 | 2021-02-02 | 成都中科大旗软件股份有限公司 | 一种数据补偿的方法、系统及计算机可读存储介质 |
CN112965799B (zh) * | 2021-03-05 | 2023-08-18 | 北京百度网讯科技有限公司 | 任务状态的提示方法、装置、电子设备和介质 |
CN114691274A (zh) * | 2022-03-31 | 2022-07-01 | 中国建设银行股份有限公司 | 数据处理方法、装置、设备、介质及产品 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3026603A1 (en) * | 2014-11-28 | 2016-06-01 | Yokogawa Electric Corporation | Task support terminal apparatus, task support method, program, and recording medium |
CN105700937A (zh) * | 2016-01-04 | 2016-06-22 | 北京百度网讯科技有限公司 | 多线程任务处理方法和装置 |
CN107368359A (zh) * | 2017-05-31 | 2017-11-21 | 杭州大搜车汽车服务有限公司 | 一种异步任务执行方法及其存储介质、装置 |
CN108897610A (zh) * | 2018-06-15 | 2018-11-27 | 上海陆家嘴国际金融资产交易市场股份有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
CN109542591A (zh) * | 2018-10-17 | 2019-03-29 | 深圳壹账通智能科技有限公司 | 工作任务补偿处理方法、装置、计算机设备及存储介质 |
CN109739849A (zh) * | 2019-01-02 | 2019-05-10 | 山东省科学院情报研究所 | 一种数据驱动的网络敏感信息挖掘与预警平台 |
CN109901926A (zh) * | 2019-01-25 | 2019-06-18 | 平安科技(深圳)有限公司 | 基于大数据行为调度应用任务的方法、服务器及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140081685A1 (en) * | 2012-09-17 | 2014-03-20 | Salesforce.com. inc. | Computer implemented methods and apparatus for universal task management |
-
2019
- 2019-09-06 CN CN201910843650.5A patent/CN110716943B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3026603A1 (en) * | 2014-11-28 | 2016-06-01 | Yokogawa Electric Corporation | Task support terminal apparatus, task support method, program, and recording medium |
CN105700937A (zh) * | 2016-01-04 | 2016-06-22 | 北京百度网讯科技有限公司 | 多线程任务处理方法和装置 |
CN107368359A (zh) * | 2017-05-31 | 2017-11-21 | 杭州大搜车汽车服务有限公司 | 一种异步任务执行方法及其存储介质、装置 |
CN108897610A (zh) * | 2018-06-15 | 2018-11-27 | 上海陆家嘴国际金融资产交易市场股份有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
CN109542591A (zh) * | 2018-10-17 | 2019-03-29 | 深圳壹账通智能科技有限公司 | 工作任务补偿处理方法、装置、计算机设备及存储介质 |
CN109739849A (zh) * | 2019-01-02 | 2019-05-10 | 山东省科学院情报研究所 | 一种数据驱动的网络敏感信息挖掘与预警平台 |
CN109901926A (zh) * | 2019-01-25 | 2019-06-18 | 平安科技(深圳)有限公司 | 基于大数据行为调度应用任务的方法、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110716943A (zh) | 2020-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110716943B (zh) | 缺失数据补录方法、装置、计算机设备及存储介质 | |
US10956213B1 (en) | Automated workflow creation and management | |
US20230025917A1 (en) | Task scheduling method and apparatus | |
US9690574B2 (en) | System, method, and computer-readable medium for development and deployment of self-describing controlled device modules in a control system | |
RU2429529C2 (ru) | Динамическое конфигурирование, выделение и развертывание вычислительных систем | |
US10585659B2 (en) | Enabling tenant administrators to initiate request driven peak-hour builds to override off-peak patching schedules | |
US8839107B2 (en) | Context based script generation | |
CN110825420A (zh) | 分布式集群的配置参数更新方法、装置、设备及存储介质 | |
CN111930354B (zh) | 一种用于软件开发的框架组件系统及其构建方法 | |
CN113190513A (zh) | 一种数据集成系统及方法 | |
CN113791794B (zh) | 面向超算应用的算例自动部署方法及系统 | |
US20110078657A1 (en) | Operation management server, rollback execution method, and rollback execution program | |
US20110270946A1 (en) | Service providing apparatus, service providing system, service providing method, and storage medium | |
CN112379989B (zh) | 一种定时任务进程与队列服务进程管理系统及方法 | |
US20150055169A1 (en) | Extendable system for preprocessing print document and method for the same | |
CN113608831B (zh) | 一种插件实例管理方法、系统、存储介质及设备 | |
CN116048476A (zh) | 命令行工具执行方法、装置、介质及设备 | |
CN110674214B (zh) | 大数据同步方法、装置、计算机设备及存储介质 | |
CN114138364A (zh) | 应用信息加载控制系统和应用信息加载方法 | |
CN107577546B (zh) | 一种信息处理方法、装置及电子设备 | |
US20080313644A1 (en) | System analysis apparatus and system analysis method | |
CN112418796B (zh) | 子流程任务节点激活方法、装置、电子设备及存储介质 | |
CN116560722B (zh) | 运维流程处理方法、装置、电子设备及存储介质 | |
KR102621742B1 (ko) | 노코드 기반 자동화 서비스 플랫폼을 이용한 자동화서비스 시스템과 그 방법 및 컴퓨터 프로그램 | |
CN116187934A (zh) | 基于剧本文件的自动化管理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |