事件间转化率的计算方法及系统的制作方法

文档序号:8457282阅读:1293来源:国知局
事件间转化率的计算方法及系统的制作方法
【技术领域】
[0001]本发明涉及一种大数据环境事件间转化率的统计与计算技术,特别涉及一种事件间转化率的计算方法及计算系统。
【背景技术】
[0002]在大数据时代,统计事件序列特征是一个新的挑战。以网站页面访问转化率为例,如果要及时了解任意页面访问流的转化情况,其运算是一个十分耗时的过程。
[0003]目前,在计算事件间转化率的现有技术中,只能实现有针对性的计算出某一特定事件如A至另一特定事件如B之间的转化率,而无法计算出任意两个事件间或任一事件经某一事件至另一事件的转化率,不便于操作人员的及时查询。

【发明内容】

[0004]本发明要解决的技术问题是为了克服现有技术中无法计算出任意两个事件间或任一事件经某一事件至另一事件的转化率,进而不便于操作人员的及时查询的缺陷,提供一种可计算出任意两个事件间或任一事件经某一或某些事件至另一事件的转化率的事件间转化率的计算方法及系统。
[0005]本发明是通过下述技术方案来解决上述技术问题的:
[0006]本发明提供一种事件间转化率的计算方法,其存储有若干原始事件序列,其特点在于,该计算方法包括一包含多个事件片断的事件数据库,该些事件片断由该些原始事件序列经一操作获得,根据该事件数据库计算任意两个事件间的转化率;
[0007]其中,对于一作为目标事件序列的原始事件序列该操作包括以下步骤,其中,设定j=2,该目标事件序列包括依次发生的η个事件Li, i为遍历I至η的整数:
[0008]S1、将该目标事件序列拆分为η个事件片断Si,该η个事件片断构成一个集合,Si表示以Li为起始事件且以LnS结束事件的事件片断,拆分操作保证了计算任意两个事件间的转化率时,可以利用索引快速定位到相关的事件片断;
[0009]S2、判断j的数值是否满足j ( n,若是则进入步骤S3,若否则进入步骤S9 ;
[0010]S3、将j的数值减少I赋值给k ;
[0011]S4、判断k的数值是否满足k彡1,若是则进入步骤S5,若否则进入步骤S8 ;
[0012]S5、判断S」的起始事件与Sk的起始事件是否相同,若是则进入步骤S6,若否则进入步骤S7 ;
[0013]S6、将S」从该集合中删除,并将j的数值增加I后重复执行步骤S2 ;
[0014]S7、将k的数值减少I后重复执行步骤S4 ;
[0015]S8、将j的数值增加I后重复执行步骤S2 ;
[0016]S9、该集合的事件片断中相邻的两个事件相同时仅保留该两个事件中的一个。
[0017]在本方案中,步骤S2至步骤S8是对事件片断的优化,若某一个事件片断的起始事件与之前的事件片断的起始事件相同,则删除这个事件片断。事件片断的删除是为了避免在计算事件间的转化率时的重复计算,提高计算出的转化率的准确度。步骤S9是对事件片断的进一步优化,用于排除一些无意义的重复事件,例如在某一事件片断中,某一事件(例如A)连续重复多次,这多次转化情况对计算转化率实际上是没有影响的,所以为了精简数据,将这些重复的事件只保留其中一个。
[0018]较佳地,第一事件至第二事件的转化率Z=(P/Q)*100%,P为该事件数据库中以该第一事件为起始事件且后续事件中存在该第二事件的事件片断的个数,Q为该事件数据库中以该第一事件为起始事件的事件片断的个数。在计算事件间的转化率时,并不关注事件片断的精确路径。例如,在计算事件A到事件B的转化率时,P定义为所有事件片断中起始事件为事件A且在发生事件A后又发生了事件B的个数,事件B可以是紧随事件A之后发生,也可以是经过一系列其它事件后才发生。
[0019]较佳地,该计算方法利用Storm (Storm是一个分布式的、容错的实时计算系统)实现。
[0020]本发明还提供一种事件间转化率的计算系统,其存储有若干原始事件序列,其特点在于,该计算系统包括一包含多个事件片断的事件数据库、一操作模块和一计算模块,该操作模块用于处理该些原始事件序列以获得该些事件片断,该计算模块用于根据该事件数据库计算任意两个事件间的转化率;
[0021]其中,该操作模块包括一拆分模块、一第一判断模块、一赋值模块、一第二判断模块、一第三判断模块、一删除模块、一减值模块、一增值模块以及一保留模块,针对一作为目标事件序列的原始事件序列,其中,设定j=2,该目标事件序列包括依次发生的η个事件Li,i为遍历I至η的整数:
[0022]该拆分模块用于将该目标事件序列拆分为η个事件片断Si,该η个事件片断构成一个集合,Si表示以Li为起始事件且以Ln为结束事件的事件片断;
[0023]该第一判断模块判断j的数值是否满足j ( η,若是则调用该赋值模块,若否则调用该保留模块;
[0024]该赋值模块用于将j的数值减少I赋值给k ;
[0025]该第二判断模块用于判断k的数值是否满足k ^ 1,若是则调用该第三判断模块,若否则调用该增值模块;
[0026]该第三判断模块用于判断Sj的起始事件与Sk的起始事件是否相同,若是则调用该删除模块,若否则调用该减值模块;
[0027]该删除模块用于将S」从该集合中删除,并将j的数值增加I后重新调用该第一判断模块;
[0028]该减值模块用于将k的数值减少1,并重新调用该第二判断模块;
[0029]该增值模块用于将j的数值增加1,并重新调用该第一判断模块;
[0030]该保留模块用于在该集合的事件片断中相邻的两个事件相同时仅保留该两个事件中的一个。
[0031]较佳地,该计算模块用于计算第一事件至第二事件的转化率Z=(P/Q)*100%,P为该事件数据库中以该第一事件为起始事件且后续事件中存在该第二事件的事件片断的个数,Q为该事件数据库中以该第一事件为起始事件的事件片断的个数。
[0032]较佳地,该计算系统利用Storm实现。
[0033]在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
[0034]本发明的积极进步效果在于:
[0035]本发明提供一种事件间转化率的计算方法及系统,采用了将事件序列拆分为多个事件片断,并以事件片断的起始事件为索引的形式来处理转化数据,片断的拆分保证了数据的正确性,也保证了索引的有效性。本发明可计算出任意两个事件间或任一事件经某一或某些事件至另一事件的转化率,便于操作人员及时查询掌握其所关心的任意两个事件间或任一事件经某一或某些事件至另一事件的转化率。
【附图说明】
[0036]图1为本发明较佳实施例的事件间转化率的计算方法的流程图。
[0037]图2为本发明较佳实施例的事件间转化率的计算系统的结构框图。
[0038]图3为本发明较佳实施例的该计算系统中的操作模块的结构框图。
【具体实施方式】
[0039]下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0040]如图1所示,本实施例提供一种事件间转化率的计算方法,该计算方法可以利用Storm实现,该计算方法存储有若干原始事件序列,且包括一包含多个事件片断的事件数据库,该些事件片断由该些原始事件序列经一操作获得,根据该事件数据库可计算出第一事件至第二事件的转化率Z=(P/Q)*100%,P为该事件数据库中以该第一事件为起始事件且后续
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1