数据采集及处理的系统及方法

文档序号:7813361阅读:382来源:国知局
数据采集及处理的系统及方法
【专利摘要】本发明提供了一种数据采集及处理方法,包括:自远程数据库获得计算所需求的业务数据,并存储到非关系内存数据库中相应的数据存储单元;采集用户端口中与业务数据相关的业务信息,并对该业务信息进行暂存和计算;将上述业务信息的计算结果存储到非关系内存数据库中相应的数据存储单元;定期将非关系内存数据库中更新的数据同步回传到远程数据库;从而在进行大量数据处理时,可直接与非关系内存数据库进行通讯,而不需要与远程数据库通讯,性能得到了最大的优化。
【专利说明】数据采集及处理的系统及方法

【技术领域】
[0001]本发明涉及一种计算机及通信领域数据采集及处理的系统及方法,尤其涉及一种利用非关系内存数据库的数据采集及处理的系统和方法。

【背景技术】
[0002]对于传统的业务处理方式,特别是需要处理大量并行数据的业务,常常需要从远程数据库中下载数据,再从内存中检索处理指令,再在运算器中进行计算。这会导致数据来回次数过多,导致计算速度减缓。而且这种业务处理方式需要与网络数据实时连通,若网络环境不稳定,则会影响当前业务。
[0003]因此,有必要提供一种改进的数据采集及处理的系统和方法以解决上述问题。


【发明内容】

[0004]本发明的目的在于提供一种高效稳定的数据采集及处理的系统和方法。
[0005]为实现上述目的,本发明提供了一种数据采集及处理方法,其特征在于,所述数据采集及处理方法包括如下步骤:
51、自远程数据库获得计算所需求的业务数据,并存储到非关系内存数据库中相应的数据存储单兀;
52、采集用户端口与SI步骤中业务数据相关的业务信息,并对该业务信息进行暂存和计算;
53、将上述业务信息的计算结果存储到非关系内存数据库中相应的数据存储单元;
54、定期将非关系内存数据库中更新的数据同步回传到远程数据库。
[0006]作为本发明的进一步改进,若干个所述数据存储单元在非关系内存数据库中呈一定顺序排列,所述业务数据与对应的业务信息的计算结果都存储于相应的数据存储单元中。
[0007]作为本发明的进一步改进,上述计算结果及业务数据均有特定的定义格式,所述定义格式为4字节记录总数+4字节变更版本号+ (8字节主键+1字节记录类型+记录内容+md5校验)*n,所述业务数据、与之相对应的业务信息的计算结果以及对应的数据存储单元具有相同的主键,在SI及S3步骤中进行存储操作时,将上述业务信息的计算结果及业务数据存储到非关系内存数据库中相应的数据存储单元。
[0008]作为本发明的进一步改进,所述S2步骤具体为:
521、监听用户端口,进行业务信息的接收及回发;
522、分析业务信息,抛弃业务信息中无效的部分并将剩余有效部分拆分成不同的指令数据;
523、获取指令数据,并根据指令数据的类型依次处理;
524、针对不同的指令数据进行不同的逻辑运算。
[0009]作为本发明的进一步改进,所述数据采集及处理方法还包括对SI至S4步骤同步进行监控,所述监控为逐层的软件监控,对SI至S4步骤的运行信息同步进行监控,并在运行异常时,对相应步骤进行重启。
[0010]为实现上述目的,本发明提供了一种数据采集及处理系统,其特征在于,所述数据采集及处理系统包括:
远程数据库,用以存储数据;
采集单元,设置有若干个采集子单元,每个采集子单元包括采集线程,用以采集用户端口的业务信息,处理线程,用以对采集到的业务信息进行计算,存储线程,用以暂存计算后的数据;
非关系内存数据库,包括若干个数据存储单元,用以存储从远程数据库中获取的计算需要的业务数据以及所述业务信息的计算结果;
同步单元,用以连接远程数据库和非关系内存数据库,使非关系内存数据库通过该数据同步单元自远程数据库中获得计算需要的业务数据,同时定期将非关系内存数据库汇总的更新数据同步回传到远程数据库。
[0011]作为本发明的进一步改进,所述数据存储单元在非关系内存数据库中呈一定顺序排列,所述业务数据及对应的业务信息的计算结果都存储于相应的数据存储单元。
[0012]作为本发明的进一步改进,业务信息的计算结果及业务数据均有特定的定义格式,所述格式为4字节记录总数+4字节变更版本号+ (8字节主键+1字节记录类型+记录内容+md5校验)*n,所述业务数据、与之相对应的业务信息的计算结果,以及对应的数据存储单元具有相同的主键,在非关系内存数据库中进行存储操作时,将业务信息的计算结果及业务数据存储到相应的数据存储单元。
[0013]作为本发明的进一步改进,所述采集及处理线程包括:
接收发送线程,用以监听用户端口,进行业务信息的接收及回发;
用户接口,用以分析业务信息,抛弃业务信息中无效的部分并将剩余有效部分拆分成不同的指令数据,
指令待处理队列,用以获取指令数据,再发送给用户接口,则用户接口针对不同的指令数据进行不同的逻辑运算。
[0014]作为本发明的进一步改进,所述数据采集及处理系统还包括监控远程数据库、采集单元、非关系内存数据库、同步单元的监控单元,所述监控单元为逐层的软件监控,对运行信息同步进行监控,并在数据异常时,对上述远程数据库、非关系内存数据库、采集单元及同步单元进行重启,其中所述监控单元对采集单元的监控具体包括有:
管理员监控,连接采集单元和用户端口,人工重启所述采集单元和用户端口 ;
监控程序监控,连接数据采集子单元,所述数据采集子单元的内存用量超过设置范围或者所述采集子单元汇报情况超时时,自动重启采集子单元或者采集子单元的监控单元;采集子单元监控,连接采集线程以及处理线程,自动重启超过响应时间限制值的所述采集线程和处理线程;
终端监控,连接终端,若长时间没有数据来往,或者多次发送数据无法成功,自动断开终端连接,等待终端自动重连。

【专利附图】

【附图说明】
[0015]图1是本发明中数据采集及处理方法的流程图;
图2是本发明中数据采集及处理系统的模块图。

【具体实施方式】
[0016]以下将结合附图所示的各实施方式对本实发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构或功能上的变换均包含在本发明的保护范围内。
[0017]本发明所述数据采集及处理方法包括以下步骤:
S1、自远程数据库获得计算所需求的业务数据,并存储到非关系内存数据库中相应的数据存储单元;所述业务数据一次性加载进非关系内存数据库中。
[0018]S2、采集用户端口与SI步骤中的业务数据相关的业务信息,并对该业务信息进行暂存和计算。S2步骤具体为:
521、监听用户端口,进行数据的接收及回发;
522、将收到的数据中无效的部分剔除,并根据剩余的有效部分,将数据拆分成不同的指令数据,并且一条条添加到队列中。
[0019]S23、循环获取队列中的指令,并根据指令数据的类型依次处理。
[0020]S24、针对不同的指令数据进行不同的逻辑运算,并且去访问不同的数据存储单
J Li ο
[0021]S3、将业务信息的计算结果存储到非关系内存数据库中相应的数据存储单元,所述数据存储单元在非关系内存数据库中呈一定顺序排列,所述业务数据与对应的业务信息的计算结果都存储于相应的数据存储单元内。
[0022]S4、定期将非关系内存数据库中更新的数据同步回传到远程数据库,所述数据存储单元有一定的大小限量,若数据存储单元内存储的数据超过了该限量,则将所述数据存储单元内的更新的部分回传到数据存储单元内。
[0023]上述S3步骤中,若在非关系内存数据库中存储或删除数据,可先缓存若干个存储或删除操作指令,或者在当前存储或删除操作时间间隔若干毫秒,进行一次批量操作。根据存储或删除操作指令,计算出要操作的数据库存储单元的范围列表,然后循环对数据进行统一的存储或删除。
[0024]上述S4步骤中,在将更新的数据同步回传到远程数据库之前,需要在非关系内存数据库中定位查找更新的数据,查找方法可使用二分法快速定位记录。
[0025]上述业务信息的计算结果及业务数据均有特定的定义格式,所述定义格式为4字节记录总数+4字节变更版本号+ (8字节主键+1字节记录类型+记录内容+md5校验)*n,所述业务数据、与之相对应的业务信息的计算结果以及对应的数据存储单元均具有相同的主键。所述4字节变更版本号为记录存储及删除操作的次数,所述记录内容根据不同的记录类型会有不同的定义。
[0026]所述数据采集及处理方法还包括对SI至S4步骤同步进行监控,所述监控步骤为逐层的软件监控,对SI至S4步骤的运行信息同步进行监控,并在运行异常时,对相应步骤进行重启。
[0027]结合以上方法,本发明还提供了一种数据采集及处理方法所对应的数据采集及处理系统,所述数据采集及处理系统包括远程数据库,采集单元,非关系内存数据库以及同步单元。所述同步单元连接远程数据库和非关系内存数据库,起到桥梁纽带作用。
[0028]所述远程数据库,用以存储数据;远程数据库中存储的数据的数据量大且杂,可用以进行计算量小且并发少的业务。
[0029]所述非关系内存数据库,用以存储从远程数据库中获取的计算需要的业务数据以及所述业务信息的计算结果;非关系内存数据库中设置有若干按照一定顺序排列的数据存储单元,每一数据存储单元都有一定的大小限制。所述业务数据及对应的业务信息的计算结果都存储于相应的数据存储单元。
[0030]所述采集单元设置有若干采集子单元,每个采集子单元包括采集线程,处理线程,存储线程;所述采集线程用以采集用户端口的业务信息,所述处理线程用以对采集到的业务信息进行计算,所述存储线程用以暂存计算后的数据。所述采集处理线程包括接收发送线程,用以监听用户端口,进行业务信息的接收及回发;用户接口,用以分析业务信息,抛弃业务信息中无效的部分并将剩余有效部分拆分成不同的指令数据;指令待处理队列,用以获取指令数据,再发送给用户接口,使用户接口针对不同的指令数据进行不同的逻辑运算。
[0031]所述同步单元用于连接远程数据库和非关系内存数据库,使非关系内存数据库通过数据同步单元自远程数据库中获得计算需要的业务数据,同时定期将非关系内存数据库汇总的更新数据同步回传到远程数据库。
[0032]所述数据采集及处理系统还包括监控远程数据库,采集单元,非关系内存数据库、同步单元的监控单元,所述监控单元为逐层的软件监控,对运行信息同步进行监控,并在数据异常时,对上述数据库或单元进行重启。
[0033]所述监控单元对采集单元进行监控,所述监控单元配置每个采集子单元处理哪些端口及一些参数;通过定时获取采集子单元的状态来确定是否要对采集子单元进行重启工作,确保稳定性;提供人机监控界面,方便管理员了解运行状况。
[0034]所述监控单元对采集单元的监控具体包括有:
管理员监控,连接采集单元和用户端口,人工重启所述采集单元和用户端口 ;
监控程序监控,连接数据采集子单元,所述数据采集子单元的内存用量超过设置范围或者所述采集子单元汇报情况超时时,自动重启采集子单元或者采集子单元的监控单元;采集子单元监控,连接采集线程以及处理线程,自动重启超过响应时间限制值的所述采集线程和处理线程;
终端监控,连接终端,若长时间没有数据来往,或者多次发送数据无法成功,自动断开终端连接,等待终端自动重连。
[0035]所述监控程序在进行监控之前,先对采集单元进行配置,配置数据库连接,配置采集子单元数量以及每个采集子单元处理哪些用户端口,配置采集子单元的重启规则。所述采集子单元的重启规则为:采集子单元的数据占用超过设定值则重启,最后响应时间超过设定的秒数则重启。上述配置完成以后,根据设置的采集子单元的数量,决定要生成几个程序软件,将数据库连接以及每个采集子单元对应的用户接口来为每个采集子单元生成对应的配置文件,供子程序启动时载入。
[0036]所述监控程序监控所有采集子单元的内存用量、最后响应时间及运行状态,监控所有用户接口的最后响应时间及执行任务的情况,管理员手动重启采集子单元或采集子单元中的监控程序。采集子单元每5秒生成一次记录该程序当前状态的数据文件,并发送消息给监控程序,让其载入该数据并显示到监控界面上,以及对满足要求的采集子单元或采集子单元中的监控程序进行重启,也可针对自动重启无效的情况,使用手动重启的方式。
[0037]根据以上的数据采集及处理系统及方法,本发明在进行大量的数据处理时,可直接与非关系内存数据库进行通讯,而不需要与远程数据库的通讯,避免了数据处理时与其他设备或程序的通讯,数据来回次数少,性能得到了最大的优化。只有在非关系内存数据库与远程数据库进行连通或关闭使用非关系内存数据库时,才会有与远程数据库的通讯过程,大大减少了磁盘读写。因此即便在网络环境不稳定的情况下,对当前的业务的影响都不大。当然,在处理并行少,数据量小的数据时,可将采集单元与远程数据库连通,直接从远程数据库中获得数据,进行数据操作。
[0038]并且,通过对整个数据采集及处理系统的监控,在出现问题时,能及时断开连接,重启有问题的步骤,并且提供良好的人机界面,管理员能够随时监控到整个系统的每一方面,并通过人工重启的方式,解决相应步骤的问题。
[0039]应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
[0040]上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
【权利要求】
1.一种数据采集及处理方法,其特征在于,所述数据采集及处理方法包括如下步骤: 51、自远程数据库获得计算所需求的业务数据,并存储到非关系内存数据库中相应的数据存储单兀; 52、采集用户端口与SI步骤中业务数据相关的业务信息,并对该业务信息进行暂存和计算; 53、将上述业务信息的计算结果存储到非关系内存数据库中相应的数据存储单元; 54、定期将非关系内存数据库中更新的数据同步回传到远程数据库。
2.根据权利要求1所述的数据采集及处理方法,其特征在于,若干个所述数据存储单元在非关系内存数据库中呈一定顺序排列,所述业务数据与对应的业务信息的计算结果都存储于相应的数据存储单元中。
3.根据权利要求2所述的数据采集及处理方法,其特征在于,上述计算结果及业务数据均有特定的定义格式,所述定义格式为4字节记录总数+4字节变更版本号+ (8字节主键+1字节记录类型+记录内容+md5校验)*n,所述业务数据、与之相对应的业务信息的计算结果以及对应的数据存储单元具有相同的主键,在SI及S3步骤中进行存储操作时,将上述业务信息的计算结果及业务数据存储到非关系内存数据库中相应的数据存储单元。
4.根据权利要求1所述的数据采集及处理方法,其特征在于,所述S2步骤具体为: 521、监听用户端口,进行业务信息的接收及回发; 522、分析业务信息,抛弃业务信息中无效的部分并将剩余有效部分拆分成不同的指令数据; 523、获取指令数据,并根据指令数据的类型依次处理; 524、针对不同的指令数据进行不同的逻辑运算。
5.根据权利要求1,所述数据采集及处理方法还包括对SI至S4步骤同步进行监控,所述监控为逐层的软件监控,对SI至S4步骤的运行信息同步进行监控,并在运行异常时,对相应步骤进行重启。
6.一种数据采集及处理系统,其特征在于,所述数据采集及处理系统包括: 远程数据库,用以存储数据; 采集单元,设置有若干个采集子单元,每个采集子单元包括采集线程,用以采集用户端口的业务信息,处理线程,用以对采集到的业务信息进行计算,存储线程,用以暂存计算后的数据; 非关系内存数据库,包括若干个数据存储单元,用以存储从远程数据库中获取的计算需要的业务数据以及所述业务信息的计算结果; 同步单元,用以连接远程数据库和非关系内存数据库,使非关系内存数据库通过该数据同步单元自远程数据库中获得计算需要的业务数据,同时定期将非关系内存数据库汇总的更新数据同步回传到远程数据库。
7.根据权利要求6所述的数据采集及处理系统,其特征在于,所述数据存储单元在非关系内存数据库中呈一定顺序排列,所述业务数据及对应的业务信息的计算结果都存储于相应的数据存储单元。
8.根据权利要求7所述的数据采集及处理系统,其特征在于,业务信息的计算结果及业务数据均有特定的定义格式,所述定义格式为4字节记录总数+4字节变更版本号+ (8字节主键+1字节记录类型+记录内容+md5校验)*n,所述业务数据、与之相对应的业务信息的计算结果,以及对应的数据存储单元具有相同的主键,在非关系内存数据库中进行存储操作时,将业务信息的计算结果及业务数据存储到相应的数据存储单元。
9.根据权利要求6所述的数据采集及处理系统,其特征在于,所述采集及处理线程包括: 接收发送线程,用以监听用户端口,进行业务信息的接收及回发; 用户接口,用以分析业务信息,抛弃业务信息中无效的部分并将剩余有效部分拆分成不同的指令数据, 指令待处理队列,用以获取指令数据,再发送给用户接口,则用户接口针对不同的指令数据进行不同的逻辑运算。
10.根据权利要求6,所述数据采集及处理系统还包括监控远程数据库、采集单元、非关系内存数据库、同步单元的监控单元,所述监控单元为逐层的软件监控,对运行信息同步进行监控,并在数据异常时,对上述远程数据库、非关系内存数据库、采集单元及同步单元进行重启,其中所述监控单元对采集单元的监控具体包括有: 管理员监控,连接采集单元和用户端口,人工重启所述采集单元和用户端口 ; 监控程序监控,连接数据采集子单元,所述数据采集子单元的内存用量超过设置范围或者所述采集子单元汇报情况超时时,自动重启采集子单元或者采集子单元的监控单元;采集子单元监控,连接采集线程以及处理线程,自动重启超过响应时间限制值的所述采集线程和处理线程; 终端监控,连接终端,若长时间没有数据来往,或者多次发送数据无法成功,自动断开终端连接,等待终端自动重连。
【文档编号】H04L29/08GK104199930SQ201410447999
【公开日】2014年12月10日 申请日期:2014年9月4日 优先权日:2014年9月4日
【发明者】唐鸣 申请人:江苏百联软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1