一种业务流水数据处理方法及装置与流程

文档序号:12595692阅读:453来源:国知局
一种业务流水数据处理方法及装置与流程

本申请涉及数据处理领域,尤其涉及一种业务流水数据处理方法及装置。



背景技术:

随着互联网和计算机技术的迅速发展,很多业务诸如电子商务业务、通讯业务、金融业务等,都可以在网上进行,给人们的生活带来了很大的便利。

一般的,针对每次的业务过程,可以对应地生成一条业务流水数据,该业务流水数据用于记录这业务过程的相关数据,相关数据可以是用户标识、业务类型、业务内容、业务发起时间、流水号等,生成该业务流水数据的设备可以是参与该次业务过程的设备,如业务服务器、终端等。

在现有技术中,每条业务流水数据生成后,可以将其存储在数据库的流水表中,等数据库中存储的业务流水数据的数量达到一定规模后,为了提高数据管理效率,可以获取流水表中的各业务流水数据,按照预定规则,将各业务流水数据划分为多个流水集合,并将每条业务流水数据与该业务流水数据被划入的流水集合的标识的对应关系也保存在数据库的流水表中,在流水集合划分完毕后,可以分别针对每个流水集合执行预定操作,并将执行预定操作后获取的数据与流水集合标识的对应关系也保存在数据库中,以便于以流水集合为单位对各业务流水数据进行管理。

在一个示例中,上述的流水集合可以是批次,流水集合的标识可以是批次号,预定操作可以是获取批次的汇总信息。

但是,对于很多业务,可以预见,随着用户量迅速增长,业务流水数据也会迅速增长至较大规模。当对较大规模的业务流水数据也采用现有技术中的处理方法进行处理时,在划分流水集合后,以及对各流水集合执行预订操作后, 会立刻产生大量的、需要向数据库中保存的对应关系,因此,会给数据库带来巨大压力。



技术实现要素:

本申请实施例提供一种业务流水数据处理方法及装置,用以解决现有技术中对较大规模的业务流水数据划分流水集合后,以及对各流水集合执行预订操作后,会立刻产生大量的、需要向数据库中保存的对应关系,因此,会给数据库带来巨大压力的问题。

本申请实施例提供的一种业务流水数据处理方法,包括:

在生成一条业务流水数据后,获取所述业务流水数据对应的流水集合标识,将所述业务流水数据与所述流水集合标识的对应关系保存在数据库中,其中,所述流水集合标识是所述业务流水数据根据预定划入规则被划入的流水集合的标识;

当确定所述流水集合标识符合指定条件时,根据数据库中保存的各所述对应关系,对所述流水集合标识对应的各业务流水数据执行预定操作;

建立所述流水集合标识与执行所述预定操作后获取的数据的对应关系并保存在数据库中。

本申请实施例提供的一种业务流水数据处理装置,包括:

第一保存模块,用于在生成一条业务流水数据后,获取所述业务流水数据对应的流水集合标识,将所述业务流水数据与所述流水集合标识的对应关系保存在数据库中,其中,所述流水集合标识是所述业务流水数据根据预定划入规则被划入的流水集合的标识;

集合操作模块,用于当确定所述流水集合标识符合指定条件时,根据数据库中保存的各所述对应关系,对所述流水集合标识对应的各业务流水数据执行预定操作;

第二保存模块,用于建立所述流水集合标识与执行所述预定操作后获取的 数据的对应关系并保存在数据库中。

本申请实施例通过上述至少一种技术方案,不用像现有技术采用的处理方法那样,将各业务流水数据和各流水集合涉及的对应关系在短时间内集中地向数据库中保存,而是可以在较长的时期内分别地向数据库中保存,因此,可以减小数据库的压力,从而可以解决现有技术中的问题。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例提供的业务流水数据处理方法的过程;

图2为本申请实施例提供的在一种实际应用场景下,对图1中的部分步骤的实施过程;

图3为本申请实施例提供的在一种实际应用场景下,对图1中的另一部分步骤的实施过程;

图4为本申请实施例提供的业务流水数据处理装置结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本申请实施例中,对背景技术中提到的“较大规模”的具体数量并不做限定。一般的,对于小型数据库,上千、上万条业务流水数据便可称为较大规模的业务流水数据,而对于大中型数据库,则可以将上十万条、上百万条乃至 更大数量的业务流水数据称为较大规模的业务流水数据。需要说明的是,本申请的方案不仅适用于较大规模的业务流水数据的场景,也适用于普通规模的业务流水数据的场景,其中,相比于后一种场景,前一种场景更能够表现出本申请的方案相比于现有技术的优势。

根据背景技术中的说明可知,对数据库造成巨大压力的原因是:在短时间内集中地对向数据库中保存大量的、业务流水数据和流水集合涉及的对应关系,超出了数据库的瞬时处理能力。为了解决这个问题,可以将上述的巨大压力分解为很多个的、在一个较长的时期内向数据库分散施加的很小的压力,从而既不会超出数据库的瞬时处理能力,也可以提高数据库在较长的时期内的负载均衡性。

根据以上分析,在本申请实施例中,可以不等待较大规模的业务流水数据已经存在后,再集中地对各业务流水数据进行处理,而是可以每当业务流水数据生成时,立即针对该业务流水数据进行相应的处理,所述的处理可以包括:划分流水集合;对划分的流水集合执行预定操作;将划分流水集合后,以及对划分的流水集合执行预定操作后生成的对应关系向数据库中保存;等等。在实际应用中,由于不同的业务流水数据一般是在不同的时刻生成的,因此,在同一时刻,对业务流水数据进行处理的设备的处理压力较小,对数据库的压力也较小,从而可以解决现有技术中的问题。下面对本申请的方案进行具体说明。

图1为本申请实施例提供的业务流水数据处理方法的过程,该过程的执行主体可以是终端或服务器。所述终端包括但不限于:个人计算机、手机、平板电脑、智能手表、车载移动台等;所述服务器包括但不限于:个人计算机、大中型计算机、计算机集群等。执行主体并不构成对本申请的限定,为了便于描述,本申请实施例均以执行主体是服务器为例进行说明。

图1中的过程具体可以包括以下步骤:

S101:在生成一条业务流水数据后,获取所述业务流水数据对应的流水集合标识,将所述业务流水数据与所述流水集合标识的对应关系保存在数据库 中,其中,所述流水集合标识是所述业务流水数据根据预定划入规则被划入的流水集合的标识。

在本申请实施例中,每生成一条业务流水后,都可以执行一次步骤S101。业务流水数据可以由服务器生成,也可以由服务器以外的其他设备生成。对于后一种情况,服务器可以每当确定该其它设备生成了一条业务流水数据时,从该其它设备获取生成的业务流水数据,再执行图1中的各步骤。

在本申请实施例中,服务器可以是提供某一种业务的业务服务器,相应的,步骤S101中生成业务流水数据均可以是该业务的流水数据。

每条业务流水数据可以是任一用户参与的一次业务过程的相关信息。例如,对于电子商务业务,某条业务流水数据可以是一个电子商务订单的相关数据,包括订单号、下单时间、订单包含的商品名称、商品数量、商品价格等;对于通讯业务,某条业务流水数据可以是一次手机通话过程的相关数据,包括通话发起方的手机号码和所在地、通话接受方的手机号码和所在地、通话日期、通话时长等;对于金融业务,某条业务流水数据可以是一次转账过程的相关数据,包括转账发起方的银行卡号、转账接受方的银行卡号、转账金额、转账日期等。

在本申请实施例中,可以预先设定一个或多个流水集合,并为每个流水集合分别定义划入规则,这些划入规则用于判断生成的每条业务流水数据应被划入哪个流水集合。初始时,每个流水集合都是空集,在随后的一个较长的时期内,业务流水数据不断的生成,一条业务流水数据可以被划入某个流水集合中,或者,也可以不被划入任何一个流水集合中。

本申请实施例对所述划入规则并不做限定。一般的,可以根据预定的维度划入,如时间维度、业务流水数据中的属性维度等。分别举例说明。

当根据时间维度划入时,可以设定多个时间区间,每个时间区间分别对应一个流水集合。对于某条业务流水数据,该业务流水数据的生成时间落在哪个时间区间内,则该业务流水数据可被划入该时间区间对应的流水集合内。

当根据业务流水数据中的属性维度划入时,假定属性是订单包含的商品名称,则每个商品名称可以分别对应一个流水集合。对于某条业务流水数据(假定为电子商务订单),该电子商务订单可被划入该电子商务订单包含的商品名称对应的流水集合内。

在本申请实施例中,可以预先为每个流水集合分配一个流水集合标识,流水集合标识可以用于唯一标识流水集合。根据步骤S101中的描述,“将业务流水数据划入一个流水集合”等价于“确定该业务流水数据与这个流水集合的标识的对应关系”,进而,一个流水集合包含的业务流水数据即为:这个流水集合的标识对应的业务流水数据。

另外,在实际应用中,也可以不预先为所有的流水集合分配流水集合标识,而是可以等待要向流水集合中划入第一个业务流水数据时,再实时地为该流水集合分配一个流水集合标识。这种方案可以防止一直为空集的流水集合占用流水集合标识。

在本申请实施例中,除了将该业务流水数据与该流水集合标识的对应关系保存在数据库中以外,还可以将该业务流水数据本身,或该业务流水数据的索引也保存在数据库中(具体可以是数据库的流水表中)。

S102:当确定所述流水集合标识符合指定条件时,根据数据库中保存的各所述对应关系,对所述流水集合标识对应的各业务流水数据执行预定操作。

在现有技术中,是已生成了较大规模的业务流水数据后,再将这些业务流水数据,一次性地划分为多个流水集合,至此,可以认为流水集合已划分完毕。

而在本申请实施例中,是一边生成业务流水数据,一边将业务流水数据划入流水集合,也即,各流水集合是逐渐地形成的,而不是一次性划分出来的。步骤S102中的指定条件可以用于判断流水集合标识对应的流水集合是否划分完毕。当确定流水集合标识符合指定条件时,可以确定该流水集合划分完毕,当确定流水集合标识不符合指定条件时,可以确定该流水集合尚未划分完毕。

在实际应用中,所述的指定条件可以包括以下至少一种:

第一种,该流水集合标识对应的各业务流水数据的数量达到设定数量。例如,假定设定数量为1万,则当该流水集合标识对应的各业务流水数据的数量达到1万时(也即,该流水集合标识对应的流水集合包含的业务流水数据的数量达到1万时),可以确定该流水集合标识对应的流水集合划分完毕。

第二种,当前时刻超过为该流水集合标识设定的时刻阈值。假定时刻阈值为2015年12月1日,则当前时刻超过这一天时,可以确定该流水集合标识对应的流水集合划分完毕。

在本申请实施例中,对所述流水集合标识对应的各业务流水数据执行预定操作,也即,对所述流水集合标识对应的流水集合执行预定操作。

进一步地,可以在流水集合划分完毕后,再对该流水集合执行预定操作,也可以在流水集合尚未划分完毕时,就对该流水集合执行预定操作。由于后一种方案在操作后获取的数据的实效性较短,因此,在实际应用中,一般可以采用前一种方案。

S103:建立所述流水集合标识与执行所述预定操作后获取的数据的对应关系并保存在数据库中。

在本申请实施例中,预定操作可以是数据统计、数据挖掘等方面的操作。在这种情况下,通过对流水集合执行预定操作,可以获取该流水集合的汇总信息,汇总信息可以包括统计出的直观数据、挖掘出的特征数据,等等。汇总信息可以作为对流水集合这个整体的描述,在实际应用中,可以根据汇总信息对该汇总信息对应的流水集合进一步地进行检索、排序、封装等操作。

在本申请实施例中,与步骤S102中的对应关系类似,对于步骤S103中的对应关系,除了保存该对应关系本身以外,还可以将执行所述预定操作后获取的数据(可以是上述的汇总信息)、该数据的索引或也保存在数据库中。

通过上述方法,不用像现有技术采用的处理方法那样,将各业务流水数据和各流水集合涉及的对应关系在短时间内集中地向数据库中保存,而是可以在较长的时期内分别地向数据库中保存,因此,可以减小数据库的压力,从而可 以解决现有技术中的问题。

为了便于理解,下面对图1中的步骤进一步地进行说明。

在本申请实施例中,流水集合标识可以有第一状态、第二状态这两种状态,第一状态可以反映该流水集合标识对应的流水集合尚未划分完毕,第二状态可以反映该流水集合标识对应的流水集合已划分完毕。

在具体实施本申请的方案时,可以分别为每个流水集合标识设置状态信息。例如,该状态信息可以是一个有两种取值的状态标识位(Flag),当该状态标识位为第一种取值时,表示该流水集合标识处于第一状态,当该状态标识位为第二种取值时,表示该流水集合标识处于第二状态,从而,可以通过控制状态标识位的取值,控制流水集合标识的状态。该状态标识位可以是一个单独的字段,也可以是流水集合标识中包含的字段,本申请实施例对此并不做限定。

对于步骤S101,获取所述业务流水数据对应的流水集合标识,具体可以包括:获取所述业务流水数据对应的、处于第一状态的流水集合标识,所述第一状态反映所述流水集合标识对应的流水集合尚未划分完毕,所述流水集合标识对应的各业务流水数据构成所述流水集合标识对应的流水集合。

进一步的,若未预先给每个流水集合分配流水集合标识,则对于划入每个流水集合的第一条业务流水数据,虽然可以确定该业务流水数据对应的流水集合,但是无法获取该业务流水数据对应的流水集合标识,在这种情况下,可以生成一个新的流水集合标识分配给该流水集合。

根据这样的思路,获取所述业务流水数据对应的、处于第一状态的流水集合标识,具体可以包括:在已存在的、处于第一状态的各流水集合标识中,确定是否存在所述业务流水数据对应的流水集合标识,若是,则获取该流水集合标识,否则,生成一个处于第一状态的流水集合标识,作为所述业务流水数据对应的流水集合标识。

进一步的,当确定流水集合标识对应的流水集合已划分完毕时,可以相应地转变该流水集合标识的状态。则对于步骤S102,当确定所述流水集合标识 符合指定条件时,除了执行步骤S102中的后续子步骤以外,还可以执行以下步骤:将所述流水集合标识由第一状态转变为第二状态,所述第二状态反映所述流水集合标识对应的流水集合已划分完毕。具体的实施方式可以是用上述的第二种取值对流水集合标识的状态标识位进行赋值。

在本申请实施例中,对于步骤S103,对所述流水集合标识对应的各业务流水数据执行预定操作,具体可以包括:根据所述流水集合标识对应的各业务流水数据,确定所述流水集合标识对应的流水集合的汇总信息,所述汇总信息是基于预定信息维度汇总的。

本申请实施例对信息维度并不做限定,在此给出信息维度的示例。

例如,当流水集合中包含的业务流水数据是包含的商品名称相同的多个电子商务订单时,则该流水集合对应的汇总信息可以包括:订单总金额、订单总数量、订单包含的商品的总数量、订单对应的客户的地理位置分布情况、订单的生成时间在各月份的分布情况,等等。可以看到,在该例中,汇总生成汇总信息时基于的信息维度对应为:业务流水数据涉及的金额信息维度、业务流水数据的数量信息维度、业务流水数据的指定属性的数量信息维度、业务流水数据涉及的地理位置信息维度、业务流水数据涉及的时间信息维度,等等。

以上对本申请的方案进行了具体说明。在实际应用中,可能会采用惯用的名称称呼流水集合。

例如,在某些应用场景下,流水集合可以称为批次,相应的,流水集合标识可以称为批次号,划入规则可以称为分批规则。为了便于理解,下面基于以上对本申请的方案的说明,结合附图中的图2、图3,对在该例的应用场景下,实施本申请的方案的过程进行简单说明。

图2示出了在该例的应用场景下,对图1中的步骤S101的实施过程,针对生成的每条业务流水数据,可以分别执行该过程,该过程具体可以包括以下步骤:

S201:生成业务流水数据。

S202:确定分批规则。

S203:根据分批规则,确定该业务流水数据被划入的批次。

S204:获取该批次对应的批次号,其中,若该批次尚未被分配批次号时,生成一个新的批次号,作为该批次对应的批次号,该批次对应批次号是处于第一状态的,第一状态反映该批次尚未分批完毕。

S205:将该业务流水数据、该批次号,以及该业务流水数据与该批次号的对应关系保存在数据库中的流水表中。

图3示出了在该例的应用场景下,对图1中的步骤S102~S103的实施过程,针对每个批次,可以分别执行该过程,该过程具体可以包括以下步骤:

S301:根据数据库中保存的批次号与各业务流水数据的对应关系,当确定该批次号对应的批次符合设定的范围要求时,将该批次号由第一状态转变为第二状态,第二状态反映该批次已分批完毕。

S302:对该批次中包含的各业务流水数据进行汇总,获得汇总信息。

S303:将该汇总信息、该批次号,以及该汇总信息与该批次号的对应关系保存在数据库中的批次表中。

以上为本申请实施例提供的业务流水数据处理方法,基于同样的思路,本申请实施例还提供相应的业务流水数据处理装置,如图4所示。

图4为本申请实施例提供的业务流水数据处理装置结构示意图,具体包括:

第一保存模块401,用于在生成一条业务流水数据后,获取所述业务流水数据对应的流水集合标识,将所述业务流水数据与所述流水集合标识的对应关系保存在数据库中,其中,所述流水集合标识是所述业务流水数据根据预定划入规则被划入的流水集合的标识;

集合操作模块402,用于当确定所述流水集合标识符合指定条件时,根据数据库中保存的各所述对应关系,对所述流水集合标识对应的各业务流水数据执行预定操作;

第二保存模块403,用于建立所述流水集合标识与执行所述预定操作后获取的数据的对应关系并保存在数据库中。

通过上述装置,不用将各业务流水数据和各流水集合涉及的对应关系在短时间内集中地向数据库中保存,而是在较长的时期内分别地向数据库中保存,因此,可以减小数据库的压力。

所述第一保存模块401具体用于:获取所述业务流水数据对应的、处于第一状态的流水集合标识,所述第一状态反映所述流水集合标识对应的流水集合尚未划分完毕,所述流水集合标识对应的各业务流水数据构成所述流水集合标识对应的流水集合。

所述第一保存模块401具体用于:在已存在的、处于第一状态的各流水集合标识中,确定是否存在所述业务流水数据对应的流水集合标识,若是,则获取该流水集合标识,否则,生成一个处于第一状态的流水集合标识,作为所述业务流水数据对应的流水集合标识。

所述指定条件可以包括以下至少一种:

所述流水集合标识对应的各业务流水数据的数量达到设定数量;

当前时刻超过为所述流水集合标识设定的时刻阈值。

当流水集合标识存在两种以上的状态时,所述装置还可以包括:

状态转变模块404,用于所述集合操作模块402当确定所述流水集合标识符合指定条件时,将所述流水集合标识由第一状态转变为第二状态,所述第二状态反映所述流水集合标识对应的流水集合已划分完毕。

所述集合操作模块402具体用于:根据所述流水集合标识对应的各业务流水数据,确定所述流水集合标识对应的流水集合的汇总信息,所述汇总信息是基于预定信息维度汇总的。

在实际应用中,所述流水集合可以包括批次,所述流水集合标识可以包括批次号。

具体的上述如图4所示的装置可以位于终端、服务器上。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任 何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1