本发明涉及分布式数据库领域,具体而言,涉及一种会话的筛选方法和装置。
背景技术:
在分布式环境下,目前常用的查询引擎有hive,impala这些结构化的带元数据的数据库。在这些结构化的带元数据的数据库中,通常,将各类事件的数据记录在各个事实数据表中。在用户访问互联网的过程中,一般有会话表(session)、页面浏览表(pageview)和订单表(order)等多种表示用户访问行为的事实数据表,这些数据表可以通过用户的会话标识(sessionid)进行关联,以形成整个会话的所有实体。但是,由于数据表之间关联性差,当用户需要从多个维度获取多张事实数据表中的指标数据和维度数据时,需要进行多次筛选,筛选过程复杂,造成资源浪费。
针对现有技术中分布式数据库中的多张数据表关联性差,导致筛选会话的过程复杂,造成资源浪费的技术问题,目前尚未提出有效的解决方案。
技术实现要素:
本发明实施例提供了一种会话的筛选方法和装置,以至少解决现有技术中分布式数据库中的多张数据表关联性差,导致筛选会话的过程复杂,造成资源浪费的技术问题。
根据本发明实施例的一个方面,提供了一种会话的筛选方法,包括:获取用于筛选会话的自定义指标,其中,自定义指标包含指标元素和至少一个维度元素;根据自定义指标,从多张数据表中提取数据表集合,其中,数据表集合中的每个数据表至少包含如下任意一项:指标元素和至少一个维度元素中的任意一个;从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话。
根据本发明实施例的另一方面,还提供了一种会话的筛选装置,包括:第一获取单元,用于获取用于筛选会话的自定义指标,其中,自定义指标包含指标元素和至少一个维度元素;提取单元,用于根据自定义指标,从多张数据表中提取数据表集合,其中,数据表集合中的每个数据表至少包含如下任意一项:指标元素和至少一个维度 元素中的任意一个;第一处理单元,用于从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话。
在本发明实施例中,通过获取到用于筛选会话的自定义指标,并根据自定义指标,从多张数据表中提取到数据表集合,从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话。通过本申请实施例,通过根据自定义指标提取数据表集合,进一步从数据表集合中获取自定义指标满足预设条件的会话,简化了现有技术中需要根据自定义指标多次筛选数据表,再根据筛选结果进行分析得到筛选后的会话,从而解决了现有技术中分布式数据库中的多张数据表关联性差,导致筛选会话的过程复杂,造成资源浪费的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种会话的筛选方法的流程图;
图2是根据本发明实施例的一种会话的筛选装置的示意图;
图3是根据本发明实施例的一种可选的会话的筛选装置的示意图;
图4是根据本发明实施例的一种可选的会话的筛选装置的示意图;
图5是根据本发明实施例的一种可选的会话的筛选装置的示意图;以及
图6是根据本发明实施例的一种可选的会话的筛选装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在 这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
指标:是指可以进行聚合运算的值,例如,访问页面数可以是一个指标。
维度:是多维数据库的结构性特性,是数据表中用来描述数据的分类的有组织层次结构,例如,操作系统可以是一个维度。
数据表:是数据库最重要的组成部分之一,包含用户访问网页产生的所有数据信息,例如,用户访问网页产生的访问页面,访问时长,访问页面数等相关的数据信息。
关联键:是分布式数据库的重要组成部分,是一个数据表与另一个数据表产生关系的字段,例如,可以通过id进行关联。
元组指标:指用特定维度和指标组成的指标。
实施例1
根据本发明实施例,提供了一种会话的筛选方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种会话的筛选方法的流程图,如图1所示,该方法包括如下步骤:
步骤s102,获取用于筛选会话的自定义指标,其中,自定义指标包含指标元素和至少一个维度元素。
在一种可选的方案中,上述自定义指标可以是元组指标,可以根据用户的筛选需要,确定元组指标包含指标元素和至少一个维度元素。
例如,以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。可以根据用户的需要定义自定义指标,该自定义指标可以包含一个指标元素和两个维度元素,指标元素为访问人数(visits),维度元素为访问页面数(pvcount)和访问时长(pvduration)。
此处需要说明的是,上述自定义指标也可以是有效订单数,其中orderstatus为已支付及后续状态等。
步骤s104,根据自定义指标,从多张数据表中提取数据表集合,其中,数据表集合中的每个数据表至少包含如下任意一项:指标元素和至少一个维度元素中的任意一个。
在一种可选的方案中,根据获取到的自定义指标,在分布式数据库包含的多张数据表中进行查询,确定包含指标元素和任意一个维度元素的多张数据表,将该多张数据表构成一个数据表集合。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。可以根据用户的需要定义自定义指标,该自定义指标可以包含一个指标元素和两个维度元素,指标元素为访问人数(visits),维度元素为访问页面数(pvcount)和访问时长(pvduration)。根据该自定义指标,在数据库包含的全部数据表中进行查询,得到包含指标元素和维度元素的页面浏览表(pageview)和会话表(session),将页面浏览表(pageview)和会话表(session)构成数据表集合。
步骤s106,从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话。
在一种可选的方案中,上述预设条件可以根据用户的筛选需要进行设定,在提取到包含自定义指标的数据表集合之后,可以根据预设条件在数据表集合中进行查询,得到至少一个维度元素和指标元素均满足预设条件的会话,作为筛选后的会话。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。如果用户的需求为访问页面数(pvcount)大于10和访问时长(pvduration)大于100,在根据该自定义指标,得到页面浏览表(pageview)和会话表(session)构成数据表集合之后,从页面浏览表和会话表中提取访问页面数和访问时长满足预设条件的会话,得到筛选后的会话。
采用本申请实施例,通过获取到用于筛选会话的自定义指标,并根据自定义指标,从多张数据表中提取到数据表集合,从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话。通过本申请实施例,通过根据自定义指标,提取数据表集合,进一步从数据表集合中获取自定义指标满足预设条件的会话,简化了现有技术中需要根据自定义指标多次筛选数据表,再根据筛选结果进行分析得到筛选后的会话,从而解决了现有技术中分布式数据库中的多张数据表关联性差,导致筛选会话的过程复杂,造成资源浪费的技术问题。
根据本申请上述实施例,步骤s104,从多张数据表中提取包含自定义指标的会话集合包括如下步骤:
步骤s1042,判断多张数据表中是否存在同时包含指标元素和至少一个维度元素的数据表。
在一种可选的方案中,获取到自定义指标之后,根据指标元素和至少一个维度元素,在数据库包含的多张数据表中进行查询,确定包含指标元素和至少一个维度元素的数据表,判断是否存在同时包含指标元素和维度元素的数据表。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。可以根据用户的需要定义自定义指标,该自定义指标可以包含一个指标元素和两个维度元素,指标元素为访问人数(visits),维度元素为访问页面数(pvcount)和访问时长(pvduration)。根据访问人数(visits)、访问页面数(pvcount)和访问时长(pvduration),在数据库包含的全部数据表中进行查询,判断是否存在同时包含访问人数(visits)、访问页面数(pvcount)和访问时长(pvduration)的数据表。
步骤s1044,在存在同时包含指标元素和至少一个维度元素的数据表的情况下,提取同时包含指标元素和至少一个维度元素的数据表,构成数据表集合。
在一种可选的方案中,如果存在同时包含指标元素和至少一个维度元素的数据表,则将该数据表作为数据表集合。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。如果判断存在同时包含访问人数(visits)、访问页面数(pvcount)和访问时长(pvduration)的数据表,例如会话表(session),则提取该会话表作为数据表集合。
步骤s1046,在不存在同时包含指标元素和至少一个维度元素的数据表的情况下,从多张数据表中获取包含指标元素或任意一个维度元素的一组数据表,并从一组数据表中提取具有表连接关系的数据表构成数据表集合。
在一种可选的方案中,如果不存在同时包含指标元素和至少一个维度元素的数据表,则从数据表中获取包含任意一个指标元素或任意一个维度元素的多张数据表,将该多张数据表作为数据表集合。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。如果判断不存在同时包含访问人数(visits)、访问页面数(pvcount)和访问时长(pvduration)的数据表,则将包含访问页面数(pvcount)和访问时长(pvduration)的页面浏览表(pageview)和包含访问人数(visits)的会话表(session)作为数据 表集合。
此处需要说明的是,用户访问页面产生的访问数据通常会存储在不同的数据库和数据表中,因此,通常情况下,不存在同时包含指标元素和至少一个维度元素的数据表,在这种情况下,现有技术的筛选会话的方式过程复杂,筛选时间长。
根据本申请上述实施例,在步骤s1046,从一组数据表中提取具有表连接关系的数据表构成数据表集合之前,上述方法还包括:
步骤s10462,获取一组数据表中每个数据表的连接键值。
在一种可选的情况中,具有表连接关系的数据表中每个数据表都存在一个或多个连接键值,可以是特定的字段指标。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。数据表集合中的页面浏览表(pageview)和会话表(session)可以通过用户的会话标识(sessionid)进行关联,即页面浏览表(pageview)和会话表(session)中都包含会话标识(sessionid)字段。
步骤s10464,根据每个数据表的连接键值,将一组数据表进行连接,得到具有表连接关系的数据表。
在一种可选的方案中,获取每个数据表的连接键值之后,根据连接键值的内容,将多张数据表进行连接,得到具有表连接关系的数据表。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。在获取到页面浏览表(pageview)和会话表(session)的会话标识(sessionid)之后,根据会话标识(sessionid),将页面浏览表(pageview)和会话表(session)进行表连接,将相同会话标识(sessionid)的内容进行合并。
根据本申请上述实施例,步骤s106,从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话包括如下步骤:
步骤s1062,读取数据表集合中每个会话包含的至少一个维度元素对应的数据。
在一种可选的方案中,当数据表集合只包含一个数据表时,读取该数据表中每个会话中每一个维度元素对应的数据;当数据表集合包含多张数据表时,在多张数据表进行连接之后,读取每个会话中每个维度元素对应的数据。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。在获取到页面浏览表(pageview)和会话表(session)的会话标识(sessionid)之后, 读取每个会话标识(sessionid)对应的访问页面数(pvcount)和访问时长(pvduration),例如,会话标识为1的会话的访问页面数是8,访问时长是120,会话标识为2的会话的访问页面数是15,访问时长是90,会话标识为3的会话的访问页面数是12,访问时长是110,会话标识为4的会话的访问页面数是6,访问时间时75。
步骤s1064,判断任意一个会话包含的至少一个维度元素中每一个维度元素对应的数据是否大于等于预设的阀值。
在一种可选的方案中,上述预设的阀值为根据用户的筛选需要设定的每个维度元素对应的数值,在读取到每个会话包含的每个维度元素对应的数据之后,判断每个维度元素对应的数据是否大于该维度元素的预设的阀值。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。用户设定的访问页面数(pvcount)的预设的阀值是10和访问时长(pvduration)的预设的阀值是100,在读取每个会话标识(sessionid)对应的访问页面数(pvcount)和访问时长(pvduration)之后,判断每个会话标识对应的访问页面数是否大于10,访问时长是否大于100。
步骤s1066,在任意一个会话包含的至少一个维度元素中每一个维度元素对应的数据都大于等于预设的阀值的情况下,任意一个会话为筛选后的会话。
在一种可选的方案中,在每一个维度元素对应的数据都大于等于该维度元素对应的预设的阀值的情况下,该会话为用户需要的筛选后的会话。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。用户设定的访问页面数(pvcount)的预设的阀值是10和访问时长(pvduration)的预设的阀值是100,在读取到会话标识为1的会话的访问页面数是8,访问时长是120,会话标识为2的会话的访问页面数是15,访问时长是90,会话标识为3的会话的访问页面数是12,访问时长是110,会话标识为4的会话的访问页面数是6,访问时间时75之后,通过判断可以知道,会话标识为3的会话的访问页面数大于10,访问时长大于110,该会话标识为3的会话为筛选后的会话。
根据本申请上述实施例,步骤s1062,读取数据表集合中每个会话包含的至少一个维度元素对应的数据包括如下步骤:
步骤s10622,提取数据表集合中至少一个维度元素中每一个维度元素对应的数据。
在一种可选的方案中,在数据表集合中至少一个维度元素中每一个维度元素对应的数据满足预设的阀值的情况下,派生每一个维度元素对应的指标值,其中,若为计 数指标,则派生指标值为1,若为求和指标,则派生此行的值,例如ordervalue,派生value列的值,满足为1;在数据表集合中每一个维度元素对应的数据不满足预设的阀值的情况下,若为计数指标,则为0,例如,ordervalue,派生value列的值,不满足为0。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。用户设定的访问页面数(pvcount)的预设的阀值是10和访问时长(pvduration)的预设的阀值是100,会话标识为1的会话的访问页面数是8<10,不满足则为0,访问时长是120>100,满足则为1;会话标识为2的会话的访问页面数是15>10,满足则为1,访问时长是90<100,不满足则为0;会话标识为3的会话的访问页面数是12>10,满足则为1,访问时长是110>100,满足则为1;会话标识为4的会话的访问页面数是6<10,不满足则为0,访问时间时75<100,不满足则为0。
步骤s10624,根据每一个维度元素的聚合类型,将每一个维度元素对应的数据进行聚合运算,得到至少一个维度元素对应的数据。
在一种可选的方案中,在派生每一个维度元素对应的指标值之后,可以根据每个指标的聚合类型,将派生的指标值进行聚合运算,得到最后的指标结果。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。访问页面数的聚合类型是计算,访问时长的聚合类型是计算,根据计算类型,将访问页面数对应的派生指标值和访问时长对应的派生指标值进行聚合运算,得到最后筛选后的会话为会话标识为3的会话。
此处需要说明的是,上述聚合类型可以是求和,计算,求平均,率值等。
实施例2
根据本发明实施例,提供了一种会话的筛选装置实施例,如图2所示,该装置包括:第一获取单元21,提取单元23和第一处理单元25。
其中,第一获取单元21用于获取用于筛选会话的自定义指标,其中,自定义指标包含指标元素和至少一个维度元素。
在一种可选的方案中,上述自定义指标可以是元组指标,可以根据用户的筛选需要,确定元组指标包含指标元素和至少一个维度元素。
例如,以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。可以根据用户的需要定义自定义指标,该自定义指标可以包含一个指标元素和两个维度元素,指标元素为访问人数(visits),维度元素为访问页面数(pvcount)和访问时长 (pvduration)。
此处需要说明的是,上述自定义指标也可以是有效订单数,其中orderstatus为已支付及后续状态等。
提取单元23用于根据自定义指标,从多张数据表中提取包含数据表集合,其中,数据表集合中的每个数据表至少包含如下任意一项:指标元素和至少一个维度元素中的任意一个。
在一种可选的方案中,根据获取到的自定义指标,在分布式数据库包含的多张数据表中进行查询,确定包含指标元素和任意一个维度元素的多张数据表,将该多张数据表构成一个数据表集合。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。可以根据用户的需要定义自定义指标,该自定义指标可以包含一个指标元素和两个维度元素,指标元素为访问人数(visits),维度元素为访问页面数(pvcount)和访问时长(pvduration)。根据该自定义指标,在数据库包含的全部数据表中进行查询,得到包含指标元素和维度元素的页面浏览表(pageview)和会话表(session),将页面浏览表(pageview)和会话表(session)构成数据表集合。
第一处理单元25用于从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话。
在一种可选的方案中,上述预设条件可以根据用户的筛选需要进行设定,在提取到包含自定义指标的数据表集合之后,可以根据预设条件在数据表集合中进行查询,得到至少一个维度元素和指标元素均满足预设条件的会话,作为筛选后的会话。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。如果用户的需求为访问页面数(pvcount)大于10和访问时长(pvduration)大于100,在根据该自定义指标,得到页面浏览表(pageview)和会话表(session)构成数据表集合之后,从页面浏览表和会话表中提取访问页面数和访问时长满足预设条件的会话,得到筛选后的会话。
采用本申请实施例,通过获取到用于筛选会话的自定义指标,并根据自定义指标,从多张数据表中提取到数据表集合,从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话。通过本申请实施例,通过根据自定义指标,提取数据表集合,进一步从数据表集合中获取自定义指标满足预设条件的会话,简化了现有技术中需要根据自定义指标多次筛选数据表,再根据筛选结果进行分析得到筛选后的会话,从而解决了现有技术中分布式数据库中的多张数据表关联性差,导致筛选会话的过程 复杂,造成资源浪费的技术问题。
根据本申请上述实施例,如图3所示,提取单元23包括:判断模块31,第一提取模块33和第二提取模块35。
其中,判断模块31用于判断多张数据表中是否存在同时包含指标元素和至少一个维度元素的数据表。
在一种可选的方案中,获取到自定义指标之后,根据指标元素和至少一个维度元素,在数据库包含的多张数据表中进行查询,确定包含指标元素和至少一个维度元素的数据表,判断是否存在同时包含指标元素和维度元素的数据表。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。可以根据用户的需要定义自定义指标,该自定义指标可以包含一个指标元素和两个维度元素,指标元素为访问人数(visits),维度元素为访问页面数(pvcount)和访问时长(pvduration)。根据访问人数(visits)、访问页面数(pvcount)和访问时长(pvduration),在数据库包含的全部数据表中进行查询,判断是否存在同时包含访问人数(visits)、访问页面数(pvcount)和访问时长(pvduration)的数据表。
第一提取模块33用于在存在同时包含指标元素和至少一个维度元素的数据表的情况下,提取同时包含指标元素和至少一个维度元素的数据表,构成数据表集合。
在一种可选的方案中,如果存在同时包含指标元素和至少一个维度元素的数据表,则将该数据表作为数据表集合。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。如果判断存在同时包含访问人数(visits)、访问页面数(pvcount)和访问时长(pvduration)的数据表,例如会话表(session),则提取该会话表作为数据表集合。
第二提取模块35用于在不存在同时包含指标元素和至少一个维度元素的数据表的情况下,从多张数据表中获取包含任意一个指标元素或任意一个维度元素的一组数据表,并从一组数据表中提取具有表连接关系的数据表构成数据表集合。
在一种可选的方案中,如果不存在同时包含指标元素和至少一个维度元素的数据表,则从数据表中获取包含任意一个指标元素或任意一个维度元素的多张数据表,将该多张数据表作为数据表集合。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。如果判断不存在同时包含访问人数(visits)、访问页面数(pvcount)和访问时长(pvduration)的数据表,则将包含访问页面数(pvcount)和访问时长(pvduration) 的页面浏览表(pageview)和包含访问人数(visits)的会话表(session)作为数据表集合。
此处需要说明的是,用户访问页面产生的访问数据通常会存储在不同的数据库和数据表中,因此,通常情况下,不存在同时包含指标元素和至少一个维度元素的数据表,在这种情况下,现有技术的筛选会话的方式过程复杂,筛选时间长。
根据本申请上述实施例,如图4所示,上述装置包括:第二获取单元41和第二处理单元43。
其中,第二获取单元41用于获取一组数据表中每个数据表的连接键值。
在一种可选的情况中,具有表连接关系的数据表中每个数据表都存在一个或多个连接键值,可以是特定的字段指标。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。数据表集合中的页面浏览表(pageview)和会话表(session)可以通过用户的会话标识(sessionid)进行关联,即页面浏览表(pageview)和会话表(session)中都包含会话标识(sessionid)字段。
第二处理单元43用于根据每个数据表的连接键值,将一组数据表进行连接,得到具有表连接关系的数据表。
在一种可选的方案中,获取每个数据表的连接键值之后,根据连接键值的内容,将多张数据表进行连接,得到具有表连接关系的数据表。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。在获取到页面浏览表(pageview)和会话表(session)的会话标识(sessionid)之后,根据会话标识(sessionid),将页面浏览表(pageview)和会话表(session)进行表连接,将相同会话标识(sessionid)的内容进行合并。
根据本申请上述实施例,如图5所示,第一处理单元25包括:读取模块51,判断模块53和确定模块55。
其中,读取模块51用于读取数据表集合中每个会话包含的至少一个维度元素对应的数据。
在一种可选的方案中,当数据表集合只包含一个数据表时,读取该数据表中每个会话中每一个维度元素对应的数据;当数据表集合包含多张数据表时,在多张数据表进行连接之后,读取每个会话中每个维度元素对应的数据。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。在获取到页面浏览表(pageview)和会话表(session)的会话标识(sessionid)之后,读取每个会话标识(sessionid)对应的访问页面数(pvcount)和访问时长(pvduration),例如,会话标识为1的会话的访问页面数是8,访问时长是120,会话标识为2的会话的访问页面数是15,访问时长是90,会话标识为3的会话的访问页面数是12,访问时长是110,会话标识为4的会话的访问页面数是6,访问时间时75。
判断模块53用于判断任意一个会话包含的至少一个维度元素中每一个维度元素对应的数据是否大于等于预设的阀值。
在一种可选的方案中,上述预设的阀值为根据用户的筛选需要设定的每个维度元素对应的数值,在读取到每个会话包含的每个维度元素对应的数据之后,判断每个维度元素对应的数据是否大于该维度元素的预设的阀值。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。用户设定的访问页面数(pvcount)的预设的阀值是10和访问时长(pvduration)的预设的阀值是100,在读取每个会话标识(sessionid)对应的访问页面数(pvcount)和访问时长(pvduration)之后,判断每个会话标识对应的访问页面数是否大于10,访问时长是否大于100。
确定模块55用于在任意一个会话包含的至少一个维度元素中每一个维度元素对应的数据都大于等于预设的阀值的情况下,确定任意一个会话为筛选后的会话。
在一种可选的方案中,在每一个维度元素对应的数据都大于等于该维度元素对应的预设的阀值的情况下,该会话为用户需要的筛选后的会话。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。用户设定的访问页面数(pvcount)的预设的阀值是10和访问时长(pvduration)的预设的阀值是100,在读取到会话标识为1的会话的访问页面数是8,访问时长是120,会话标识为2的会话的访问页面数是15,访问时长是90,会话标识为3的会话的访问页面数是12,访问时长是110,会话标识为4的会话的访问页面数是6,访问时间时75之后,通过判断可以知道,会话标识为3的会话的访问页面数大于10,访问时长大于110,该会话标识为3的会话为筛选后的会话。
根据本申请上述实施例,如图6所示,读取模块51包括:提取子模块61和处理子模块63。
提取子模块61用于提取数据表集合中至少一个维度元素中每一个维度元素对应的数据。
在一种可选的方案中,在数据表集合中至少一个维度元素中每一个维度元素对应的数据满足预设的阀值的情况下,派生每一个维度元素对应的指标值,其中,若为计数指标,则派生指标值为1,若为求和指标,则派生此行的值,例如ordervalue,派生value列的值,满足为1;在数据表集合中每一个维度元素对应的数据不满足预设的阀值的情况下,若为计数指标,则为0,例如,ordervalue,派生value列的值,不满足为0。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。用户设定的访问页面数(pvcount)的预设的阀值是10和访问时长(pvduration)的预设的阀值是100,会话标识为1的会话的访问页面数是8<10,不满足则为0,访问时长是120>100,满足则为1;会话标识为2的会话的访问页面数是15>10,满足则为1,访问时长是90<100,不满足则为0;会话标识为3的会话的访问页面数是12>10,满足则为1,访问时长是110>100,满足则为1;会话标识为4的会话的访问页面数是6<10,不满足则为0,访问时间时75<100,不满足则为0。
处理子模块63用于根据每一个维度元素的聚合类型,将每一个维度元素对应的数据进行聚合运算,得到至少一个维度元素对应的数据。
在一种可选的方案中,在派生每一个维度元素对应的指标值之后,可以根据每一个指标的聚合类型,将派生的指标值进行聚合运算,得到最后的指标结果。
例如,仍以用户需要筛选高质量会话数为例,对本发明上述实施例进行说明。访问页面数的聚合类型是计算,访问时长的聚合类型是计算,根据计算类型,将访问页面数对应的派生指标值和访问时长对应的派生指标值进行聚合运算,得到最后筛选后的会话为会话标识为3的会话。
此处需要说明的是,上述聚合类型可以是求和,计算,求平均,率值等。
上述会话的筛选装置包括处理器和存储器,上述第一获取单元,提取单元,提取单元,第二获取单元和第二处理单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元。上述预设条件都可以存储在存储器中。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数解析文本内容。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。
本申请还提供了一种计算机程序产品的实施例,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:获取用于筛选会话的自定义指标,其中,自定义指标包含指标元素和至少一个维度元素;从多张数据表中提取包含自定义指标的数据表集合,其中,数据表集合中的每个数据表至少包含如下任意一项:指标元素和至少一个维度元素中的任意一个;从数据表集合中提取自定义指标满足预设条件的会话,得到筛选后的会话。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人 员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。