CN104021043B - 批量应用程序的中断重入方法及系统 - Google Patents

批量应用程序的中断重入方法及系统 Download PDF

Info

Publication number
CN104021043B
CN104021043B CN201410283715.2A CN201410283715A CN104021043B CN 104021043 B CN104021043 B CN 104021043B CN 201410283715 A CN201410283715 A CN 201410283715A CN 104021043 B CN104021043 B CN 104021043B
Authority
CN
China
Prior art keywords
application program
batch application
interruption
batch
reentry
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
Application number
CN201410283715.2A
Other languages
English (en)
Other versions
CN104021043A (zh
Inventor
夏理
韩玉忠
黄鸿滨
蔡震
陈亚坤
王和燕
王博
闫杨
王�华
尹杰
周凌
彭丰华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bank of China Ltd
Original Assignee
Bank of China Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN201410283715.2A priority Critical patent/CN104021043B/zh
Publication of CN104021043A publication Critical patent/CN104021043A/zh
Application granted granted Critical
Publication of CN104021043B publication Critical patent/CN104021043B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种批量应用程序的中断重入方法及系统,该方法包括:针对所述批量应用程序的类型,以及以所述批量应用程序相关的输入文件和/或输出文件的规模、运行时间以及所述批量应用程序对数据表进行更新操作的数据的规模中的至少两者为相应中断重入机制的准入条件的参数,来选择相应的中断重入机制;以及执行所选择的中断重入机制。本发明能够保证当异常中断发生时的应用系统数据的正确性、一致性和完整性,降低中断重入过程对系统资源的消耗。

Description

批量应用程序的中断重入方法及系统
技术领域
本发明涉及计算机应用程序重入技术领域,尤其涉及一种批量应用程序的中断重入方法及系统。
背景技术
在核心银行业务系统进行批量处理时,批量处理通常由银行系统运行维护人员触发,以在集中的时间处理批量的业务请求。在批量应用程序运行过程中,由于系统资源限制、业务数据问题、不可预知灾害发生等非正常情况导致应用程序中断,在批量应用程序中断时,如何在不重新恢复数据的情况下,保留应用程序最后正确执行的现场,并通过重新运行程序就可以继续处理业务请求,此外如何降低中断重入过程对系统资源的消耗,并保证应用系统数据的正确性、一致性和完整性,基于对上述几个方面的考虑,迫切需要引入批量应用程序中断重入的处理方法,提高整个应用系统的健壮性。
发明内容
针对上述技术问题,本发明提供了一种批量应用程序的中断重入方法,其针对不同类型的批量应用程序及其所需资源,灵活选择不同的中断重入机制,以降低中断重入过程对系统资源的消耗。
本发明提供的一种批量应用程序的中断重入方法,包括:针对所述批量应用程序的类型,以及以所述批量应用程序所处理的输入文件和/或输出文件的规模、运行时间以及对数据表进行更新操作的数据的规模中的至少两者为相应中断重入机制的准入条件的参数,来选择相应的中断重入机制;执行所选择的中断重入机制。
进一步地,当所选择的中断重入机制为第一中断重入机制时执行下列操作:判断在所述批量应用程序执行完所有业务逻辑处理之前是否发生中断,如是,则对所述批量应用程序所执行的所述业务逻辑处理进行回滚操作并且所述批量应用程序重新执行业务逻辑处理,否则,在所述批量应用程序执行完所有业务逻辑处理后,执行数据库提交操作;以及当所选择的中断重入机制为第二中断重入机制时执行下列操作:确定与所述批量应用程序相关的断点记录表中是否记录了断点信息,如是,则使所述批量应用程序从最近记录的断点所指示的下一条记录处继续执行业务逻辑处理,否则使所述批量应用程序从初始记录处开始处理;在所述批量应用程序执行所述业务逻辑处理的过程中,按第一预定频率执行数据库提交操作并每次记录提交点作为断点,其中如果所述批量应用程序需要输出其执行所述业务逻辑处理所得到的处理结果,将所述批量应用程序每次执行所述业务逻辑处理时所得到的处理结果均写入到临时表中,并且在所述批量应用程序执行完所有业务逻辑处理后,将所述临时表中的数据导出为所述输出文件。
进一步地,当所选择的中断重入机制为第三中断重入机制时执行下列操作:确定与所述批量应用程序相关的断点记录表中是否记录了断点信息,如是,则清理所述输出文件在最近记录的断点之后生成的垃圾数据,并使所述批量应用程序从最近记录的断点所指示的下一条记录处继续执行业务逻辑处理,否则,使所述批量应用程序从初始记录处开始处理;以及在所述批量应用程序执行所述业务逻辑处理的过程中,将处理结果写入到所述输出文件中,按第二预定频率执行所述数据库提交操作并每次记录提交点作为断点。
进一步地,其中所述批量应用程序的类型可以包括:第3类型批量应用程序,其批量执行:删除表记录;第4类型批量应用程序,其批量执行:读表,更新/删除/插入表;第5类型批量应用程序,其批量执行:读文件,更新/删除/插入表;第6类型批量应用程序,其批量执行:读表,更新/删除/插入表,写文件;以及第7类型批量应用程序,其批量执行:读文件,更新/删除/插入表,写文件。
进一步地,当所述批量应用程序的类型为所述第3、4或5类型时,根据所述准入条件来选择所述第一中断重入机制和所述第二中断重入机制中的一个;当所述批量应用程序的类型为所述第6类型时,根据所述准入条件来选择所述第二中断重入机制和所述第三中断重入机制中的一个;并且当所述批量应用程序的类型为所述第7类型时,根据所述准入条件来选择所述第一中断重入机制、所述第二中断重入机制和第三中断重入机制中的一个。
进一步地,选择所述第一中断重入机制的所述准入条件可以为:所述输入文件和/或所述输出文件的规模小于第一预定值、所述运行时间小于第二预定值并且对所述数据表进行更新操作的数据的规模小于第三预定值;选择所述第二中断重入机制的所述准入条件可以为:所述输入文件和/或所述输出文件的规模小于所述第一预定值和/或对所述数据表进行更新操作的数据的规模小于所述第三预定值,并且所述运行时间大于所述第二预定值;以及选择所述第三中断重入机制的所述准入条件可以为:所述输出文件的规模大于所述第一预定值、所述运行时间大于所述第二预定值并且对所述数据表进行更新操作的数据的规模大于第三预定值。
本发明另一方面还提供了一种批量应用程序的中断重入系统,该系统包括:准入判断模块,其配置为针对所述批量应用程序的类型,以及以所述批量应用程序所处理的输入文件和/或输出文件的规模、运行时间以及对数据表进行更新操作的数据的规模中的至少两者为相应中断重入机制的准入条件的参数,来选择相应的中断重入机制;以及中断重入模块,其配置为:执行所选择的中断重入机制。
通过本发明提供的批量应用程序的中断重入方法及中断重入系统,针对不同类型的批量应用程序及批量应用程序可能消耗的资源(例如,输入文件和/或输出文件的规模、运行时间、对数据表进行更新操作的数据的规模等),灵活选择不同的中断重入机制,以降低中断重入过程对系统资源的消耗。
附图说明
图1是本发明实施例的批量应用程序的中断重入方法的流程图;
图2是表示不同批量程序类型和三种重入机制之间的关联关系的图;
图3是第一中断重入机制的处理步骤的示例的流程图;
图4是第二中断重入机制的处理步骤的示例的流程图;以及
图5是第三中断重入机制的处理步骤的示例的流程图。
具体实施方式
为使本领域技术人员更好地理解本发明,下面参照附图对本发明的实施例进行详细说明。
图1是本发明实施例的批量应用程序的中断重入方法的流程图。如图1所示,本发明实施例的批量应用程序的中断重入方法包括:针对批量应用程序的类型,以及以批量应用程序所处理的输入文件和/或输出文件的规模、运行时间以及对数据表进行更新操作的数据的规模中的至少两者为相应中断重入机制的准入条件的参数,来选择相应的中断重入机制;以及执行所选择的中断重入机制。
通过本发明提供的批量应用程序的中断重入方法,针对不同类型的批量应用程序及其所消耗的资源(例如,输入文件和/或输出文件的规模、运行时间、对数据表进行更新操作的数据的规模等),灵活选择不同的中断重入机制,以降低中断重入过程对系统资源的消耗。
下面将对本发明实施例进行更详细的说明。
本发明实施例主要针对7类常见的批量应用程序(为简要描述的目的,在下文中,“批量应用程序”也称为“批量程序”):
1.读表,写文件
2.读文件,写文件
3.删除表记录
4.读表,更新/删除/插入表
5.读文件,更新/删除/插入表
6.读表,更新/删除/插入表,写文件
7.读文件,更新/删除/插入表,写文件
对于第1、2类批量程序,没有对表的输出,不存在数据库提交操作(即,COMMIT)的问题,无需记录断点,本实施例中不考虑对第1、2类程序进行处理;其他类型的程序可以根据程序处理数据的规模和运行时间,根据需要决定是否记录COMMIT点作为断点,其中对于第6、7类程序,需要将输出文件记入临时表,然后通过其他程序将数据导入文件供后继程序或者其他系统使用,如果输出文件特别巨大,则需要新增程序单独对文件进行重入,以保留最后一次COMMIT点前的所有处理记录在表和文件中一致。具体而言,在本发明实施例中,设计了三种批量重入处理机制。
1.第一中断重入机制(本实施例中,又称为“一次COMMIT程序重入”):对于处理数据量小且批量运行时间较短的批量应用程序在最后结束前下一次COMMIT,如果出错,则整个批量程序都回滚(即ROLLBACK);
2.第二中断重入机制(本实施例中,又称为“多笔COMMIT,无输出文件重入”):批量程序按一定频率进行COMMIT,每次COMMIT时记录COMMIT点作为断点,如果出错,批量程序从断点的下一条记录继续处理,将批量程序的输出记录到临时表中,批量程序处理完成后,新增程序将临时表中的数据导出供后继使用;
3.第三中断重入机制(本实施例中,又称为“多笔COMMIT,有输出文件重入”):批量程序按一定频率进行COMMIT,每次COMMIT时记录COMMIT点作为断点,批量程序的输出文件保留,批量程序按一定频率记录断点,如果出错,新增程序单独对输出文件进行处理,保证断点时处理的表和文件中的数据一致,批量程序从上次记录断点的下一条记录继续处理。
参见图2,图2给出了上述不同批量程序类型和三种重入机制之间的关联关系。从图2中可以看到,当批量应用程序的类型为第3、4或5类型时,选择第一中断重入机制和第二中断重入机制中的一个;当批量应用程序的类型为第6类型时,选择第二中断重入机制和第三中断重入机制中的一个;并且当批量应用程序的类型为第7类型时,选择第一中断重入机制、第二中断重入机制和第三中断重入机制中的一个。对中断重入机制的选择是通过各中断重入机制的准入条件来具体判断的。
下面将参照图3-图5中示出的流程示意图,分别详细描述三种中断重入机制的准入条件和处理步骤。
(一)一次COMMIT程序重入
准入条件:
1、输入/输出文件规模比较小(文件记录数<第一预定值,例如10万、12万等,可根据如系统配置、性能要求等来设置该参数)。
2、对数据表更新操作的数据规模比较小(更新数据表记录数<第三预定值,例如10万、12万等,在此给出的数值仅为示例,同样可灵活设置)。
3、运行时间<2分钟。
如果满足上述准入条件,则认为适合执行“一次COMMIT程序重入”,当然还可以考虑其他准入条件,如不影响批量并行运行,不会对其他批量程序造成锁冲突,这时通常考虑当前批量程序对具体系统资源的占用是否影响其他批量程序的运行。
“一次COMMIT程序重入”流程图如图3所示,处理流程如下:
判断在批量应用程序执行完所有业务逻辑处理之前是否发生中断,如是,则对批量应用程序所执行的业务逻辑处理进行回滚操作并且批量应用程序重新执行业务逻辑处理,否则,在批量应用程序执行完所有业务逻辑处理后,执行数据库提交操作。
根据上述方案,在程序出错时,对程序所有的逻辑处理ROLLBACK,保证了数据的一致性和完整性。
(二)多笔COMMIT,无输出文件重入
准入条件:
1、输入/输出文件规模较小(文件记录数<第一预定值,例如10万、12万等)和/或对数据表进行更新操作的数据的规模较小(数据规模<第三预定值,例如10万、12万等)。
2、运行时间>2分钟。
如果满足上述准入条件,则认为适合执行“多笔COMMIT,无输出文件程序重入”,其中,当涉及第3类批量程序(删除表记录)的中断重入时,由于其不涉及输入/输出文件,因此针对第3类批量程序进行重入机制的选择时,只需考虑对数据表进行更新操作的数据的规模的大小以及运行时间的长短即可。“多笔COMMIT,无输出文件程序重入”流程图如图4所示,具体处理如下:
1、在批量程序进行业务逻辑处理之前先读取记录断点临时表,记录断点临时表用于记录断点信息,看是否需要断点重提,如果没有断点信息,说明批量程序为第一次执行,此时将初始点(即,第一条记录处)作为处理点;如果有断点信息,则读取最近记录的断点的相关信息(在此说明的是,最近记录的断点指的是除与当前中断对应的断点之外的最近记录的断点),进行断点重提处理:使批量程序从该断点的下一条记录继续处理,即该断点的下一条记录作为处理点。
2、在批量程序进行业务逻辑处理的过程中,按预定频率(例如,每2.5分钟、3分钟或4分钟一次,本领域技术人员可根据需要灵活设置)执行数据库提交操作并每次记录提交点(COMMIT点)作为断点;
3、根据需要,将批量应用程序每次执行业务逻辑处理时所得到的处理结果均写入到临时表中,并在批量应用程序执行完所有业务逻辑处理后,将临时表中的数据导出为输出文件。
其中,对于第3类批量程序(删除表记录)的中断重入处理,由于其没有输出数据,因此,省略了将处理结果写入到临时表并且将零时表中的数据导出为输入文件的步骤。
(三)多笔COMMIT,有输出文件重入
准入条件:
1、输出文件规模较大(文件记录数>第一预定值,例如10万、12万等)。
2、对数据表更新操作的数据规模较大(更新数据表记录数>第三预定值,例如10万、12万等)。
3、运行时间较长(例如大于2分钟)。
如果满足上述准入条件,则认为适合执行“多笔COMMIT,有输出文件程序重入”,在该机制中,保留批量应用程序执行业务逻辑处理所得到的输出文件不变,参照图5,示出了“多笔COMMIT,有输出文件程序重入”流程示意图,具体处理如下:
1、在批量程序进行业务逻辑处理之前先读取记录断点临时表,看是否需要断点重提,如果没有断点信息,将初始点(即,第一条记录处)设置为处理点;如果有断点信息,则读取最近记录的断点的相关信息,进行断点重提处理:
清理输出文件在断点之后生成的垃圾数据,让输出文件和数据库处理数据一致;以及
使批量程序从该断点的下一条记录继续处理,即该断点的下一条记录作为处理点。
2、在批量应用程序执行业务逻辑处理的过程中,将处理结果写入到输出文件中,并且按预定频率(例如,每2.5分钟、3分钟或4分钟一次)执行数据库提交操作并每次记录提交点作为断点,例如将该断点的重提标识Y记录在记录断点临时表中。
在上述的中断重入机制中,均可以实现多次重入,也就是说,如果再次发生中断,可再次重新触发中断重入机制。
此外,说明的是,图3-图5所示的各中断重入机制的流程图仅以示例的方式给出,而不作为对本发明的限制。显而易见地,本领域技术人员可以在本发明的精神和原理的范围内对本发明实施例所给出的示例性方案做出各种变化。
通过对本发明实施例提供的中断重入机制的具体阐述,可以得知,本发明实施例提供了批量应用程序中断重入的机制和方法,对最常见的7类批量应用程序提出了合理的解决方案,既满足了批量处理的运行效率,使批量应用程序在异常中断后能够在不重新恢复数据的情况下重新运行,避免了程序中断对应用系统数据正确性的破坏,保证了应用系统数据的正确性、一致性和完整性;还能够在不重新恢复数据的情况下,保留应用程序最后正确执行的现场,并通过重新运行程序就可以继续处理业务请求,节约了系统资源。
本发明另一实施例提供了一种批量应用程序的中断重入系统,包括:准入判断模块,其配置为针对批量应用程序的类型,以及以批量应用程序所处理的输入文件和/或输出文件的规模、运行时间以及对数据表进行更新操作的数据的规模中的至少两者为相应中断重入机制的准入条件的参数,来选择相应的中断重入机制;以及中断重入模块,其配置为:执行所选择的中断重入机制。
其中,中断重入模块具体配置为:
当所选择的中断重入机制为第一中断重入机制时执行下列操作:判断批量应用程序是否执行完所有业务逻辑处理,如是,则执行数据库提交操作,否则,对批量应用程序所执行的业务逻辑处理进行回滚操作并且使批量应用程序重新执行业务逻辑处理;
当所选择的中断重入机制为第二中断重入机制时执行下列操作:在批量应用程序执行业务逻辑处理的过程中,按预定频率执行数据库提交操作并每次记录提交点作为断点;以及如果发生中断,则使批量应用程序从最近记录的断点的下一条记录继续处理;其中如果批量应用程序需要输出其执行业务逻辑处理所得到的处理结果,将批量应用程序每次执行业务逻辑处理时所得到的处理结果均写入到临时表中,并且在批量应用程序执行完所有业务逻辑处理后,将临时表中的数据导出为输出文件;以及
当所选择的中断重入机制为第三中断重入机制时执行下列操作:确定与批量应用程序相关的断点记录表中是否记录了断点信息,如是,则清理输出文件在最近记录的断点之后生成的垃圾数据,并使批量应用程序从最近记录的断点所指示的下一条记录处继续执行业务逻辑处理,否则,使批量应用程序从初始记录处开始处理;以及在批量应用程序执行业务逻辑处理的过程中,将处理结果写入到输出文件中,按第二预定频率执行数据库提交操作并每次记录提交点作为断点。
其中准入判断模块具体配置为:当批量应用程序的类型为第3、4或5类型时,根据准入条件来选择第一中断重入机制和第二中断重入机制中的一个;当批量应用程序的类型为第6类型时,根据准入条件来选择第二中断重入机制和第三中断重入机制中的一个;当批量应用程序的类型为第7类型时,根据准入条件来选择第一中断重入机制、第二中断重入机制和第三中断重入机制中的一个。
具体而言,第3类型批量应用程序批量执行:删除表记录;第4类型批量应用程序批量执行:读表,更新/删除/插入表;第5类型批量应用程序批量执行:读文件,更新/删除/插入表;第6类型批量应用程序批量执行:读表,更新/删除/插入表,写文件;以及第7类型批量应用程序批量执行:读文件,更新/删除/插入表,写文件。
为各中断重入机制设置了相应的准入条件。具体来说,选择第一中断重入机制的准入条件为:1、输入文件和/或输出文件的规模小于第一预定值;2、运行时间小于第二预定值;以及3、对数据表进行更新操作的数据的规模小于第三预定值。
选择第二中断重入机制的准入条件为:1、输入文件和/或输出文件的规模小于第一预定值和/或对数据表进行更新操作的数据的规模小于第三预定值;和2、运行时间大于第二预定值。
选择第三中断重入机制的准入条件为:1、输出文件的规模大于第一预定值;2、运行时间大于第二预定值;以及3、对数据表进行更新操作的数据的规模大于第三预定值。
本发明不局限于上述特定实施例,在不背离本发明精神及其实质情况下,熟悉本领域的技术人员可根据本发明作出各种相应改变和变形,但这些相应改变和变形都应属于本发明所附权利要求的保护范围之内。

Claims (7)

1.一种批量应用程序的中断重入方法,包括:
针对所述批量应用程序的类型,以及以所述批量应用程序相关的输入文件和/或输出文件的规模、运行时间以及对数据表进行更新操作的数据的规模中的至少两者为相应中断重入机制的准入条件的参数,来选择相应的中断重入机制;以及
执行所选择的中断重入机制,
其中,
当所选择的中断重入机制为第一中断重入机制时执行下列操作:
判断在所述批量应用程序执行完所有业务逻辑处理之前是否发生中断,如是,则对所述批量应用程序所执行的所述业务逻辑处理进行回滚操作并且所述批量应用程序重新执行业务逻辑处理,否则,在所述批量应用程序执行完所有业务逻辑处理后,执行数据库提交操作;以及
当所选择的中断重入机制为第二中断重入机制时执行下列操作:
确定与所述批量应用程序相关的断点记录表中是否记录了断点信息,如是,则使所述批量应用程序从最近记录的断点所指示的下一条记录处继续执行业务逻辑处理,否则使所述批量应用程序从初始记录处开始处理;
在所述批量应用程序执行所述业务逻辑处理的过程中,按第一预定频率执行数据库提交操作并每次记录提交点作为断点,其中
如果所述批量应用程序需要输出其执行所述业务逻辑处理所得到的处理结果,将所述批量应用程序每次执行所述业务逻辑处理时所得到的处理结果均写入到临时表中,并且在所述批量应用程序执行完所有业务逻辑处理后,将所述临时表中的数据导出为所述输出文件。
2.如权利要求1所述的方法,其中
当所选择的中断重入机制为第三中断重入机制时执行下列操作:
确定与所述批量应用程序相关的断点记录表中是否记录了断点信息,如是,则清理所述输出文件在最近记录的断点之后生成的垃圾数据,并使所述批量应用程序从最近记录的断点所指示的下一条记录处继续执行业务逻辑处理,否则,使所述批量应用程序从初始记录处开始处理;以及
在所述批量应用程序执行所述业务逻辑处理的过程中,将处理结果写入到所述输出文件中,按第二预定频率执行所述数据库提交操作并每次记录提交点作为断点。
3.如权利要求2所述的方法,其中所述批量应用程序的类型包括:
第3类型批量应用程序,其批量执行:删除表记录;
第4类型批量应用程序,其批量执行:读表,更新/删除/插入表;
第5类型批量应用程序,其批量执行:读文件,更新/删除/插入表;
第6类型批量应用程序,其批量执行:读表,更新/删除/插入表,写文件;以及
第7类型批量应用程序,其批量执行:读文件,更新/删除/插入表,写文件。
4.如权利要求3所述的方法,其中
当所述批量应用程序的类型为所述第3类、第4类或第5类型时,根据所述准入条件来选择所述第一中断重入机制和所述第二中断重入机制中的一个;
当所述批量应用程序的类型为所述第6类型时,根据所述准入条件来选择所述第二中断重入机制和所述第三中断重入机制中的一个;并且
当所述批量应用程序的类型为所述第7类型时,根据所述准入条件来选择所述第一中断重入机制、所述第二中断重入机制和第三中断重入机制中的一个。
5.如权利要求2或4所述的方法,其中
选择所述第一中断重入机制的所述准入条件为:所述输入文件和/或所述输出文件的规模小于第一预定值、所述运行时间小于第二预定值并且对所述数据表进行更新操作的数据的规模小于第三预定值;
选择所述第二中断重入机制的所述准入条件为:所述输入文件和/或所述输出文件小于所述第一预定值和/或对所述数据表进行更新操作的数据的规模小于所述第三预定值,并且所述运行时间大于所述第二预定值;以及
选择所述第三中断重入机制的所述准入条件为:所述输出文件的规模大于所述第一预定值、所述运行时间大于所述第二预定值并且对所述数据表进行更新操作的数据的规模大于第三预定值。
6.一种批量应用程序的中断重入系统,包括:
准入判断模块,其配置为针对所述批量应用程序的类型,以及以所述批量应用程序相关的输入文件和/或输出文件的规模、运行时间以及对数据表进行更新操作的数据的规模中的至少两者为相应中断重入机制的准入条件的参数,来选择相应的中断重入机制;以及
中断重入模块,其配置为:执行所选择的中断重入机制,
其中,所述中断重入模块具体配置为:
当所选择的中断重入机制为第一中断重入机制时执行下列操作:
判断在所述批量应用程序执行完所有业务逻辑处理之前是否发生中断,如是,则对所述批量应用程序所执行的所述业务逻辑处理进行回滚操作并且所述批量应用程序重新执行业务逻辑处理,否则,在所述批量应用程序执行完所有业务逻辑处理后,执行数据库提交操作;
当所选择的中断重入机制为第二中断重入机制时执行下列操作:
确定与所述批量应用程序相关的断点记录表中是否记录了断点信息,如是,则使所述批量应用程序从最近记录的断点所指示的下一条记录处继续执行业务逻辑处理,否则,使所述批量应用程序从初始记录处开始处理;
在所述批量应用程序执行所述业务逻辑处理的过程中,按第一预定频率执行数据库提交操作并每次记录提交点作为断点,其中
如果所述批量应用程序需要输出其执行所述业务逻辑处理所得到的处理结果,将所述批量应用程序每次执行所述业务逻辑处理时所得到的处理结果均写入到临时表中,并且在所述批量应用程序执行完所有业务逻辑处理后,将所述临时表中的数据导出为所述输出文件;以及
当所选择的中断重入机制为第三中断重入机制时执行下列操作:
确定与所述批量应用程序相关的断点记录表中是否记录了断点信息,如是,则清理所述输出文件在最近记录的断点之后生成的垃圾数据,并使所述批量应用程序从最近记录的断点所指示的下一条记录处继续执行业务逻辑处理,否则,使所述批量应用程序从初始记录处开始处理;以及
在所述批量应用程序执行所述业务逻辑处理的过程中,将处理结果写入到所述输出文件中,按第二预定频率执行所述数据库提交操作并每次记录提交点作为断点。
7.如权利要求6所述的中断重入系统,其中所述准入判断模块具体配置为:
当所述批量应用程序的类型为第3类、第4类或第5类型时,根据所述准入条件来选择所述第一中断重入机制和所述第二中断重入机制中的一个;
当所述批量应用程序的类型为第6类型时,根据所述准入条件来选择所述第二中断重入机制和所述第三中断重入机制中的一个;
当所述批量应用程序的类型为第7类型时,根据所述准入条件来选择所述第一中断重入机制、所述第二中断重入机制和所述第三中断重入机制中的一个,其中
所述第3类型批量应用程序批量执行:删除表记录;所述第4类型批量应用程序批量执行:读表,更新/删除/插入表;所述第5类型批量应用程序批量执行:读文件,更新/删除/插入表;所述第6类型批量应用程序批量执行:读表,更新/删除/插入表,写文件;以及所述第7类型批量应用程序批量执行:读文件,更新/删除/插入表,写文件;并且其中
选择所述第一中断重入机制的所述准入条件为:所述输入文件和/或所述输出文件的规模小于第一预定值、所述运行时间小于第二预定值并且对所述数据表进行更新操作的数据的规模小于第三预定值;
选择所述第二中断重入机制的所述准入条件为:所述输入文件和/或所述输出文件的规模小于所述第一预定值和/或对所述数据表进行更新操作的数据的规模小于所述第三预定值,并且所述运行时间大于所述第二预定值;以及
选择所述第三中断重入机制的所述准入条件为:所述输出文件的规模大于所述第一预定值、所述运行时间大于所述第二预定值并且对所述数据表进行更新操作的数据的规模大于第三预定值。
CN201410283715.2A 2014-06-23 2014-06-23 批量应用程序的中断重入方法及系统 Active CN104021043B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410283715.2A CN104021043B (zh) 2014-06-23 2014-06-23 批量应用程序的中断重入方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410283715.2A CN104021043B (zh) 2014-06-23 2014-06-23 批量应用程序的中断重入方法及系统

Publications (2)

Publication Number Publication Date
CN104021043A CN104021043A (zh) 2014-09-03
CN104021043B true CN104021043B (zh) 2017-09-15

Family

ID=51437811

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410283715.2A Active CN104021043B (zh) 2014-06-23 2014-06-23 批量应用程序的中断重入方法及系统

Country Status (1)

Country Link
CN (1) CN104021043B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317960A (zh) * 2014-11-14 2015-01-28 中国建设银行股份有限公司 一种批处理作业的处理方法和装置
CN104536893B (zh) * 2015-01-05 2018-01-30 中国农业银行股份有限公司 一种批量处理程序容报错处理方法及装置
CN104866595B (zh) * 2015-05-29 2019-05-03 北京京东尚科信息技术有限公司 对关系数据库脚本加入事务控制的方法及装置
CN105323627B (zh) * 2015-11-24 2018-09-04 深圳市九洲电器有限公司 机顶盒json数据解析存储方法及系统
CN106934584B (zh) * 2015-12-29 2021-02-05 平安科技(深圳)有限公司 团体保单的断点承保方法及系统
CN107544838B (zh) * 2016-06-24 2024-02-23 中兴通讯股份有限公司 一种中断处理方法及装置
CN106648842A (zh) * 2016-12-27 2017-05-10 中国建设银行股份有限公司 一种批量作业续跑方法及装置
CN107911227B (zh) * 2017-09-28 2020-04-28 平安科技(深圳)有限公司 一种断点数据跟进方法、电子装置及计算机可读存储介质
CN108536551B (zh) * 2018-03-20 2022-04-15 中国银行股份有限公司 一种批处理程序的中断重入方法及系统
CN110874286A (zh) * 2018-08-29 2020-03-10 中国石油化工股份有限公司 基于属性计算的批处理作业断点恢复方法及其系统
CN109658261A (zh) * 2018-12-11 2019-04-19 泰康保险集团股份有限公司 保单处理方法、装置、设备及存储介质
CN109783509A (zh) * 2019-01-04 2019-05-21 中国银行股份有限公司 Sql脚本生成方法及装置
CN111737056A (zh) * 2020-06-24 2020-10-02 中国银行股份有限公司 文件断点重入方法及装置
CN111752842B (zh) * 2020-06-28 2024-02-27 中国银行股份有限公司 银行批量程序故障处理方法及装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6519654B1 (en) * 1999-07-07 2003-02-11 Sharp Laboratories Of America, Incorporation Method of designing an interface for a real-time messaging system
JP2008135042A (ja) * 2001-06-22 2008-06-12 Wonderware Corp 階層アーキテクチャを有する監視プロセス制御/製造情報システム・アプリケーション
CN101788908A (zh) * 2010-01-26 2010-07-28 浪潮(山东)电子信息有限公司 一种支持断点续航的批量数据处理方法
CN101996107A (zh) * 2009-08-31 2011-03-30 中国工商银行股份有限公司 一种作业中断自动恢复系统及方法
CN102193981A (zh) * 2011-03-25 2011-09-21 北京世纪互联工程技术服务有限公司 图形数据库联机事务中事务过期机制的实现方法
CN102375759A (zh) * 2010-08-20 2012-03-14 希姆通信息技术(上海)有限公司 利用有限状态机防止代码重入的方法
CN103294544A (zh) * 2012-02-27 2013-09-11 展讯通信(上海)有限公司 嵌入式系统及其中断处理方法与装置
CN103294769A (zh) * 2013-04-28 2013-09-11 中国工商银行股份有限公司 一种大型服务器写文件的系统及方法
CN103699681A (zh) * 2013-12-31 2014-04-02 华为技术有限公司 数据回滚的处理方法和装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6519654B1 (en) * 1999-07-07 2003-02-11 Sharp Laboratories Of America, Incorporation Method of designing an interface for a real-time messaging system
JP2008135042A (ja) * 2001-06-22 2008-06-12 Wonderware Corp 階層アーキテクチャを有する監視プロセス制御/製造情報システム・アプリケーション
CN101996107A (zh) * 2009-08-31 2011-03-30 中国工商银行股份有限公司 一种作业中断自动恢复系统及方法
CN101788908A (zh) * 2010-01-26 2010-07-28 浪潮(山东)电子信息有限公司 一种支持断点续航的批量数据处理方法
CN102375759A (zh) * 2010-08-20 2012-03-14 希姆通信息技术(上海)有限公司 利用有限状态机防止代码重入的方法
CN102193981A (zh) * 2011-03-25 2011-09-21 北京世纪互联工程技术服务有限公司 图形数据库联机事务中事务过期机制的实现方法
CN103294544A (zh) * 2012-02-27 2013-09-11 展讯通信(上海)有限公司 嵌入式系统及其中断处理方法与装置
CN103294769A (zh) * 2013-04-28 2013-09-11 中国工商银行股份有限公司 一种大型服务器写文件的系统及方法
CN103699681A (zh) * 2013-12-31 2014-04-02 华为技术有限公司 数据回滚的处理方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于ARM的嵌入式系统中断处理机制研究;金浩等;《现代电子技术》;20051230(第22期);第1-3页 *
基于Keil for ARM开发环境的可重入中断实现;刘金平;《电脑知识与技术》;20120430;第8卷(第12期);第2756-2758页 *

Also Published As

Publication number Publication date
CN104021043A (zh) 2014-09-03

Similar Documents

Publication Publication Date Title
CN104021043B (zh) 批量应用程序的中断重入方法及系统
CN103729442B (zh) 记录事务日志的方法和数据库引擎
CN104063293B (zh) 一种数据备份方法及流计算系统
CN111400011B (zh) 一种实时任务调度方法、系统、设备及可读存储介质
CN107273195A (zh) 一种大数据的批处理方法、装置及计算机系统
CN106126403A (zh) Oracle数据库故障分析方法和装置
US9183038B2 (en) Job management system that determines if master data has been updated, then re-executes a sub-job based on available executing computers and data sharing status
CN108255620A (zh) 一种业务逻辑处理方法、装置、业务服务器及系统
CN109783509A (zh) Sql脚本生成方法及装置
CN109408361A (zh) Monkey测试复原方法、装置、电子设备及计算机可读存储介质
CN109544344B (zh) 基于dag的区块链的交易处理方法及设备
US11782753B2 (en) Node-local-unscheduler for scheduling remediation
US10042671B2 (en) Non-transitory computer-readable storage medium, control device, and control method
US10761940B2 (en) Method, device and program product for reducing data recovery time of storage system
US9274877B2 (en) Incident handling
JP5231035B2 (ja) ジョブ処理システムおよびジョブ処理方法
US20210312365A1 (en) Analysis of resources utilized during execution of a process
CN113742034A (zh) 事件处理方法与装置、计算机可读存储介质、电子设备
CN106844242B (zh) 一种数据交换方法和系统
JP2015148982A (ja) 操作手順フロー更新装置、方法及びプログラム
CN111752842B (zh) 银行批量程序故障处理方法及装置
JP7024804B2 (ja) システム更新装置およびシステム更新方法
CN106293897A (zh) 组件自动化调度系统
JP2017126164A (ja) データ分析装置及びデータ分析方法
CN115599778A (zh) 一种数据文件的处理方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant