一种交易质量分析装置以及交易质量分析方法

文档序号:10594136阅读:265来源:国知局
一种交易质量分析装置以及交易质量分析方法
【专利摘要】本发明涉及一种交易质量分析装置以及交易质量分析系统。该装置具备:交易抓取模块,用于从数据库抓取交易数据并且加以缓存;交易监控模块,用于对所述交易抓取模块抓取的交易数据进行监控;交易过滤模块,用于对所述交易监控模块的监控结果进行过滤;以及质量分析模块,用于对所述交易过滤模块过滤后的结果进行质量分析并将计算结果输出。根据本发明能够有效避免对联机交易核心数据库的干扰。
【专利说明】一种交易质量分析装置以及交易质量分析方法
[0001]
技术领域
[0002]本发明涉及一种数据处理装置以及数据处理方法,具体地涉及一种交易质量分析装置以及交易质量分析方法。
[0003]
【背景技术】
[0004]常见的联机交易质量统计分析依赖于数据库的性能,会将统计时段的交易笔数,交易成功笔数等搜索出来再计算,在大并发情况下,一笔交易可能存在于多个周期,这样会被多次搜索,同时基于数据库频繁功能扫描交易笔数在大并发情况下,对于性能是极大的挑战。
[0005]_

【发明内容】

[0006]鉴于上述问题,本发明旨在提供一种能够减少对数据库的操作并能够对交易质量实时进行分析的交易质量分析装置以及交易质量分析方法。
[0007]本发明的交易质量分析装置,其特征在于,具备:
交易抓取模块,用于从数据库抓取交易数据并且加以缓存;
交易监控模块,用于对所述交易抓取模块抓取的交易数据进行监控;
交易过滤模块,用于对所述交易监控模块的监控结果进行过滤;以及
质量分析模块,用于对所述交易过滤模块过滤后的结果进行质量分析并将计算结果输出。
[0008]优选地,所述交易抓取模块从数据库抓取交易数据并且以时间戳构建缓存链表加以缓存。
[0009]优选地,所述缓存链表为先进先出链表。
[0010]优选地,所述交易监控模块通过对所述链表进行读取并且加工成表示交易成功/失败率的树形。
[0011]优选地,所述树形为二叉树,其中,所述二叉树的根节点存储单位时间的交易总量,一侧叶子存储单位时间的成功交易数量,另一侧叶子存储单位时间的失败交易数量。
[0012]优选地,所述交易过滤模块根据交易数据中的交易时间和应答码要素判定交易是否成功,在判定成功的情况下,在所述一侧叶子的节点计数器加一,否则在所述另一侧叶子的节点计数器加一。
[0013]优选地,所述质量分析模块对所述交易过滤模块过滤后的结果每隔一定时间读取N个节点数据进行成功率计算并且将计算结果输出,其中N为自然数。
[0014]本发明的交易质量分析方法,其特征在于,该方法包括下述步骤: 交易抓取步骤,从数据库抓取交易数据并且加以缓存;
交易监控步骤,对所述交易抓取步骤抓取的交易数据进行监控;
交易过滤步骤,对所述交易监控步骤获取的监控结果进行过滤;以及
质量分析步骤,对所述交易过滤步骤过滤后的结果进行质量分析并将计算结果输出。
[0015]优选地,在所述交易抓取步骤中,从数据库抓取交易数据并且以时间戳构建先进先出缓存链表加以缓存。
[0016]优选地,在所述交易监控步骤中,通过对所述链表进行读取并且加工成表示交易成功/失败率的二叉树。
[0017]优选地,设置所述二叉树的根节点存储单位时间的交易总量,一侧叶子存储单位时间的成功交易数量,另一侧叶子存储单位时间的失败交易数量。
[0018]优选地,在所述交易过滤步骤中,根据交易数据中的交易时间和应答码要素判定交易是否成功,在判定成功的情况下,在所述一侧叶子的节点计数器加一,否则在所述另一侧叶子的节点计数器加一。
[0019]优选地,在所述质量分析步骤中,对所述交易过滤步骤过滤后的结果每隔一定时间读取N个节点数据进行成功率计算并且将计算结果输出,其中N为自然数。
[0020]根据本发明的质量分析装置以及质量分析方法,通过从数据库中抓取数据,然后对抓取的数据进行操作,这样,替代直接操作数据库而是对缓存数据进行操作,能够有效避免对联机交易核心数据库的干扰。
[0021]
【附图说明】
[0022]图1是本发明的交易质量分析装置的构造框架图。
[0023]图2表示由本发明的交易质量分析装置实现的交易质量判断、分析的一个具体方式的示意图。
[0024]图3示例了二叉树的构造。
[0025]图4是本发明的交易质量分析方法的流程图。
[0026]
【具体实施方式】
[0027]下面介绍的是本发明的多个实施例中的一些,旨在提供对本发明的基本了解。并不旨在确认本发明的关键或决定性的要素或限定所要保护的范围。
[0028]下面对于本发明的交易质量分析装置进行说明。
[0029]图1是本发明的交易质量分析装置的构造框架图。
[0030]具体地,如图1所示,交易质量分析装置具备用于从数据库抓取交易数据并且以时间戳构建先进先出链表缓存于缓存内存块的交易抓取模块100;通过对所述链表进行读取并且加工成表示交易成功/失败率的树形的交易监控模块200;对所述交易监控模块200加工结果进行过滤的交易过滤模块300;以及每隔一定时间读取N个节点数据以进行成功率计算并且将计算结果输出的质量分析模块400。
[0031]作为交易质量判断、分析的具体方式可以列举如图2所示的一个示例。
[0032]图2表示由本发明的交易质量分析装置实现的交易质量判断、分析的一个具体方式的示意图。
[0033 ]如图3所示,交易抓取模块100从数据库500中抓取数据,准实时(例如,可以在交易进行入数据库的规定时间后才进行抓取,该规定时间可以自由配置,例如配置为5秒)将交易数据同步到高速缓存(未图示)中,在高速缓存中以交易时间戳构建先进先出缓存链101,通过对缓存链表101的操作而不是直接操作数据库,能够避免对联机交易核心数据库产生干扰。
[0034]接着,交易监控模块200通过对缓存链表101的循环读取,加工出例如以秒为根节点的60个二叉树(在这里示例以秒为单位的情况,当然本发明不限于秒的单位,也可以采用其他单位,例如5秒一个单位或者分钟为单位)。在图3中示例了了二叉树的构造。如图3所示,二叉树的根节点存放当前秒下的交易总量,左叶子表示成功交易数量,右叶子表示失败交易数量。交易过滤模块300每分析一笔交易根据交易中的交易时间和应答码要素判定交易成功与否(例如,通过应答码来判定的情况下,应答码是由规定的技术规范确定的,这样的技术规范包括规定某些应答码可以判定系统处理成功,当收到这些应应答码的情况下,判定为交易成功,否则,判定为交易失败),进而在对应时间点二叉树的叶子节点计数器加一,该类二叉树用于交易成功率分析。具体地,交易过滤模块300对每一笔交易进行处理,处理后得到是在哪个时间点(秒)上应该增加一个成功计数还是失败计数。
[0035]接着,质量分析模块400每隔一定时间(可以按照需求设定间隔事件,例如,3秒)读取连续N个(N与间隔时间匹配)节点数据,进行成功率的计算,并将计算结果输出。这样,如此推移、反复工作。
[0036]如上所述,在本发明中,采用内存缓存并以缓存链表过渡,能够减少对数据库的操作。统计一个时间段的成功率,而往往时间段是平移的,比如发生在第2秒的交易在第二个统计周期还是需要去筛选的,传统的基于数据库操作,对于一笔交易就会被多次搜索或者说捕捉。而在本发明中,将交易抓取到内存里面,构建一个缓存链表,数据库操作只有在抓交易的那一次。因此,能够明显减少对数据库的操作。
[0037]而且,二次加工后存放在二叉树内再统计分析,将统计成功率的计算由现有技术中的交易笔数敏感转变成固定次数。例如,在现有技术中,统计成功率是利用数据库的语句直接完成的,比如利用数据库的count或者sum类似的,这个消耗的是数据库服务器的计算力,一旦统计周期内交易笔数多,数据库的查询和计算效率会显著降低。
[0038]而与此相对,本发明中采用二叉树的算法,对于成功率计算不依赖于数据库的select而是N等于3的情况下的对于树的3次和5次加法、I次除法【(节点I成功+节点2成功+节点3成功=分子值)/(分子值+节点I失败+节点2失败+节点3失败)】。这样即使瞬时交易笔数(即所谓TPS,每秒交易笔数)无论怎么增加,计算力需求是一样的,而不会消耗数据库的计算力。
[0039]根据本发明的质量分析装置,通过从数据库中抓取数据,然后对抓取的数据进行操作,这样,替代直接操作数据库而是对缓存数据进行操作,能够有效避免对联机交易核心数据库的干扰,能够进一步提高数据处理能力。
[0040]以上对于本发明的交易质量分析装置进行了说明。接着,对于本发明的交易分析方法进行简单说明。
[0041]图4是本发明的交易质量分析方法的流程图。如图4所示,本发明的交易质量分析方法,包括下述步骤:
交易抓取步骤S100:从数据库抓取交易数据并且以时间戳构建先进先出缓存链表加以缓存;
交易监控步骤S200:对所述交易抓取步骤抓取的交易数据进行监控,通过对所述链表进行读取并且加工成表示交易成功/失败率的二叉树,设置所述二叉树的根节点存储单位时间的交易总量,一侧叶子存储单位时间的成功交易数量,另一侧叶子存储单位时间的失败交易数量;
交易过滤步骤S300:对所述交易监控步骤获取的监控结果进行过滤,其中,根据交易数据中的交易时间和应答码要素判定交易是否成功,在判定成功的情况下,在所述一侧叶子的节点计数器加一,否则在所述另一侧叶子的节点计数器加一;以及
质量分析步骤S400:对所述交易过滤步骤过滤后的结果进行质量分析并将计算结果输出,其中,对所述交易过滤步骤过滤后的结果每隔一定时间读取N个节点数据进行成功率计算并且将计算结果输出,其中N为自然数。
[0042]以上例子主要说明了本发明的交易质量分析装置以及交易质量分析方法。尽管只对其中一些本发明的【具体实施方式】进行了描述,但是本领域普通技术人员应当了解,本发明可以在不偏离其主旨与范围内以许多其他的形式实施。因此,所展示的例子与实施方式被视为示意性的而非限制性的,在不脱离如所附各权利要求所定义的本发明精神及范围的情况下,本发明可能涵盖各种的修改与替换。
【主权项】
1.一种交易质量分析装置,其特征在于,具备: 交易抓取模块,用于从数据库抓取交易数据并且加以缓存; 交易监控模块,用于对所述交易抓取模块抓取的交易数据进行监控; 交易过滤模块,用于对所述交易监控模块的监控结果进行过滤;以及 质量分析模块,用于对所述交易过滤模块过滤后的结果进行质量分析并将计算结果输出。2.如权利要求1所述的交易质量分析装置,其特征在于, 所述交易抓取模块从数据库抓取交易数据并且以时间戳构建缓存链表加以缓存。3.如权利要求2所述的交易质量分析装置,其特征在于, 所述缓存链表为先进先出链表。4.如权利要求3所述的交易质量分析装置,其特征在于, 所述交易监控模块通过对所述链表进行读取并且加工成表示交易成功/失败率的树形。5.如权利要求4所述的交易质量分析装置,其特征在于, 所述树形为二叉树,其中,所述二叉树的根节点存储单位时间的交易总量,一侧叶子存储单位时间的成功交易数量,另一侧叶子存储单位时间的失败交易数量。6.如权利要求5所述的交易质量分析装置,其特征在于, 所述交易过滤模块根据交易数据中的交易时间和应答码要素判定交易是否成功,在判定成功的情况下,在所述一侧叶子的节点计数器加一,否则在所述另一侧叶子的节点计数器加一O7.如权利要求6所述的交易质量分析装置,其特征在于, 所述质量分析模块对所述交易过滤模块过滤后的结果每隔一定时间读取N个节点数据进行成功率计算并且将计算结果输出,其中N为自然数。8.一种交易质量分析方法,其特征在于,该方法包括下述步骤: 交易抓取步骤,从数据库抓取交易数据并且加以缓存; 交易监控步骤,对所述交易抓取步骤抓取的交易数据进行监控; 交易过滤步骤,对所述交易监控步骤获取的监控结果进行过滤;以及 质量分析步骤,对所述交易过滤步骤过滤后的结果进行质量分析并将计算结果输出。9.如权利要求8所述的交易质量分析方法,其特征在于, 在所述交易抓取步骤中,从数据库抓取交易数据并且以时间戳构建先进先出缓存链表加以缓存。10.如权利要求9所述的交易质量分析方法,其特征在于, 在所述交易监控步骤中,通过对所述链表进行读取并且加工成表示交易成功/失败率的二叉树。11.如权利要求10所述的交易质量分析方法,其特征在于, 设置所述二叉树的根节点存储单位时间的交易总量,一侧叶子存储单位时间的成功交易数量,另一侧叶子存储单位时间的失败交易数量。12.如权利要求11所述的交易质量分析方法,其特征在于, 在所述交易过滤步骤中,根据交易数据中的交易时间和应答码要素判定交易是否成功,在判定成功的情况下,在所述一侧叶子的节点计数器加一,否则在所述另一侧叶子的节点计数器加一。13.如权利要求12所述的交易质量分析步骤,其特征在于, 在所述质量分析步骤中,对所述交易过滤步骤过滤后的结果每隔一定时间读取N个节点数据进行成功率计算并且将计算结果输出,其中N为自然数。
【文档编号】G06F17/30GK105956036SQ201610262928
【公开日】2016年9月21日
【申请日】2016年4月26日
【发明人】陈林, 张晓明, 徐立伟, 张峻浩, 杨森
【申请人】中国银联股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1