Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR DOCUMENT LOADING
Document Type and Number:
WIPO Patent Application WO/2012/142962
Kind Code:
A1
Abstract:
Provided is a method and a device for document loading, the method comprising the following steps: a document is divided into one or more sections according to the record count of the document; two or more work units are utilized to concurrently process said one or more sections; each of the two or more work units updates a work status after processing a preset number of records within the corresponding sections; the work status is used to provide information for exception handling.

Inventors:
CHEN LIN (CN)
LU ZHIJUN (CN)
MAO YUMING (CN)
YANG YANMING (CN)
HUA JINZHI (CN)
Application Number:
PCT/CN2012/074426
Publication Date:
October 26, 2012
Filing Date:
April 20, 2012
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CHINA UNIONPAY CO LTD (CN)
CHEN LIN (CN)
LU ZHIJUN (CN)
MAO YUMING (CN)
YANG YANMING (CN)
HUA JINZHI (CN)
International Classes:
G06F9/46
Foreign References:
CN101179392A2008-05-14
CN101729586A2010-06-09
US7593922B12009-09-22
Attorney, Agent or Firm:
CHINA PATENT AGENT (HK) LTD (CN)
中国专利代理(香港)有限公司 (CN)
Download PDF:
Claims:
权 利 要 求

1、 一种文件装载方法, 其特征在于,

根据文件中的记录数, 将文件分成一个或多个段,

利用两个或者更多个工作单元并发处理所述一个或多个段,

其中, 所述两个或者更多个工作单元的每一个每次在处理完对应的段中 的预定数量的记录后就更新各自的工作状态,所述工作状态用于为异常处理 提供信息。 2、 如权利要求 1所述的方法, 其特征在于, 将对应于所述一个或多个 段的段信息分配给所述两个或者更多个工作单元,每个工作单元根据被分配 到的段信息处理相应的段。

3、 如权利要求 2所述的方法, 其特征在于, 所述段信息包括用于指示 所述相应的段的开始记录和结束记录的指针。

4、 如权利要求 1所述的方法, 其特征在于, 所述工作状态包括对所述 预定数量的记录的处理结果。 5、 如权利要求 4所述的方法, 其特征在于, 所述工作状态进一步包括 发生异常的记录的指针。

6、 如权利要求 5所述的方法, 其特征在于, 当工作状态指示处理结果 为异常, 从发生异常的记录的指针处开始恢复处理。

7、 如权利要求 6所述的方法, 其特征在于, 采用轮询模式监控工作状 态。

8、 如权利要求 1所述的方法, 其特征在于, 进一步包括向外部系统发 送关于工作状态的信息, 并将来自外部系统的响应信息更新到工作状态中。

9、 如权利要求 1所述的方法, 其特征在于, 所述工作状态被存储在文 件中, 以及所述两个或者更多个工作单元共同维护一个工作状态文件或者所 述两个或者更多个工作单元分别维护各自的工作状态文件。

10、 如权利要求 1所述的方法, 其特征在于, 所述文件是参数文件, 所 述记录是参数, 所述处理是将所述参数文件中的参数录入到系统的数据库 中。

11、 如权利要求 10所述的方法, 其特征在于, 所述处理通过将所述参 数直接装载到正式参数表来完成录入。

12、 一种文件装载装置, 其特征在于, 包括,

预处理模块, 用于根据文件中的记录数, 将文件分成一个或多个段, 工作单元模块, 包括两个或者更多个工作单元, 用于并发处理所述一个 或多个段,

异常处理模块, 用于进行异常处理,

其中, 所述两个或者更多个工作单元的每一个每次在处理完对应的段中 的预定数量的记录后就更新各自的工作状态,所述工作状态用于为异常处理 模块提供信息。 13、 如权利要求 12所述的装置, 其特征在于, 所述预处理模块将对应 于所述一个或多个段的段信息分配给所述两个或者更多个工作单元,每个工 作单元根据被分配到的段信息处理相应的段。

14、 如权利要求 13所述的装置, 其特征在于, 所述段信息包括用于指 示所述相应的段的开始记录和结束记录的指针, 所述工作状态包括对所述预 定数量的记录的处理结果和发生异常情况的记录的指针,

所述异常处理模块被配置成监控工作单元的工作状态, 当工作状态指示 处理结果为异常时, 从发生异常的记录开始恢复处理。 15、 如权利要求 12所述的装置, 其特征在于, 进一步包括文件反馈处 理模块, 用于向外部系统发送关于工作状态的信息, 并将来自外部系统的响 应信息更新到工作状态中。 16、 如权利要求 12所述的装置, 其特征在于, 进一步包括文件控制模 块, 用于对文件的预处理和工作单元的处理装载进行监控。

Description:
一种用于文件装载的方法和装置 优先权要求

本申请要求了 2011年 4月 21 日提交的、 申请号为 201110101178.1、 发明名称为 "一种用于文件装载的方法和装置" 的中国专利申请的优先 权, 其全部内容通过引用结合在本申请中。 技术领域

本发明涉及文件装载的并发处理和断点续装, 并且尤其涉及用于文件装 载的方法和装置。 背景技术

在金融或电信等系统中, 将应用参数录入到系统, 即文件装载, 是保持 业务正确运行的前提, 尤其地, 在联机系统中快速装入参数是及时准确响应 服务的必要前提。 现有技术中, 常见的参数录入方式有人工逐参数录入或者 通过数据库工具导入与数据库所要求的格式匹 配的参数文件。现有技术中的 这些方式有如下缺点: 耗时、 对参数录入以及参数文件格式要求较高、 出错 几率大, 以及出错后的修复十分麻烦。

因此, 需要一种能够实现文件的快速装载、 对文件格式要求较低、 出错 几率小以及修复筒单的方法和装置。 发明内容

为解决现有技术的上述问题和其它问题, 本发明的一个目的在于提供一 种文件装载方法, 包括以下步骤,

根据文件中的记录数, 将文件分成一个或多个段,

利用两个或者更多个工作单元并发处理一个或 多个段,

其中, 两个或者更多个工作单元的每一个每次在处理 完对应的段中的预 定数量的记录后就更新各自的工作状态, 工作状态用于为异常处理提供信 息。

优选地,将对应于一个或多个段的段信息分配 给两个或者更多个工作单 元, 每个工作单元根据被分配到的段信息处理相应 的段。

优选地, 段信息包括用于指示相应的段的开始记录和结 束记录的指针。 优选地, 工作状态包括对预定数量的记录的处理结果。

优选地, 工作状态进一步包括发生异常的记录的指针。

优选地, 当工作状态指示处理结果为异常, 从发生异常的记录的指针处 开始恢复处理。

优选地, 采用轮询模式监控工作状态。

优选地, 上述方法进一步包括向外部系统发送关于工作 状态的信息, 并 将来自外部系统的响应信息更新到工作状态中 。

优选地, 工作状态被存储在文件中, 以及两个或者更多个工作单元共同 维护一个工作状态文件或者两个或者更多个工 作单元分别维护各自的工作 状态文件。

优选地, 文件是参数文件, 记录是参数, 处理是将参数文件中的参数录 入到系统的数据库中。

优选地, 处理通过将参数直接装载到正式参数表来完成 录入。

根据本发明的另一个目的, 提供了一种文件装载装置, 包括: 预处理模块, 用于根据文件中的记录数, 将文件分成一个或多个段, 工作单元模块, 包括两个或者更多个工作单元, 用于并发处理一个或多 个段,

异常处理模块, 用于进行异常处理,

其中, 两个或者更多个工作单元的每一个每次在处理 完对应的段中的预 定数量的记录后就更新各自的工作状态, 工作状态用于为异常处理模块提供 信息。

优选地,预处理模块将对应于一个或多个段的 段信息分配给两个或者更 多个工作单元, 每个工作单元根据被分配到的段信息处理相应 的段。

优选地, 段信息包括用于指示相应的段的开始记录和结 束记录的指针, 工作状态包括对预定数量的记录的处理结果和 发生异常情况的记录的指针, 异常处理模块被配置成监控工作单元的工作状 态, 当工作状态指示处理 结果为异常时, 从发生异常的记录开始恢复处理。

优选地, 该装置进一步包括文件反馈处理模块, 用于向外部系统发送关 于工作状态的信息, 并将来自外部系统的响应信息更新到工作状态 中。

优选地, 该装置进一步包括文件控制模块, 用于文件的预处理和工作单 元的处理装载进行监控。

本文提出了一种支持并发和断点续装的参数文 件装载方法和装置。这种 方法针对到文件读写的效率比较低, 不能满足大记录数下短时间内解析并实 时装载的需求, 提出了并发装载, 如采用的多线程或者多线程并发的方式。 对待装载文件首先根据文件大小决定文件并发 的数目, 对每一个工作单元 (相应的线程或者进程)分配不同的文件段, 不同线程在各自的段内独立工 作互不影响, 这种并发装载的设计有效地克服了文件串行处 理以及 I/O上的 低效率的缺陷。

现有技术中的文件装载通常先将参数慢慢装入 临时表, 处理好后再统一 导入正式表。 本发明针对大记录数文件装载时间长, 并且在期间发生磁盘、 数据库、 网络、 主机掉电等异常时恢复起来麻烦的缺陷, 本发明的方法将参 数直接装载到正式参数表, 提高参数的时效性, 并实时记录每个工作单元已 处理工作点的方式。 因此即使发生了异常也能够从断点处迅速恢复 , 不会出 现大面积重做或者正式表记录已经有前面处理 的冗余数据问题。

本发明的技术方案在应用金融信息等系统的参 数文件装载中能够缩短 业务数据生效时间、 提高服务质量和异常恢复能力。 附图说明

在参照附图阅读了本发明的具体实施方式以后 , 本领域技术人员将会更 清楚地了解本发明的各个方面。 本领域技术人员应当理解的是, 这些附图仅 仅用于配合具体实施方式说明本发明的技术方 案, 而并非意在对本发明的保 护范围构成限制。 其中,

图 1是根据本发明实施例的文件装载装置的结构 意图。

具体实施方式

下面参照附图, 对本发明的具体实施方式作进一步的详细描述 。

如图 1所示, 文件装载装置可以包括预处理模块、 工作单元模块、 异常 处理模块、 控制模块和文件反馈处理模块。

预处理模块模块是文件装载的入口, 负责接收来自外部系统的调用指 令, 并将调用指令进行解析和预处理。 其根据调用指令装载文件或参数文件 的记录, 并且根据文件中的记录数, 将文件分成一个或多个段。 在一个实施例中,预处理模块可以将对应于一 个或多个段的段信息分配 给两个或者更多个工作单元,每个工作单元根 据被分配到的段信息处理相应 的段。

在一个实施例中, 段信息可以包括待处理文件的记录的指针, 指示相应 的段的开始记录和结束记录。 也就是说, 段信息可以包含待处理参数文件的 指针, 指示段的始末位置。 进一步, 可以控制单个文件的分段数量。 当可被 并发处理的段的数量达到预定上限时, 则等待至前面被派发出去的段由工作 单元处理完成, 即直到有工作单元闲置的时候再继续分配段。 后文将详细描 述工作单元的处理。

这里,预处理模块将单个文件拆分成一个或多 个段并让多个工作单元并 发处理的优点在于, 一方面, 分段并发处理可以充分利用当前主机系统的并 发特性, 大幅度地提升装载文件的速度; 另一方面, 如本文后面将详细描述 的, 分段并发处理能够降低异常处理的颗粒度。 当某个段异常时, 只需重做 该段, 从而提升装载文件的效率。

本领域的技术人员可以理解的本发明不限于将 参数文件内数据提取到 参数数据库, 还可以被应用于任何文件的装载或者对于文件 的任何处理。

工作单元模块包括两个或者更多个工作单元, 用于并发处理所述一个或 多个段以完成每个文件段的装置任务。

在一个实施例中, 两个或者更多个工作单元的每一个每次在处理 完对应 的段中的预定数量的记录后就更新工作状态, 工作状态可以被用于为后文将 描述的异常处理模块提供信息。 例如, 工作单元每解析装载段内的预定数量 的数据则提交数据库并更新记录工作单元的工 作状态。 这里, 工作状态可以 被存储在文件中, 工作单元可以共同维护一个工作状态文件或者 分别维护各 自的工作状态文件。作为文件记录的工作状态 可以被用于实现参数文件的断 点续传。 举例来说, 段内具有 1000条记录, 而 "预定数量" 可以被设定为 10条, 即工作单元处理好 10条后更新工作状态。 如此, 更新越频繁后续出 现异常时断点续装中重复处理记录的数量越少 。

在一个实施例中, 工作状态进可以包括发生异常情况的记录的指 针来指 示恢复操作的起点。

在一个实施例中, 工作状态可以包括对所述预定数量的记录的处 理结 果, 该处理结果可以包括正常情况和异常情况。 异常处理模块, 用于进行异常处理, 对工作状态为异常的段进行异常排 查, 待异常处理完毕, 将工作状态更新为正常。

在一个实施例中, 当工作状态指示处理结果为异常时, 异常处理模块从 发生异常情况的记录开始恢复处理。 例如, 工作单元异常终止或者主机断电 等应用重启后, 均从工作单元状态的文件记录的断点处, 即发生异常的记录 处开始恢复。 如此能够缩减重复处理概率和异常恢复所需要 时间, 例如, 当 10000条记录已经处理了 9990条记录时,则该重启后根据上次保留的工 状 态, 需要重做的记录数目是 10条, 而无需从头文件开始处重新处理。

在一个实施例中, 异常处理模块可以采用轮询模式监控工作状态 。

可选地, 文件装载装置可以包括控制模块, 用于对文件装载请求的处理 状态以及各个工作单元的处理进行监控。 当发现文件分段调度完成并且所有 被调度工作单元已完成时, 控制模块启动下一步文件处理。 本领域的技术人 员可以理解的还可以利用其它已知的各种技术 来实现对反馈文件生成流程 的监控和 /或触发响应。

可选地, 文件装载装置可以包括文件反馈处理模块, 用于向外部系统发 送关于工作状态的信息, 并将来自外部系统的响应信息更新到工作状态 中。 反馈处理模块可以作为反馈文件生成过程中的 对外 "出口"。 本领域的技术 人员可以理解的还可以利用其它已知的各种技 术来实现文件反馈的功能。

本发明的上述的模块都可以设计成多进程并发 模式,通过将单一参数文 件任务拆分成多段的装载任务、 任务并发执行、 可单任务重做, 配合各个任 务在任务状态可实现异常时从断点处重装, 即可实现高效、 高可用的文件装 载。

本发明的支持并发和断点续装的文件装载方法 和装置, 充分利用了系统 资源、进程间通信以及数据库资源,提高了文 件装载的效率和异常恢复能力, 尤其在大记录数(如十万到千万级的记录)时 , 实时将参数文件装载直接装 载到正式表的性能与异常恢复方面具有很高的 价值。正常情况下所用时间近 似为非并发下的 "并发数分之一", 而无断点续装机制的情形下, 异常恢复 并完成装载的时间大于正常装载时间,有断点 续装机制的情形下异常恢复并 完成装载的时间约为正常装载时间减异常前已 处理时间。

通过以上实施方式的描述, 本领域的技术人员可以清楚地了解到本发明 可借助软件结合硬件平台的方式来实现, 当然也可以全部通过硬件来实施。 本领域中的普通技术人员能够理解, 在不偏离本发明的精神和范围的情况 下, 还可以对本发明的具体实施方式作各种变更和 替换。 这些变更和替换都 落在本发明权利要求书所限定的范围内。