在日间联机阶段进行批量数据处理的方法及装置的制造方法

文档序号:10724687阅读:512来源:国知局
在日间联机阶段进行批量数据处理的方法及装置的制造方法
【专利摘要】本发明提供了一种在日间联机阶段进行批量数据处理的方法及装置,其中,方法包括:在联机业务交互中接收批量业务处理请求;根据所述批量业务处理请求的标识将所述批量业务处理请求分成处理优先级不同的队列;按照所述队列的优先级在联机业务处理期间在后台依序处理所述批量业务处理请求。本发明能够让操作人员在当前交易日就能查看到批量数据业务的处理结果,提高顾客的满意度。
【专利说明】
在曰间联机阶段进行批量数据处理的方法及装置
技术领域
[0001] 本发明涉及计算机技术领域,尤其涉及一种准实时的大数据处理方法,具体来说 就是一种在日间联机阶段进行批量数据处理的方法及装置。
【背景技术】
[0002] 众所周知,银行业务分为联机交易业务(联机交易业务是指业务请求的接收和处 理都是实时的,一旦处理完成后就要在第一时间将处理结果回传给请求方,即实时性要求 高的业务,例如,存取款交易、转账交易等)和批量处理业务(批量处理业务是指用户的业务 请求被接收后并不立即着手进行处理,而是积累到一定程度后一同提交处理,然后计算机 按照规则顺序对这些业务请求逐一进行处理,在全部请求处理完毕以后再将处理结果一并 输出,即实时性要求较低的业务,例如,工资入账、报表生成、账户余额历史记录等)。在日间 联机阶段处理联机交易业务,在夜间阶段进行批量处理业务。批量处理业务通常需要进行 大量计算,耗时较长且消耗时长不固定,一般通过后台在夜间批量进行处理,并将处理结果 在T+1日(即当前交易日的下一日)提供给操作人员;而联机交易业务处理通常要求银行业 务处理系统能够快速响应并实时返回,使操作人员能够尽快得到处理结果。
[0003] 但在些情形下,操作人员需要在当前交易日(即T日)获得批量处理业务的处理结 果,由于操作人员无法直接在前台发起,这时不得不让具备系统维护权利的技术人员在后 台进行直接提交,可操作性差。而且,批量处理业务会长时间占用系统资源,由于系统资源 长期得不到释放,势必影响到联机交易业务的处理,存在联机交易失败等生产安全风险,影 响银行日常业务的进行。
[0004] 因此,如何在满足联机交易业务处理并发量大、响应时间短的前提下,稳定地进行 批量大数据处理,并在T日就能返回处理结果,是本领域技术人员长期亟待解决的问题。

【发明内容】

[0005] 有鉴于此,本发明要解决的技术问题在于提供一种在日间联机阶段进行批量数据 处理的方法及装置,解决了现有技术中无法在交易当日获得批量业务的处理结果的问题。
[0006] 为了解决上述技术问题,本发明的【具体实施方式】提供一种在日间联机阶段进行批 量数据处理的方法,包括:在联机业务交互中接收批量业务处理请求;根据所述批量业务处 理请求的标识将所述批量业务处理请求分成处理优先级不同的队列;按照所述队列的优先 级在联机业务处理期间在后台依序处理所述批量业务处理请求。
[0007] 本发明的【具体实施方式】还提供一种在日间联机阶段进行批量数据处理的装置,包 括:接收单元,用于在联机业务交互中接收批量业务处理请求;队列分配单元,用于根据所 述批量业务处理请求的标识将所述批量业务处理请求分成处理优先级不同的队列;处理单 元,用于按照所述队列的优先级在联机业务处理期间在后台依序处理所述批量业务处理请 求。
[0008] 根据本发明的上述【具体实施方式】可知,在日间联机阶段进行批量数据处理的方法 及装置至少具有以下有益效果:在联机事务(联机业务)交互中接收批量业务的处理请求, 在后台对批量处理业务数据进行数据加工,不占用联机事务的时间窗口,并且操作人员在T 日(当前交易日)就能查看到批量业务的处理结果;根据批量数据业务的优先级在后台处理 批量数据业务,并利用基于批量数据业务吞吐量和处理时间的动态优先级算法在后台处理 最低优先级别的批量数据业务,能够合理利用日间联机窗口,使得每个批量数据业务请求 都有机会得到处理,操作人员在当前交易日就能查看到批量数据业务的处理结果,提高顾 客的满意度。
[0009]应了解的是,上述一般描述及以下【具体实施方式】仅为示例性及阐释性的,其并不 能限制本发明所欲主张的范围。
【附图说明】
[0010]下面的所附附图是本发明的说明书的一部分,其绘示了本发明的示例实施例,所 附附图与说明书的描述一起用来说明本发明的原理。
[0011] 图1为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的方法 的具体实施例一的流程图;
[0012] 图2为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的方法 的具体实施例二的流程图;
[0013] 图3为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的方法 的具体实施例三的流程图;
[0014] 图4为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的方法 的具体实施例四的流程图;
[0015] 图5为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的装置 的具体实施例一的示意框图;
[0016] 图6为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的装置 的具体实施例二的示意框图;
[0017] 图7为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的装置 的具体实施例三的示意框图;
[0018] 图8为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的装置 的具体实施例四的示意框图。
【具体实施方式】
[0019] 为使本发明实施例的目的、技术方案和优点更加清楚明白,下面将以附图及详细 叙述清楚说明本发明所揭示内容的精神,任何所属技术领域技术人员在了解本
【发明内容】
的 实施例后,当可由本
【发明内容】
所教示的技术,加以改变及修饰,其并不脱离本
【发明内容】
的精 神与范围。
[0020] 本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。 另外,在附图及实施方式中所使用相同或类似标号的元件/构件是用来代表相同或类似部 分。
[0021] 关于本文中所使用的"第一"、"第二"、…等,并非特别指称次序或顺位的意思,也 非用以限定本发明,其仅为了区别以相同技术用语描述的元件或操作。
[0022] 关于本文中所使用的方向用语,例如:上、下、左、右、前或后等,仅是参考附图的方 向。因此,使用的方向用语是用来说明并非用来限制本创作。
[0023] 关于本文中所使用的"包含"、"包括"、"具有"、"含有"等等,均为开放性的用语,即 意指包含但不限于。
[0024] 关于本文中所使用的"及/或",包括所述事物的任一或全部组合。
[0025]关于本文中所使用的用语"大致"、"约"等,用以修饰任何可以微变化的数量或误 差,但这些微变化或误差并不会改变其本质。一般而言,此类用语所修饰的微变化或误差的 范围在部分实施例中可为20%,在部分实施例中可为10%,在部分实施例中可为5%或是其 他数值。本领域技术人员应当了解,前述提及的数值可依实际需求而调整,并不以此为限。
[0026] 某些用以描述本申请的用词将于下或在此说明书的别处讨论,以提供本领域技术 人员在有关本申请的描述上额外的引导。
[0027] 图1为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的方法 的具体实施例一的流程图,如图1所示,在联机事务(联机业务)交互中接收批量业务处理请 求,在后台对批量处理业务数据进行数据加工,不占用联机事务的时间窗口。
[0028] 该附图所示的【具体实施方式】包括:
[0029]步骤101:在联机业务交互中接收批量业务处理请求。联机业务(联机交易)是指联 机业务请求的接收和处理都是实时的,一旦联机业务处理完成后就要在第一时间将处理结 果传给请求方。在联机业务交互中接收批量业务处理请求,不占用联机业务的时间窗口。
[0030] 步骤102:根据所述批量业务处理请求的标识将所述批量业务处理请求分成处理 优先级不同的队列。本发明的具体实施例中,队列包括非常紧急队列、紧急队列和普通队 列,所述非常紧急队列、所述紧急队列和所述普通队列的处理优先级依次降低。处理完成非 常紧急队列内的批量业务处理请求后,才会处理紧急队列内的批量业务处理请求;处理完 成紧急队列内的批量业务处理请求后,才会处理普通队列内的批量业务处理请求。非常紧 急队列内的批量业务处理请求紧急程度最高,其会得到最高优先级的处理,其最高优先级 会一直维持直到其处理完成,进入非常紧急队列内的每个批量业务处理请求都会得到立即 的处理,对于非常紧急队列内的多个批量业务处理请求,则按照请求发起时间的时间先后 顺序依次处理。紧急队列内的批量业务处理请求紧急程低于非常紧急队列内的批量业务处 理请求;并且如果紧急队列内的批量业务处理请求能够在预设的处理时间窗口阈值(例如 处理时间窗口阈值可以设置为5分钟)内得到完成,则该批量业务处理请求可以正常处理结 束;如果超过预设的处理时间窗口阈值仍没有处理完,则中止处理该批量业务处理请求,并 且该批量业务处理请求的优先级会下降,该批量业务处理请求会被重新分配到普通队列中 去,按普通队列的处理规则进行处理,这种优先级下降的方式是基于公平性的考虑,防止长 期占用处理资源,并且也是在防止滥用非常紧急队列,鼓励发起短作业处理请求。普通队列 内的批量业务处理请求的紧急程度最低,只有在非常紧急队列和紧急队列内的批量业务处 理请求均被处理完毕后,才开始处理普通队列内的批量业务处理请求,大多数的批量业务 处理请求属于普通队列。
[0031] 步骤103:按照所述队列的优先级在联机业务处理期间在后台依序处理所述批量 业务处理请求。本发明的【具体实施方式】中,步骤103具体包括:步骤1031在联机业务处理期 间处理所述非常紧急队列内的所述批量业务处理请求时,根据所述批量业务处理请求的发 起时间依序处理所述批量业务处理请求;步骤1032在联机业务处理期间处理所述紧急队列 内的所述批量业务处理请求时,根据所述批量业务处理请求的发起时间依序处理所述批量 业务处理请求;由于每次批量业务处理请求的处理规则是固定的,每次批量业务处理请求 涉及的输入数据对象和输出数据对象也是固定的,差异只是处理数据量的大小不同,因此 本发明具体实施例中,步骤1033在联机业务处理期间处理所述普通队列内的所述批量业务 处理请求时,根据所述批量业务处理请求的吞吐量和处理时长依次处理所述批量业务处理 请求。
[0032]参见图1,在联机事务(联机业务)交互中接收批量业务处理请求,在后台对批量业 务处理请求进行处理,不占用联机事务的时间窗口,并且操作人员在T日(当前交易日)就能 查看到批量业务处理请求的处理结果;根据批量业务处理请求的优先级在后台处理批量业 务处理请求,并根据批量业务处理请求的吞吐量和处理时长的在后台处理最低优先级别的 批量业务处理请求,能够合理利用日间联机窗口,使得每个批量业务处理请求都有机会得 到处理,操作人员在当前交易日就能查看到批量业务处理请求的处理结果,提高顾客的满 意度。
[0033] 图2为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的方法 的具体实施例二的流程图,如图2所示,设定处理时间窗口阈值,如果紧急队列中批量业务 处理请求的处理时长超过处理时间窗口阈值,则中止该批量业务处理请求的处理,并且队 列分配单元将该批量业务处理请求归入普通队列中进行处理,普通队列中该批量业务处理 请求从中止处继续剩余数据的处理。
[0034] 在该附图所示的【具体实施方式】中,步骤1032具体包括:
[0035] 步骤10321:按照所述请求发起时间的先后顺序依次处理所述批量业务处理请求。 在紧急队列内部,批量业务处理请求的处理顺序是按照先来先服务的规则进行的。
[0036] 步骤10322:判断所述批量业务处理请求的处理时间长度是否大于第一处理时间 窗口阈值。本发明的具体实施例中,第一处理时间窗口阈值为5分钟。
[0037] 步骤10323:如果大于,则中止处理该批量业务处理请求,并将该批量业务处理请 求归入普通队列中。如果紧急队列中批量业务处理请求的处理时长超过处理时间窗口阈 值,则中止该批量业务处理请求的处理,并且队列分配单元将该批量业务处理请求归入普 通队列中进行处理,普通队列中该批量业务处理请求从中止处继续剩余数据的处理(利用 断点机制来支持后续的重入处理,在中止时记录断点信息,在下次重入处理时从断点处重 新开始处理)。
[0038] 参见图2,本发明具体实施例提供的优先级下降的方式是基于公平性的考虑,防止 紧急队列内的批量业务处理请求长期占用处理资源,并且能够防止滥用紧急优先级,鼓励 操作人员发起短作业批量业务处理请求。
[0039] 图3为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的方法 的具体实施例三的流程图,如图3所示,按照吞吐量和处理时长计算普通队列中批量业务处 理请求的动态权重值,根据动态权重值依次处理普通队列中的批量业务处理请求;设定处 理时间窗口阈值,如果普通队列中批量业务处理请求的处理时长超过处理时间窗口阈值, 则中止该批量业务处理请求的处理,并将该批量业务处理请求排到普通队列的队尾,普通 队列中该批量业务处理请求从中止处继续剩余数据的处理。
[0040]在该附图所示的【具体实施方式】中,步骤1033具体包括:
[0041] 步骤10331:按照所述吞吐量和所述处理时长计算所述批量业务处理请求的动态 权重值。
[0042] 步骤10332:根据所述动态权重值依次处理所述批量业务处理请求。
[0043] 步骤10333:判断所述处理时长是否大于第二处理时间窗口阈值。
[0044] 步骤10334:如果大于,则中止处理该批量业务处理请求,并将该批量业务处理请 求排到普通队列的队尾。
[0045] 参见图3,本发明具体实施例根据普通队列中批量业务处理请求的吞吐量和处理 时长计算该批量业务处理请求的动态权重值,按照动态权重值依序处理普通队列中的批量 业务处理请求,并且中止处理时长超过处理时间窗口阈值的批量业务处理请求,并将该批 量业务处理请求排到普通队列的队尾,防止普通队列内的批量业务处理请求长期占用处理 资源,鼓励操作人员发起短作业批量业务处理请求。
[0046]本发明的具体实施例中,所述动态权重值Priority的计算公式为:
[0048] 其中,Priority表示计算出来的优先级,其值是过去η次处理批量业务处理请求时 吞吐量和处理时长比值的平均值;?1'0(:(3881';[1]16(;〇表示在过去第;[次处理批量业务处理请 求所用的时间,以毫秒为单位来计算;InputSi Ze(i)表示在过去第i次处理批量业务处理请 求时输入数据的大小,以字节为单位来计算;0utputSize( i)表示在过去第i次处理批量业 务处理请求时输出数据的大小,以字节为单位来计算。
[0049] 其中,所述InputSize(i)和所述OutputSize(i)的计算公式分别为:
[0052] 其中,InputRecordLength(k)为在过去第i次处理批量业务处理请求时输入数据 对象的记录长度;m表示输入数据对象的个数,例如第i次处理批量业务处理请求输入数据 包含m个报表,每个报表为一个输入数据对象;InputRecordCount(k)为在过去第i次处理批 量业务处理请求时输入数据对象被访问处理的记录条数,例如,每个报表又具有10000行, 每行为一条记录;k表示输入数据对象的次序,即m个输入数据对象中的第k个; OutputRecordLength(k)为在过去第i次处理批量业务处理请求时输出数据对象的记录长 度;P表示输出数据对象的个数,例如,第i次处理批量业务处理请求输出数据包含P个报表, 每个报表为一个输出数据对象;OutputRecordCount(k)为在过去第i次处理批量业务处理 请求时输出数据对象被访问处理的记录条数,例如,每个报表又具有10000行,每行为一条 记录;j表示输出数据对象的次序,即P个输出数据对象中的第j个。
[0053]图4为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的方法 的具体实施例四的流程图,如图4所示,为了进一步防止普通队列内的批量业务处理请求长 期占用处理资源,体现机会均等和公平性,利用轮次策略控制处理时间过长的批量业务处 理请求,轮次即该批量业务处理请求是在第几轮进行处理,每进行一次重入处理,轮次值就 自增加1,轮次值越大,处理优先级越低。
[0054]在该附图所示的【具体实施方式】中,步骤10334之后,步骤1033还包括:
[0055] 步骤10335:中止处理该批量业务处理请求时,将该批量业务处理请求对应的轮次 值加1,其中,所述轮次值的优先级高于所述动态权重值,并且所述轮次值的优先级低于所 述标识,所述轮次值越大优先级越低。
[0056]参见图4,轮次策略的引入进一步防止普通队列内的批量业务处理请求长期占用 处理资源,体现机会均等和公平性,利用轮次策略控制处理时间过长的批量业务处理请求, 鼓励操作人员发起短时长业务。
[0057] 图5为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的装置 的具体实施例一的示意框图,如图5所示的装置可以应用到如图1-图4所示的方法中,在联 机事务(联机业务)交互中接收批量业务处理请求,在后台对批量处理业务数据进行数据加 工,不占用联机事务的时间窗口。
[0058] 在该附图所示的【具体实施方式】,在日间联机阶段进行批量数据处理的装置包括接 收单元10、队列分配单元20和处理单元30,其中,接收单元10用于在联机业务交互中接收批 量业务处理请求;队列分配单元20用于根据所述批量业务处理请求的标识将所述批量业务 处理请求分成处理优先级不同的队列;处理单元30用于按照所述队列的优先级在联机业务 处理期间在后台依序处理所述批量业务处理请求。本发明的具体实施例中,队列包括非常 紧急队列、紧急队列和普通队列,所述非常紧急队列、所述紧急队列和所述普通队列的处理 优先级依次降低。处理单元30进一步包括:第一处理模块301、第二处理模块302和第三处理 模块303。其中,第一处理模块301用于在联机业务处理期间处理所述非常紧急队列内的所 述批量业务处理请求时,根据所述批量业务处理请求的发起时间依序处理所述批量业务处 理请求。第二处理模块302用于在联机业务处理期间处理所述紧急队列内的所述批量业务 处理请求时,根据所述批量业务处理请求的发起时间依序处理所述批量业务处理请求。第 三处理模块303用于在联机业务处理期间处理所述普通队列内的所述批量业务处理请求 时,根据所述批量业务处理请求的吞吐量和处理时长依次处理所述批量业务处理请求。 [0059]参见图5,在联机事务(联机业务)交互中接收批量业务处理请求,在后台对批量业 务处理请求进行处理,不占用联机事务的时间窗口,并且操作人员在T日(当前交易日)就能 查看到批量业务处理请求的处理结果;根据批量业务处理请求的优先级在后台处理批量业 务处理请求,并根据批量业务处理请求的吞吐量和处理时长的在后台处理最低优先级别的 批量业务处理请求,能够合理利用日间联机窗口,使得每个批量业务处理请求都有机会得 到处理,操作人员在当前交易日就能查看到批量业务处理请求的处理结果,提高顾客的满 意度。
[0060] 图6为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的装置 的具体实施例二的示意框图,如图6所示,设定处理时间窗口阈值,如果紧急队列中批量业 务处理请求的处理时长超过处理时间窗口阈值,则中止该批量业务处理请求的处理,并且 队列分配单元将该批量业务处理请求归入普通队列中进行处理,普通队列中该批量业务处 理请求从中止处继续剩余数据的处理。
[0061] 在该附图所示的【具体实施方式】中,所述第二处理模块302进一步包括第一处理子 模块3021、第一判断子模块3022和第一中止子模块3023,其中,第一处理模块301用于按照 请求发起时间的先后顺序依次处理所述批量业务处理请求;第一判断模块302用于判断所 述批量业务处理请求的处理时间长度是否大于第一处理时间窗口阈值;第一中止模块303 用于所述处理时间长度大于所述第一处理时间窗口阈值时中止处理该批量业务处理请求, 并且所述队列分配单元20将该批量业务处理请求归入普通队列中。
[0062] 参见图6,本发明具体实施例提供的优先级下降的方式是基于公平性的考虑,防止 紧急队列内的批量业务处理请求长期占用处理资源,并且能够防止滥用紧急优先级,鼓励 操作人员发起短作业批量业务处理请求。
[0063] 图7为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的装置 的具体实施例三的示意框图,如图7所示,按照所述吞吐量和所述处理时长计算普通队列中 批量业务处理请求的动态权重值,根据动态权重值依次处理普通队列中的批量业务处理请 求;设定处理时间窗口阈值,如果普通队列中批量业务处理请求的处理时长超过处理时间 窗口阈值,则中止该批量业务处理请求的处理,并将该批量业务处理请求排到普通队列的 队尾,普通队列中该批量业务处理请求从中止处继续剩余数据的处理。
[0064]在该附图所示的【具体实施方式】中,所述第三处理模块303进一步包括计算子模块 3031、第二处理子模块3032、第二判断子模块3033和第二中止子模块3034,其中,计算子模 块3031用于按照所述吞吐量和所述处理时长计算所述批量业务处理请求的动态权重值;第 二处理子模块3032用于根据所述动态权重值依次处理所述批量业务处理请求;第二判断子 模块3033用于判断所述处理时长是否大于第二处理时间窗口阈值;第二中止子模块3034用 于所述处理时长大于所述第二处理时间窗口阈值时中止处理该批量业务处理请求,并将该 批量业务处理请求排到普通队列的队尾。
[0065] 参见图7,本发明具体实施例根据普通队列中批量业务处理请求的吞吐量和处理 时长计算该批量业务处理请求的动态权重值,按照动态权重值依序处理普通队列中的批量 业务处理请求,并且中止处理时长超过处理时间窗口阈值的批量业务处理请求,并将该批 量业务处理请求排到普通队列的队尾,防止普通队列内的批量业务处理请求长期占用处理 资源,鼓励操作人员发起短作业批量业务处理请求。
[0066]本发明的具体实施例中,所述动态权重值Priority的计算公式为:
[0068] 其中,Priority表示计算出来的优先级,其值是过去η次处理批量业务处理请求时 吞吐量和处理时长比值的平均值;?1'0(:(3881';[1]16(;〇表示在过去第;[次处理批量业务处理请 求所用的时间,以毫秒为单位来计算;InputSi Ze(i)表示在过去第i次处理批量业务处理请 求时输入数据的大小,以字节为单位来计算;0utputSize( i)表示在过去第i次处理批量业 务处理请求时输出数据的大小,以字节为单位来计算。
[0069] 其中,所述InputSize(i)和所述OutputSize(i)的计算公式分别为:
[0072] 其中,InputRecordLength(k)为在过去第i次处理批量业务处理请求时输入数据 对象的记录长度;m表示输入数据对象的个数;InputRecordCount(k)为在过去第i次处理批 量业务处理请求时输入数据对象被访问处理的记录条数;OutputRecordLength(k)为在过 去第i次处理批量业务处理请求时输出数据对象的记录长度;P表示输出数据对象的个数; OutputRecordCount(k)为在过去第i次处理批量业务处理请求时输出数据对象被访问处理 的记录条数。
[0073]图8为本发明【具体实施方式】提供的一种在日间联机阶段进行批量数据处理的装置 的具体实施例四的示意框图,如图8所示,为了进一步防止普通队列内的批量业务处理请求 长期占用处理资源,体现机会均等和公平性,利用轮次策略控制处理时间过长的批量业务 处理请求,轮次即该批量业务处理请求是在第几轮进行处理,每进行一次重入处理,轮次值 就自增加1,轮次值越大,处理优先级越低。
[0074]在该附图所示的【具体实施方式】中,所述第三处理模块303还包括设置子模块3035, 其中,设置子模块3035用于中止处理批量业务处理请求时将该批量业务处理请求对应的轮 次值加1,其中,所述轮次值的优先级高于所述动态权重值,并且所述轮次值的优先级低于 所述标识,所述轮次值越大优先级越低。
[0075]参见图8,本发明引入轮次规则,能够进一步防止普通队列内的批量业务处理请求 长期占用处理资源,体现机会均等和公平性,利用轮次策略控制处理时间过长的批量业务 处理请求,鼓励操作人员发起短时长业务。
[0076]本发明的【具体实施方式】中,处理单元30还包括登记簿模块、查询调阅模块、安全管 控模块、负载均衡模块、拆分合并模块和信息推送模块等。
[0077]登记簿模块登记每个批量业务处理请求,登记簿信息主要包括处理的数据类型, 数据处理状态,注册登记时间,请求柜员(操作人员)等信息;柜员在发起批量业务处理请求 时会根据实际业务需要指定处理优先级,即该处理的紧急程度:非常紧急,紧急和普通;登 记簿会保存柜员指定的处理优先级,后续会依据这些优先级送入不同的处理队列;登记簿 是一个非常主要的表,是整个处理过程数据的载体。
[0078]安全管控模块:对于银行系统,不同人员角色有着不同的批量业务处理请求权限。 在进行注册批量业务处理请求或者查阅批量业务处理请求的处理结果时,会访问安全管控 模块来校验请求人的身份合法性,批量业务处理请求的合理性,对于身份验证失败或者批 量业务处理请求的数据范围不合法时,进行提示报错。
[0079]负载均衡模块:为了防止出现过载影响日间联机交易的处理,设计了一个负载均 衡模块,负载均衡模块可以通过参数设置处理的最大并发数,当达到最大并发数时可以暂 时延迟后续批量业务处理请求的处理,等待一个正在处理中的批量业务处理请求处理完毕 后,再进行新的批量业务处理请求的处理;负载均衡模块的引入对银行系统的稳定性和可 控性是非常重要的,其为在性能控制方面提供了可操作性,避免出现在性能糟糕时束手无 策的尴尬局面。
[0080]信息推送模块:为了增强用户体现,使用户可以及时了解请求被处理的最新状态, 设计了信息推送模块。在每个轮次处理结束后,信息推送模块从登记簿中获取数据处理请 求人的相关信息,组织一条数据处理状态信息发送给该请求人。具体实现可以通过消息队 列(MQ)的方式发送消息。
[0081]拆分合并模块:该模块提供用户关于报表大小的可定制性。对于某些较大的报表, 页数较长,用户不方面调阅,可以通过该机制拆分成多分小报表依次进行调阅处理;同时对 于多轮次处理的分散的数据结果也可以通过该机制合并成一个报表。
[0082] 查询调阅模块:数据处理请求人可以通过该查询调阅模块调阅请求处理的结果。 和登记簿模块一样,基于银行数据的机密性和用户身份的权限性,查询调阅模块也必须经 过安全管控模块的验证,在验证通过后才可以正常进行数据的调阅。在数据调阅时,柜员可 以指定报表的展现形式,如每页多少行信息,是否需要拆分后者合并展现,后台通过拆分合 并模块的拆分合并机制进行具体处理,即提供了一种根据客户需要可订制的查询调阅方 式,提高了用户交互的灵活性,增强了用户服务体验满意度。
[0083] 本发明提供一种在日间联机阶段进行批量数据处理的方法及装置,在联机事务 (联机业务)交互中接收批量业务的处理请求,在后台对批量处理业务数据进行数据加工, 不占用联机事务的时间窗口,并且操作人员在T日(当前交易日)就能查看到批量业务的处 理结果;根据批量数据业务的优先级在后台处理批量数据业务,并利用基于批量数据业务 吞吐量和处理时间的动态优先级算法在后台处理最低优先级别的批量数据业务,能够合理 利用日间联机窗口,使得每个批量数据业务请求都有机会得到处理,操作人员在当前交易 日就能查看到批量数据业务的处理结果,提高顾客的满意度。
[0084] 上述的本发明实施例可在各种硬件、软件编码或两者组合中进行实施。例如,本发 明的实施例也可为在数据信号处理器(Digital Signal Processor,DSP)中执行上述方法 的程序代码。本发明也可涉及计算机处理器、数字信号处理器、微处理器或现场可编程门阵 列(Field Programmable Gate Array,FPGA)执行的多种功能。可根据本发明配置上述处理 器执行特定任务,其通过执行定义了本发明揭示的特定方法的机器可读软件代码或固件代 码来完成。可将软件代码或固件代码发展为不同的程序语言与不同的格式或形式。也可为 不同的目标平台编译软件代码。然而,根据本发明执行任务的软件代码与其他类型配置代 码的不同代码样式、类型与语言不脱离本发明的精神与范围。
[0085] 以上所述仅为本发明示意性的【具体实施方式】,在不脱离本发明的构思和原则的前 提下,任何本领域的技术人员所做出的等同变化与修改,均应属于本发明保护的范围。
【主权项】
1. 一种在日间联机阶段进行批量数据处理的方法,其特征在于,该方法包括: 在联机业务交互中接收批量业务处理请求; 根据所述批量业务处理请求的标识将所述批量业务处理请求分成处理优先级不同的 队列;W及 按照所述队列的优先级在联机业务处理期间在后台依序处理所述批量业务处理请求。2. 如权利要求1所述的在日间联机阶段进行批量数据处理的方法,其特征在于,所述队 列包括非常紧急队列、紧急队列和普通队列,所述非常紧急队列、所述紧急队列和所述普通 队列的处理优先级依次降低。3. 如权利要求2所述的在日间联机阶段进行批量数据处理的方法,其特征在于,按照所 述队列的优先级在联机业务处理期间在后台依序处理所述批量业务处理请求的步骤,具体 包括: 在联机业务处理期间处理所述非常紧急队列内的所述批量业务处理请求时,根据所述 批量业务处理请求的发起时间依序处理所述批量业务处理请求。4. 如权利要求2所述的在日间联机阶段进行批量数据处理的方法,其特征在于,按照所 述队列的优先级在联机业务处理期间在后台依序处理所述批量业务处理请求的步骤,具体 包括: 在联机业务处理期间处理所述紧急队列内的所述批量业务处理请求时,根据所述批量 业务处理请求的发起时间依序处理所述批量业务处理请求。5. 如权利要求4所述的在日间联机阶段进行批量数据处理的方法,其特征在于,根据所 述批量业务处理请求的发起时间依序处理所述批量业务处理请求的步骤,具体包括: 按照请求发起时间的先后顺序依次处理所述批量业务处理请求; 判断所述批量业务处理请求的处理时间长度是否大于第一处理时间窗口阔值;W及 如果大于,则中止处理该批量业务处理请求,并将该批量业务处理请求归入普通队列 中。6. 如权利要求2所述的在日间联机阶段进行批量数据处理的方法,其特征在于,按照所 述队列的优先级在联机业务处理期间在后台依序处理所述批量业务处理请求的步骤,具体 包括: 在联机业务处理期间处理所述普通队列内的所述批量业务处理请求时,根据所述批量 业务处理请求的吞吐量和处理时长依次处理所述批量业务处理请求。7. 如权利要求6所述的在日间联机阶段进行批量数据处理的方法,其特征在于,的步 骤,具体包括: 按照所述吞吐量和所述处理时长计算所述批量业务处理请求的动态权重值; 根据所述动态权重值依次处理所述批量业务处理请求; 判断所述处理时长是否大于第二处理时间窗口阔值;W及 如果大于,则中止处理该批量业务处理请求,并将该批量业务处理请求排到普通队列 的队尾。8. 如权利要求7所述的在日间联机阶段进行批量数据处理的方法,其特征在于,将该批 量业务处理请求排到普通队列的队尾的步骤之后,还包括: 中止处理该批量业务处理请求时,将该批量业务处理请求对应的轮次值加1,其中,所 述轮次值的优先级高于所述动态权重值,并且所述轮次值的优先级低于所述标识,所述轮 次值越大优先级越低。9. 如权利要求7所述的在日间联机阶段进行批量数据处理的方法,其特征在于,所述动 态权重值Priority的计算公式为:其中,Priority表示计算出来的优先级,其值是过去η次处理批量业务处理请求时吞吐 量和处理时长比值的平均值;ProcessTime(i)表示在过去第i次处理批量业务处理请求所 用的时间,W毫秒为单位;InputSize(i)表示在过去第i次处理批量业务处理请求时输入数 据的大小,W字节为单位;OutputSize(i)表示在过去第i次处理批量业务处理请求时输出 数据的大小,W字节为单位。10. 如权利要求9所述的在日间联机阶段进行批量数据处理的方法,其特征在于,所述 I吨utSize(i)和所述0u1:putSize(i)的计算公式分别为:其中,InputRecor化ength(k)为在过去第i次处理批量业务处理请求时输入数据对象 的记录长度;m表示输入数据对象的个数;InputRecordCount化)为在过去第i次处理批量业 务处理请求时输入数据对象被访问处理的记录条数;0utputReco;ndLengtKk)为在过去第i 次处理批量业务处理请求时输出数据对象的记录长度;P表示输出数据对象的个数; Ou化utRecordCount化)为在过去第i次处理批量业务处理请求时输出数据对象被访问处理 的记录条数。11. 一种在日间联机阶段进行批量数据处理的装置,其特征在于,该装置包括: 接收单元,用于在联机业务交互中接收批量业务处理请求; 队列分配单元,用于根据所述批量业务处理请求的标识将所述批量业务处理请求分成 处理优先级不同的队列;W及 处理单元,用于按照所述队列的优先级在联机业务处理期间在后台依序处理所述批量 业务处理请求。12. 如权利要求11所述的在日间联机阶段进行批量数据处理的装置,其特征在于,所述 队列包括非常紧急队列、紧急队列和普通队列,所述非常紧急队列、所述紧急队列和所述普 通队列的处理优先级依次降低。13. 如权利要求12所述的在日间联机阶段进行批量数据处理的装置,其特征在于,所述 处理单元进一步包括: 第一处理模块,用于在联机业务处理期间处理所述非常紧急队列内的所述批量业务处 理请求时,根据所述批量业务处理请求的发起时间依序处理所述批量业务处理请求。14. 如权利要求12所述的在日间联机阶段进行批量数据处理的装置,其特征在于,所述 处理单元进一步包括: 第二处理模块,用于在联机业务处理期间处理所述紧急队列内的所述批量业务处理请 求时,根据所述批量业务处理请求的发起时间依序处理所述批量业务处理请求。15. 如权利要求14所述的在日间联机阶段进行批量数据处理的装置,其特征在于,所述 第二处理模块进一步包括: 第一处理子模块,用于按照请求发起时间的先后顺序依次处理所述批量业务处理请 求; 第一判断子模块,用于判断所述批量业务处理请求的处理时间长度是否大于第一处理 时间窗口阔值;W及 第一中止子模块,用于所述处理时间长度大于所述第一处理时间窗口阔值时中止处理 该批量业务处理请求,并且所述队列分配单元将该批量业务处理请求归入普通队列中。16. 如权利要求12所述的在日间联机阶段进行批量数据处理的装置,其特征在于,所述 处理单元进一步包括: 第Ξ处理模块,用于在联机业务处理期间处理所述普通队列内的所述批量业务处理请 求时,根据所述批量业务处理请求的吞吐量和处理时长依次处理所述批量业务处理请求。17. 如权利要求16所述的在日间联机阶段进行批量数据处理的装置,其特征在于,所述 第Ξ处理模块进一步包括: 计算子模块,用于按照所述吞吐量和所述处理时长计算所述批量业务处理请求的动态 权重值; 第二处理子模块,用于根据所述动态权重值依次处理所述批量业务处理请求; 第二判断子模块,用于判断所述处理时长是否大于第二处理时间窗口阔值;W及 第二中止子模块,用于所述处理时长大于所述第二处理时间窗口阔值时中止处理该批 量业务处理请求,并将该批量业务处理请求排到普通队列的队尾。18. 如权利要求17所述的在日间联机阶段进行批量数据处理的装置,其特征在于,所述 第Ξ处理模块还包括: 设置子模块,用于中止处理批量业务处理请求时将该批量业务处理请求对应的轮次值 加1,其中,所述轮次值的优先级高于所述动态权重值,并且所述轮次值的优先级低于所述 标识,所述轮次值越大优先级越低。
【文档编号】G06F9/48GK106095554SQ201610439380
【公开日】2016年11月9日
【申请日】2016年6月17日
【发明人】杨建学, 王峋, 张珊珊
【申请人】中国银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1