CN106484791B - 一种数据统计方法和装置 - Google Patents

一种数据统计方法和装置 Download PDF

Info

Publication number
CN106484791B
CN106484791B CN201610836827.5A CN201610836827A CN106484791B CN 106484791 B CN106484791 B CN 106484791B CN 201610836827 A CN201610836827 A CN 201610836827A CN 106484791 B CN106484791 B CN 106484791B
Authority
CN
China
Prior art keywords
transaction data
server
computing server
computing
calculation
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
CN201610836827.5A
Other languages
English (en)
Other versions
CN106484791A (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.)
China Unionpay Co Ltd
Original Assignee
China Unionpay Co 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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201610836827.5A priority Critical patent/CN106484791B/zh
Publication of CN106484791A publication Critical patent/CN106484791A/zh
Application granted granted Critical
Publication of CN106484791B publication Critical patent/CN106484791B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Fuzzy Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例涉及计算机数据统计领域,尤其涉及一种数据统计方法和装置,包括:首先根据预先设定的过滤规则,对原始交易数据进行过滤处理,得到第一交易数据,然后根据第一交易数据中的关键字信息,确定第一交易数据所对应的计算服务器,最后将第一交易数据发送至计算服务器,以使计算服务器将根据预先设定的统计维度对第一交易数据进行统计得到的第二交易数据发送给查询服务器使用,可以看出,关键字相同的第一交易数据将会发送至同一计算服务器,而计算服务器可将第二交易数据给查询服务器使用,因此,可通过增加计算服务器的数量的方式水平扩展计算统计的能力,从而提高将数据写入数据库的速度,进而提升数据的查询效率。

Description

一种数据统计方法和装置
技术领域
本发明实施例涉及计算机数据统计领域,尤其涉及一种数据统计方法和装置。
背景技术
数据统计在各行各业中都有应用,尤其在银行业务中使用较为频繁。目前,普遍采用的数据统计方法是在接收交易数据后,将接收的交易数据进行计算后,再以事务的方式将计算后的交易数据写入数据库,以供用户查询。
然而,通过事务的方式将计算后的交易数据写入数据库的时效性较低,并且由于通过事务的方式将交易数据写入数据库的速度取决于服务器的CPU(Central ProcessingUnit,中央处理器)、内存以及数据库的写入性能,难以水平扩展,从而无法提高将交易数据写入数据库的速度,降低了数据的查询效率。
发明内容
本发明实施例提供一种数据统计方法和装置,用以通过提高将交易数据写入数据库的速度,从而提升数据的查询效率。
本发明实施例提供一种数据统计方法,包括:
根据预先设定的过滤规则,对原始交易数据进行过滤处理,得到第一交易数据,所述过滤规则包括所述原始交易数据的至少一个字段信息;
根据所述第一交易数据中的关键字信息,确定所述第一交易数据所对应的计算服务器;
将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给查询服务器使用。
较佳的,所述将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给查询服务器使用,包括:
将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给汇总服务器;
所述汇总服务器将从各计算服务器接收到的第二交易数据进行汇总处理后存储至数据库供查询服务器使用。
较佳的,所述过滤规则是由各计算服务器的统计维度确定的。
较佳的,所述根据所述第一交易数据中的关键字信息,确定所述第一交易数据所对应的计算服务器,包括:
将所述第一交易数据中的关键字信息作为一致性哈希算法的输入参数进行运算后,得到所述第一交易数据所对应的计算服务器的标识信息;
根据得到的所述标识信息确定所述第一交易数据所对应的计算服务器;
其中,所述一致性哈希算法的闭合环中包括至少一个计算服服务器的标识信息。
较佳的,该方法还包括:
通过心跳机制对所述计算服务器进行检测,在检测到计算服务器发生故障时,将发生故障的计算服务器的标识信息从所述一致性哈希算法的闭合环中删除。
较佳的,所述通过心跳机制对所述计算服务器进行检测,包括:
定期接收所述计算服务器的存活消息;
若在预设的时间段内,未接收到所述计算服务器的存活消息,则判定所述计算服务器发生故障。
本发明实施例还提供一种数据统计装置,包括:
过滤单元,用于根据预先设定的过滤规则,对原始交易数据进行过滤处理,得到第一交易数据,所述过滤规则包括所述原始交易数据的至少一个字段信息;
确定单元,用于根据所述第一交易数据中的关键字信息,确定所述第一交易数据所对应的计算服务器;
发送单元,用于将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给查询服务器使用。
较佳的,所述发送单元,具体用于:
将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给汇总服务器;
所述汇总服务器将从各计算服务器接收到的第二交易数据进行汇总处理后存储至数据库供查询服务器使用。
较佳的,所述过滤规则是由各计算服务器的统计维度确定的。
较佳的,所述确定单元,具体用于:
将所述第一交易数据中的关键字信息作为一致性哈希算法的输入参数进行运算后,得到所述第一交易数据所对应的计算服务器的标识信息;
根据得到的所述标识信息确定所述第一交易数据所对应的计算服务器;
其中,所述一致性哈希算法的闭合环中包括至少一个计算服服务器的标识信息。
较佳的,还包括:检测单元;
所述检测单元,用于通过心跳机制对所述计算服务器进行检测,在检测到计算服务器发生故障时,将发生故障的计算服务器的标识信息从所述一致性哈希算法的闭合环中删除。
较佳的,所述检测单元,具体用于:
定期接收所述计算服务器的存活消息;
若在预设的时间段内,未接收到所述计算服务器的存活消息,则判定所述计算服务器发生故障。
上述实施例提供的数据统计方法和装置,包括:首先根据预先设定的过滤规则,对原始交易数据进行过滤处理,得到第一交易数据,然后根据所述第一交易数据中的关键字信息,确定所述第一交易数据所对应的计算服务器,最后将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给查询服务器使用,可以看出,由于在得到第一交易数据后,可将关键字确定第一交易数据所对应的计算服务器时,因此关键字相同的第一交易数据将会发送至同一计算服务器,而计算服务器可根据预先设定的统计维度将对第一交易数据进行统计处理后得到第二交易数据,并将第二交易数据发送给查询服务器使用,因此,可通过增加计算服务器的数量的方式实现水平扩展计算统计的能力,从而提高将数据写入数据库的速度,进而提升数据的查询效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。
图1为本发明实施例提供的一种数据统计方法流程图;
图2为本发明实施例提供的计算服务器的处理流程图;
图3为本发明实施例提供的计算服务器的另一幅处理流程图;
图4为本发明实施例提供的对计算服务器进行检测的流程图;
图5为本发明实施例提供的一种数据统计装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1示例性示出了本发明实施例提供的一种数据统计方法流程图,如图1所示,该方法主要包括:
S101、根据预先设定的过滤规则,对原始交易数据进行过滤处理,得到第一交易数据,其中,所述过滤规则包括所述原始交易数据中的至少一个字段信息。
S102、根据第一交易数据中的关键字信息,确定第一交易数据所对应的计算服务器。
S103、将第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对第一交易数据进行统计的得到的第二交易数据发送给查询服务器使用。
优选的,过滤规则是由各计算服务器的统计维度确定的。
具体的,在根据预先设定的过滤规则,对原始交易数据进行过滤处理时,可将过滤规则预先设置于过滤服务器中,由过滤服务器基于过滤规则对接收到的原始交易数据进行过滤处理。上述步骤S102中,根据第一交易数据中的关键字信息,确定第一交易数据所对应的计算服务器,可通过将第一交易数据中的关键字信息作为一致性哈希算法的输入参数进行运算后,得到第一交易数据所对应的计算服务器的标识信息,然后根据得到的标识信息确定第一交易数据所对应的计算服务器。
在具体实施时,可预先将所有的计算服务器的标识信息放置在一致性哈希算法的闭合环中,在得到第一交易数据后,将第一交易数据中的关键字信息作为一致性哈希算法的输入参数进行运算后,得到第一交易数据所对应的计算服务器的标识信息,从而根据得到的标识信息确定第一交易数据所对应的计算服务器。
因此,具有相同关键字的交易数据将会被路由到标识信息相同的计算服务器中,即具有相同关键字的交易数据将会被路由到同一计算服务器中。
需要说明的是,第一交易数据中可包含多个关键字,即第一交易数据可以根据关键字的不同被路由到多个计算服务器中。
可选的,在上述步骤S103中,可通过RPC(Remote Procedure Call Protocol,远程过程调用协议)的方式将第一交易数据发送至计算服务器,在通过RPC的方式将第一交易数据发送至计算服务器后,计算服务器可根据预先设定的统计维度对接收到的第一交易数据进行统计处理,从而得到第二交易数据,计算服务器在得到第二交易数据后,可将第二交易数据发送至汇总服务器。汇总服务器在接收到各计算服务器发送的第二交易数据后,可对接收到的各计算服务器发送的第二交易数据进行汇总处理,并在对从各计算服务器发送的第二交易数据进行汇总处理,并生成统计结果报文,并将统计结果报文存储至数据库供查询服务器使用。
具体的,汇总服务器在对从各计算服务器发送的第二交易数据进行汇总处理,并生成统计结果报文后,可将统计结果报文整体写入Redis集群中。同时,为了节约网络带宽,本发明实施例还可在汇总服务器中设置一个缓冲存储空间,即汇总服务器在对从各计算服务器发送的第二交易数据进行汇总处理,并生成统计结果报文后,可将统计结果报文先存储至缓冲存储空间中,然后由汇总服务器将缓冲存储空间中存储的统计结果报文定期批量存储至Redis。
值得注意的是,各计算服务器在将第二交易数据发送给汇总服务器时,可采用时间窗的方式同时将各自统计得到的第二交易数据发送给汇总服务器。
例如,假设存在三个计算服务器,分别为:计算服务器1、计算服务器2、以及计算服务器3,并将时间窗的时间长度为5秒钟,则表示计算服务器1从过滤服务器中接收的第一交易数据持续的时间为5秒钟、计算服务器2从过滤服务器中接收的第一交易数据持续的时间也为5秒钟、计算服务器3从过滤服务器中接收的第一交易数据持续的时间也为5秒钟。进一步假设计算服务器1从过滤服务器中接收的第一交易数据持续时间段为17:30:00~17:30:05,那么,计算服务器2从过滤服务器中接收的第一交易数据持续时间段也为17:30:00~17:30:05,计算服务器3从过滤服务器中接收的第一交易数据持续时间段也为17:30:00~17:30:05。在计算服务器1从过滤服务器中接收的第一交易数据持续时间段为17:30:00~17:30:05、计算服务器2从过滤服务器中接收的第一交易数据持续时间段为17:30:00~17:30:05、计算服务器3从过滤服务器中接收的第一交易数据持续时间段为17:30:00~17:30:05后,计算服务器1、计算服务器2和计算服务器3可同时将各自在时间段17:30:00~17:30:05接收的第一交易数据进行统计处理后得到的第二交易数据发送给汇总服务器。
为了预防汇总服务器发生单点故障的问题,可设置一个热备份的汇总服务器,当计算服务器在将第二交易数据发送给汇总服务器时,计算服务器将第二交易数据同时发送给主备汇总服务器,这样,当主汇总服务器发生故障时,备汇总服务器能够接管主汇总服务器的工作。
为了减少网络传输次数,可在计算服务器中设置计时器,统计一段时间内接收的交易数据。
在计算服务器中设置计时器后,为了提升系统处理能力,还可在计算服务器中设置缓冲队列。
当计算服务器中设置了计时器和缓冲队列后,计算服务器的处理流程,可参见图2。
S201、接收有效的第一交易数据。
S202、判断计时器是否已归零,若是,则转至步骤S203,否则,转至步骤S206。
S203、读取自身的统计规则。
S204、根据读取的自身的统计规则,对缓冲队列中的第一交易数据进行统计处理,得到第二交易数据。
S205、将第二交易数据发送给查询服务器使用。
S206、将接收的有效的第一交易数据存储至缓冲队列中。
此外,为了减少网络传输次数,还可通过在计算服务器中设置阈值的方式控制第一交易数据的数量。
例如,当计算服务器中的阈值设置为50时,表示计算服务器在接收到50条第一交易数据后,可根据自身的统计维度对上述接收到的50条交易数据进行统计处理。
当计算服务器中设置了阈值和缓冲队列后,计算服务器的处理流程,可参见图3。
S301、接收有效的第一交易数据。
S302、判断接收的有效的第一交易数据的条数是否达到阈值,若是,则转至步骤S303,否则,转至步骤S306。
S303、读取自身的统计规则。
S304、根据读取的自身的统计规则,对缓冲队列中的第一交易数据进行统计处理,得到第二交易数据。
S305、将第二交易数据发送给查询服务器使用。
S306、将接收的有效的第一交易数据存储至缓冲队列中。
需要说明的是,无论是通过在计算服务器中设置计时器的方式,还是通过在计算服务器中设置阈值的方式,当计算服务器空闲时,均可以清空自身的缓存,从而确保计算服务器的处理实时性。
为了确保计算服务器的处理实时性,还可通过心跳机制对计算服务器进行检测,在检测到计算服务器发生故障时,将发生故障的计算服务器的标识信息从一致性哈希算法的闭合环中删除。
通过心跳机制,对计算服务器进行检测的具体流程,可参见图4。
S401、定期接收计算服务器的存活消息。
S402、判断在预设的时间段内,是否接收到计算服务器发送的存活消息,若是,则转至步骤S403,否则,转至步骤S404。
S403、判定所述计算服务器处于正常状态。
S404、判定所述计算服务器发生故障。
S405、将发生故障的计算服务器的标识信息从一致性哈希算法的闭合环中删除。
此外,本发明实施例中,还可通过心跳机制对过滤服务器以及主汇总服务器进行检测,当检测到过滤服务器发生故障时,可将检测到的发生故障的过滤服务器的标识信息发送至各个计算服务器,各个计算服务器可在自己的接收列表中将该故障服务器的标识进行删除;当检测到主汇总服务器发生故障时,可将备汇总服务器接管主汇总服务器的工作,同时将主汇总服务器发生故障的消息通知各计算服务器,以使各计算服务器不再将统计的数据发送给主汇总服务器。需要注意的是,本发明实施例中的查询服务器还可通过Redis集群的方式,从而提供高效的读写服务,即查询服务器可通过Redis集群的方式对计算服务器提供高效的写服务,同时,查询服务器还可通过Redis集群的方式提供高效的查询服务。
具体的,查询服务器在收集所有计算服务器发送的第二交易数据后,可将第二交易数据写入到Redis集群中,因此,在使用查询服务器查询交易数据时,可从查询服务器管理的Redis集群中查询出统计结果数据。
为了避免在查询服务器发生故障时,不影响数据的查询,还可设置一个备用的查询服务器。当设置备用的查询服务器以后,计算服务器除了将第二交易数据发送给主查询服务器,还需要将第二交易数据同时发送给备用服务器。
需要说明的是,本发明实施例中的过滤规则以及计算服务器中的统计维度,可基于用户的需求进行更改。当存在多个过滤规则以及对应的计算服务器中的统计维度时,还可采用订阅的方式供用户选择合适的过滤规则和统计维度,从而统计出用户需要的统计结果数据。
下面通过一个具体的例子,对上述的方法流程进行详细的解释说明。
在该例子中,假设存在两个计算服务器分别为计算服务器1和计算服务器2,并假设计算服务器1的标识信息为“1”,计算服务器2的标识信息为“2”,并且预先将计算服务器1的标识信息“1”和计算服务器2的标识信息“2”设置在一致性哈希算法的闭合环中,进一步假设计算服务器1和计算服务器2对接收的交易数据统计的时间窗为3分钟。
继续假设,计算服务器1的统计维度X包括字段“商户”、“金额”、“日期”,计算服务器2的统计维度Y包括“卡号”、“商户”、“金额”,则根据计算服务器1的统计维度X和计算服务器2的统计维度Y,可确定的过滤规则Z包括的字段包括“商户”、“金额”、“日期”、“卡号”,并假设存在两个关键字分别为“东方航空”和“123”。
继续假设用户A使用卡号123的信用卡于2016年08月01日10:50分在东方航空上购买了一张机票,则原始交易信息可如表格一所示。
表格一
用户 卡号 商户 金额 购买渠道 日期
A 123 东方航空 500元 东方航空APP 2016.8.1
由于该例子中的过滤规则Z包括“商户”、“金额”、“日期”、“卡号”,因此,表格一中的交易数据在使用过滤规则Z后,得到的交易数据可如表格二所示。
表格二
卡号 商户 金额 日期
123 东方航空 500元 2016.8.1
基于表格二中用户A的交易数据的基础上,由于字段“东方航空”为关键字,因此可将关键字商户字段“东方航空”作为输入参数采用一致性哈希算法进行运算,并假设将关键字商户字段“东方航空”作为输入参数采用一致性哈希算法进行运算后得到的,计算服务器标识信息为“1”,即表格二中用户A的交易数据对应的计算服务器为计算服务器1,因此,可将表格二中用户A的交易数据路由到计算服务器1中。
基于表格二中用户A的交易数据的基础上,由于字段“123”为关键字,因此可将关键字卡号字段“123”作为输入参数采用一致性哈希算法进行运算,并假设将关键字卡号字段“123”作为输入参数采用一致性哈希算法进行运算后,得到的计算服务器标识信息为“2”,即表格二中用户A的交易数据对应的计算服务器为计算服务器2,因此,也可将表格二中用户A的交易数据路由到计算服务器2中。
继续假设用户A使用卡号123的信用卡于2016年08月01日10:51分在星巴克购买了一杯咖啡,则原始交易信息可如表格三所示。
表格三
用户 卡号 商户 金额 购买渠道 日期
A 123 星巴克 25元 POS机刷卡 2016.8.1
由于该例子中的过滤规则Z包括“商户”、“金额”、“日期”、“卡号”,因此,表格二中的交易数据在使用过滤规则Z后,得到的交易数据可如表格四所示。
表格四
卡号 商户 金额 日期
123 星巴克 25元 2016.8.1
基于表格四中用户A的交易数据的基础上,由于字段“123”为关键字,因此将关键字卡号字段“123”作为输入参数采用一致性哈希算法进行运算后,得到的计算服务器标识信息为“2”,即表格四中用户A的交易数据对应的计算服务器为计算服务器2,因此,也可将表格四中用户A的交易数据路由到计算服务器2中。
继续假设用户B使用卡号456的信用卡于2016年08月01日10:52分在东方航空上购买了一张机票,则原始交易信息可如表格五所示。
表格五
用户 卡号 商户 金额 购买渠道 日期
B 456 东方航空 1000元 东方航空APP 2016.8.1
由于该例子中的过滤规则Z包括“商户”、“金额”、“日期”、“卡号”,因此,表格一中的交易数据在使用过滤规则Z后,得到的交易数据可如表格六所示。
表格六
卡号 商户 金额 日期
456 东方航空 1000元 2016.8.1
基于表格六中用户B的交易数据的基础上,由于字段“东方航空”为关键字,因此将关键字商户字段“东方航空”作为输入参数采用一致性哈希算法进行运算后,得到的计算服务器标识信息为“1”,因此,也可将表格六中用户B的交易数据路由到计算服务器1中。
至此,路由至计算服务器1中的交易数据为表格二和表格六,计算服务器1在接收到表格二和表格六中的交易数据后,可根据统计维度X对表格二和表格六中的交易数据做统计处理,计算服务器1在根据统计维度X对表格二和表格六中的交易数据做统计处理后的交易数据,可参见表格七。
表格七
商户 金额 日期
东方航空 1500元 2016.8.1
因此,在将计算服务器1中的统计的交易数据发送给查询服务器后,用户可通过查询服务器查询到东方航空公司的的销售额信息以及销售日期。
作为一种实施方式,在通过查询服务器查询到东方航空公司的的销售额信息以及销售日期后,可基于查询到统计数据,统计出机票的淡季和旺季。
在具体实施时,作为一种实施方式,计算服务器1还可将基于统计维度X对表格二和表格六中的交易数据做统计处理后的交易数据发送给汇总服务器,由汇总服务器将接收的交易数据分发给下面的Redis集群,查询服务器通过访问汇总服务器下面的Redis集群查询到东方航空公司的销售额信息以及销售日期。
路由至计算服务器2中的交易数据为表格二和表格四,计算服务器2在接收到表格二和表格六中的交易数据后,可根据统计维度Y对表格二和表格四中的交易数据做统计处理,计算服务器2在根据统计维度Y对表格二和表格四中的交易数据做统计处理后的交易数据,可参见表格八。
表格八
因此,将计算服务器2中的统计的交易数据发送给查询服务器后,用户可通过查询服务器查询到卡号123的消费信息,该消费信息中包括有卡号123经常关顾的商家信息以及卡号123的消费能力。
根据计算服务器2统计的信息,发送至查询服务器,可获得卡号123的消费能力,以及偏好消费的商家。
在具体实施时,作为一种实施方式,计算服务器2还可将基于统计维度Y对表格二和表格四中的交易数据做统计处理后的交易数据发送给汇总服务器,由汇总服务器将接收的交易数据分发给下面的Redis集群,查询服务器通过访问汇总服务器下面的Redis集群查询到卡号123的消费信息,该消费信息中包括有卡号123经常关顾的商家信息以及卡号123的消费能力。
根据以上内容可以看出,由于在得到第一交易数据后,可将关键字确定第一交易数据所对应的计算服务器时,因此关键字相同的第一交易数据将会发送至同一计算服务器,而计算服务器可根据预先设定的统计维度将对第一交易数据进行统计处理后得到第二交易数据,并将第二交易数据发送给查询服务器使用,因此,可通过增加计算服务器的数量的方式水平扩展计算统计的能力,从而提高将数据写入数据库的速度,进而提升数据的查询效率。
基于相同的技术构思,本发明实施例提供一种数据统计装置,如图5所示,该装置可包括:
过滤单元501,用于根据预先设定的过滤规则,对原始交易数据进行过滤处理,得到第一交易数据,所述过滤规则包括所述原始交易数据的至少一个字段信息;
确定单元502,用于根据所述第一交易数据中的关键字信息,确定所述第一交易数据所对应的计算服务器504;
发送单元503,用于将所述第一交易数据发送至所述计算服务器504,以使所述计算服务器504将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给查询服务器505使用。
较佳的,发送单元503,具体用于:
将所述第一交易数据发送至所述计算服务器504,以使所述计算服务器504将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给汇总服务器;
所述汇总服务器将从各计算服务器504接收到的第二交易数据进行汇总处理后存储至数据库供查询服务器505使用。
较佳的,所述过滤规则是由各计算服务器504的统计维度确定的。
较佳的,确定单元502,具体用于:
将所述第一交易数据中的关键字信息作为一致性哈希算法的输入参数进行运算后,得到所述第一交易数据所对应的计算服务器504的标识信息;
根据得到的所述标识信息确定所述第一交易数据所对应的计算服务器504;
其中,所述一致性哈希算法的闭合环中包括至少一个计算服服务器的标识信息。
较佳的,还包括:检测单元(图中未示出);
检测单元(图中未示出),用于通过心跳机制对所述计算服务器504进行检测,在检测到计算服务器504发生故障时,将发生故障的计算服务器504的标识信息从所述一致性哈希算法的闭合环中删除。
较佳的,检测单元(图中未示出),具体用于:
定期接收所述计算服务器504的存活消息;
若在预设的时间段内,未接收到所述计算服务器504的存活消息,则判定所述计算服务器504发生故障。
从以上内容可以看出,由于在得到第一交易数据后,可将关键字确定第一交易数据所对应的计算服务器时,因此关键字相同的第一交易数据将会发送至同一计算服务器,而计算服务器可根据预先设定的统计维度将对第一交易数据进行统计处理后得到第二交易数据,并将第二交易数据发送给查询服务器使用,因此,可通过增加计算服务器的数量的方式水平扩展计算统计的能力,从而提高将数据写入数据库的速度,进而提升数据的查询效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种数据统计方法,其特征在于,包括:
根据预先设定的过滤规则,对原始交易数据进行过滤处理,得到第一交易数据,所述过滤规则包括所述原始交易数据的至少一个字段信息,所述过滤规则是由各计算服务器的统计维度确定的;
根据所述第一交易数据中的关键字信息,确定所述第一交易数据所对应的计算服务器,所述第一交易数据根据关键字信息的不同被路由到多个计算服务器中;具有相同关键字信息的交易数据将会被路由到同一计算服务器中;
将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给查询服务器使用。
2.如权利要求1所述的方法,其特征在于,所述将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给查询服务器使用,包括:
将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给汇总服务器;
所述汇总服务器将从各计算服务器接收到的第二交易数据进行汇总处理后存储至数据库供查询服务器使用。
3.如权利要求1所述的方法,其特征在于,所述根据所述第一交易数据中的关键字信息,确定所述第一交易数据所对应的计算服务器,包括:
将所述第一交易数据中的关键字信息作为一致性哈希算法的输入参数进行运算后,得到所述第一交易数据所对应的计算服务器的标识信息;
根据得到的所述标识信息确定所述第一交易数据所对应的计算服务器;
其中,所述一致性哈希算法的闭合环中包括至少一个计算服服务器的标识信息。
4.如权利要求3所述的方法,其特征在于,该方法还包括:
通过心跳机制对所述计算服务器进行检测,在检测到计算服务器发生故障时,将发生故障的计算服务器的标识信息从所述一致性哈希算法的闭合环中删除。
5.如权利要求4所述的方法,其特征在于,所述通过心跳机制对所述计算服务器进行检测,包括:
定期接收所述计算服务器的存活消息;
若在预设的时间段内,未接收到所述计算服务器的存活消息,则判定所述计算服务器发生故障。
6.一种数据统计装置,其特征在于,包括:
过滤单元,用于根据预先设定的过滤规则,对原始交易数据进行过滤处理,得到第一交易数据,所述过滤规则包括所述原始交易数据的至少一个字段信息,所述过滤规则是由各计算服务器的统计维度确定的;
确定单元,用于根据所述第一交易数据中的关键字信息,确定所述第一交易数据所对应的计算服务器,第一交易数据根据关键字信息的不同被路由到多个计算服务器中;具有相同关键字信息的交易数据将会被路由到同一计算服务器中;
发送单元,用于将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给查询服务器使用。
7.如权利要求6所述的装置,其特征在于,所述发送单元,具体用于:
将所述第一交易数据发送至所述计算服务器,以使所述计算服务器将根据预先设定的统计维度对所述第一交易数据进行统计得到的第二交易数据发送给汇总服务器;
所述汇总服务器将从各计算服务器接收到的第二交易数据进行汇总处理后存储至数据库供查询服务器使用。
8.如权利要求6所述的装置,其特征在于,所述确定单元,具体用于:
将所述第一交易数据中的关键字信息作为一致性哈希算法的输入参数进行运算后,得到所述第一交易数据所对应的计算服务器的标识信息;
根据得到的所述标识信息确定所述第一交易数据所对应的计算服务器;
其中,所述一致性哈希算法的闭合环中包括至少一个计算服服务器的标识信息。
9.如权利要求8所述的装置,其特征在于,还包括:检测单元;
所述检测单元,用于通过心跳机制对所述计算服务器进行检测,在检测到计算服务器发生故障时,将发生故障的计算服务器的标识信息从所述一致性哈希算法的闭合环中删除。
10.如权利要求9所述的装置,其特征在于,所述检测单元,具体用于:
定期接收所述计算服务器的存活消息;
若在预设的时间段内,未接收到所述计算服务器的存活消息,则判定所述计算服务器发生故障。
CN201610836827.5A 2016-09-21 2016-09-21 一种数据统计方法和装置 Active CN106484791B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610836827.5A CN106484791B (zh) 2016-09-21 2016-09-21 一种数据统计方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610836827.5A CN106484791B (zh) 2016-09-21 2016-09-21 一种数据统计方法和装置

Publications (2)

Publication Number Publication Date
CN106484791A CN106484791A (zh) 2017-03-08
CN106484791B true CN106484791B (zh) 2019-12-06

Family

ID=58268521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610836827.5A Active CN106484791B (zh) 2016-09-21 2016-09-21 一种数据统计方法和装置

Country Status (1)

Country Link
CN (1) CN106484791B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106600341A (zh) * 2016-12-29 2017-04-26 江西博瑞彤芸科技有限公司 商品销量统计方法
CN108427725B (zh) * 2018-02-11 2021-08-03 华为技术有限公司 数据处理方法、装置和系统
CN112801667A (zh) * 2021-01-21 2021-05-14 中国银联股份有限公司 一种实时的交易异常检测方法及装置
CN113111367A (zh) * 2021-04-28 2021-07-13 北京天空卫士网络安全技术有限公司 一种安全信息管理方法、装置和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156933A (zh) * 2010-02-11 2011-08-17 阿里巴巴集团控股有限公司 统计电子商务交易数据的方法和统计系统
CN103309873A (zh) * 2012-03-09 2013-09-18 阿里巴巴集团控股有限公司 数据的处理方法、装置及系统
CN104574113A (zh) * 2014-12-30 2015-04-29 北京奇虎科技有限公司 一种交易数据的统计方法和装置
CN104809140A (zh) * 2014-01-29 2015-07-29 中国银联股份有限公司 统计交易数据的方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156933A (zh) * 2010-02-11 2011-08-17 阿里巴巴集团控股有限公司 统计电子商务交易数据的方法和统计系统
CN103309873A (zh) * 2012-03-09 2013-09-18 阿里巴巴集团控股有限公司 数据的处理方法、装置及系统
CN104809140A (zh) * 2014-01-29 2015-07-29 中国银联股份有限公司 统计交易数据的方法及系统
CN104574113A (zh) * 2014-12-30 2015-04-29 北京奇虎科技有限公司 一种交易数据的统计方法和装置

Also Published As

Publication number Publication date
CN106484791A (zh) 2017-03-08

Similar Documents

Publication Publication Date Title
US10311230B2 (en) Anomaly detection in distributed ledger systems
CN106484791B (zh) 一种数据统计方法和装置
CN103748579B (zh) 在映射化简框架中处理数据
CN106407190B (zh) 一种事件记录查询方法及装置
US9965364B2 (en) Fault tolerant listener registration in the presence of node crashes in a data grid
US10540679B2 (en) Tracking interaction with sponsored and unsponsored content
CN105590216B (zh) 实时监控交易风险的方法及系统
CN103930888B (zh) 基于更新、储存及响应约束的多粒度分组聚合选择
US9471657B1 (en) Range query capacity allocation
US9330158B1 (en) Range query capacity allocation
US11645114B2 (en) Distributed streaming system supporting real-time sliding windows
US20190370800A1 (en) Method, System, and Computer Program Product for Aggregating Data from a Plurality of Sources
KR20080070801A (ko) 거래 시스템
CN113722520B (zh) 图数据的查询方法及装置
CN106529953B (zh) 一种对业务属性进行风险识别的方法及装置
US20220207180A1 (en) Privacy preserving data collection and analysis
CN111639967B (zh) 产品潜在客户挖掘方法及系统
WO2019232821A1 (zh) 风控数据处理方法、装置、计算机设备及存储介质
CN110309143A (zh) 数据相似度确定方法、装置及处理设备
US20200104405A1 (en) Data warehouse management and synchronization systems and methods
CN116401270A (zh) 数据查询方法、装置、计算机设备和存储介质
US20230082068A1 (en) Preventing duplicative file processing
CN110851758A (zh) 一种网页访客数量统计方法及装置
CN105683961B (zh) 管理用于假设分析的回写的数据的方法和系统
JP2018537778A (ja) ローカル取引認可のためのネットワークブリッジ

Legal Events

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