【技术实现步骤摘要】
用户行为的统计数据矩阵的生成方法和装置
本专利技术涉及计算机
,尤其涉及一种用户行为的统计数据矩阵的生成方法和装置。
技术介绍
在计算机
,经常面临需要分析用户行为的场景,上述用户行为可以是用户针对物品的浏览、搜索、购买等行为。为了更加直观地展示不同用户对于不同物品的行为区分度,可建立用户行为的统计数据矩阵,该矩阵的每一行数据可对应一个用户,每一列数据可对应一种物品,每一元素表示一个用户针对一种物品的行为数据在预设时间间隔内的统计结果。在现有的以Hive(一种应用在分布式系统的数据仓库工具)作为查询引擎的分布式系统中,一般通过HiveSQL(SQL是StructuredQueryLanguage的缩写,表示结构化查询语言)获取上述统计结果,HiveSQL语句的数量与物品种类数量相当。在实际场景中,物品种类的数量往往较为庞大,这使得HiveSQL语句的编写、存储和执行需要耗费大量资源,严重影响上述统计数据矩阵的生成效率。同时,用户的数量往往同样较为庞大,加之上述统计数据矩阵一般为稀疏矩阵,以现有方式(即显示 ...
【技术保护点】
1.一种用户行为的统计数据矩阵的生成方法,其特征在于,包括:/n获取预设时间间隔内多个用户针对多种物品的多条单次行为数据;其中,所述单次行为数据中包括预设的目标维度的数据;/n依据所述单次行为数据确定每一用户针对每种物品的目标维度数据的统计结果,从中选取非零统计结果;其中,每一非零统计结果与其对应的物品标识形成键值对数据;/n将同一用户的所述键值对数据单独存储在一个集合;在该集合中,将键值对数据中的物品标识存储在第一子集,将键值对数据中的非零统计结果存储在第二子集;其中,在第一子集与第二子集中,处于相同存储位置的数据相互对应;以及,/n将每一集合中的物品标识转换为矩阵的列序 ...
【技术特征摘要】
1.一种用户行为的统计数据矩阵的生成方法,其特征在于,包括:
获取预设时间间隔内多个用户针对多种物品的多条单次行为数据;其中,所述单次行为数据中包括预设的目标维度的数据;
依据所述单次行为数据确定每一用户针对每种物品的目标维度数据的统计结果,从中选取非零统计结果;其中,每一非零统计结果与其对应的物品标识形成键值对数据;
将同一用户的所述键值对数据单独存储在一个集合;在该集合中,将键值对数据中的物品标识存储在第一子集,将键值对数据中的非零统计结果存储在第二子集;其中,在第一子集与第二子集中,处于相同存储位置的数据相互对应;以及,
将每一集合中的物品标识转换为矩阵的列序号,以使每一集合成为用于组成所述统计数据矩阵的行向量;或者,将每一集合中的物品标识转换为矩阵的行序号,以使每一集合成为用于组成所述统计数据矩阵的列向量。
2.根据权利要求1所述的方法,其特征在于,
所述统计数据矩阵中的任一元素表征:在所述时间间隔内,所述多个用户中的一个用户针对所述多种物品中的一种物品所实施的行为在目标维度的统计结果;
所述统计数据矩阵中与该元素处于不同行且不同列的任一元素表征:在所述时间间隔内,所述多个用户中的另一用户针对所述多种物品中的另一种物品所实施的行为在目标维度的统计结果。
3.根据权利要求1所述的方法,其特征在于,
所述方法进一步包括:在将同一用户的所述键值对数据单独存储在一个集合之后,按照预设顺序将每一集合中的键值对数据排序;其中,所述排序使键值对数据中物品标识对应的矩阵列序号或者行序号以升序排列;
所述将键值对数据中的物品标识存储在第一子集,将键值对数据中的非零统计结果存储在第二子集,具体包括:按照所述排序后形成的键值对数据排列顺序,将键值对数据中的物品标识存储在第一子集,将键值对数据中的非零统计结果存储在第二子集。
4.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
在使每一集合成为所述行向量或者列向量之前,确定所述多种物品的种类数量并将该数量存储在每一集合。
5.根据权利要求1-4任一所述的方法,其特征在于,
所述方法用于以Hive作为查询引擎的Spark分布式系统中,所述单次行为数据存储在Hive数据表中;
获取非零统计结果采用Spark中的以键归约算子,将同一用户的键值对数据单独存储在一个集合采用Spark中的以键组合算子;
所述行为包括以下至少一种:浏览、搜索、购买;所述目标维度包括以下至少一种:浏览次数、浏览时长、搜索次数、购买次数;
以及,第一子集和第二子集为数组,所述统计数据矩阵为稀疏矩阵。
6.一种用户行为的统计数据矩阵的生成装置,其特征在于,包括:
数据获取单元,用于获取预设时间间隔内多个用...
【专利技术属性】
技术研发人员:李慧萍,
申请(专利权)人:北京京东尚科信息技术有限公司,北京京东世纪贸易有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。