用户购物行为分析(订单路径树)

简介: 用户购物行为分析(订单路径树)

1.订单路径树的定义

用户从打开某网站到最终下单所点击的路径为订单路径树。

比如:打开某电商app或者网站到最终下单的路径,大部分用户的路径为:

(1)主页-搜索页-商详页-加购-下单(搜索下单路径)

(2)首页-列表页-商详页-加工-下单(列表页下单路径)

(3)当然用户也可以进行其他的无规则的点击,最终加购下单,都会生成用户从点击到购买的路径行为。

2.订单路径树的作用

(1)可以统计某个点击位的引单效果的好坏

(2)可以统计某个广告位的引单效果的好坏

(3)转化率好坏

(4)....

3.订单路径树的生成逻辑

通过上面理解,可以看到主要涉及到用户的点击操作和最终订单生成,构建成一个完整订单路径。

因此主要需要两类数据:(1)点击流数据,即:用户的点击行为数据  (2)订单流数据

用户的点击行为数据实时上报到kafka:cl

cl 包含关键字段字段:cts(客户端时间)、rts(服务端时间)、eventid(点击位唯一标示)、uid(用户唯一id)、pv_sid(访次)、param(参数)

下单数据实时上报至kafka:od

od 包含关键字段:orderId、skuIds(sku列表)、uId(会话id)

因为cl只含有点击点击位信息,需要关联埋点方案表信息,埋点方案表涵盖:eventId(点击位唯一标示)、pageNum(页面唯一编号)、加购标示。

第一步:接入cl、od实时流数据(注意做幂等处理,cl根据所有字段生成唯一标示MD5化,od根据oderid作唯一处理),加载埋点数据至内存

第二步:对cl数据进行处理,联上paNum,再根据paNum相对应的加购与否,如果是加购点就去解析sku

(1)生成点击路径树(普通点击)

每个key一个hset保存当前uid+pv_sid 的路径信息   关键clKey: c+“|”+uid+“|”+pv_sid

(2)生成加购路径树(加购点击)

逻辑为:拷贝点击路径树至加购路径树,关键addCartKey: ac+"|"+uid+"|"+sku

(3)订单路径树(加购路径树+订单流进行关联)

拷贝加购路径树至订单路径树,关键odKey:oc+"|"+orderId+"|"+sku

至此订单路劲树生成完成,格式为:

0,data;1,data;2,data;....    其中0处为加购点

最终订单路径树结果可以写入到kafka(进行计算引入订单),也可写入到hbase或者hdfs(导入到hive进行查询)

订单找回率:订单路径树中的订单/订单表中的订单 (大概率在90%以上),部分原因是因为用户在不同端加购和购物导致uid和pv_sid不同

文中用到的技术:kafka、jimdb、hbase

(1)hbase的rowkey设计:md5加密

(2)hbase有ttl功能,因为点击路径树只需要保存24小时,加购路径树保存15天;时间设置可以修改根据需求修改,主要是节约存储资源,比如说mysql需要删除处理,所以选用hbase的原因,写入数据量较大,查询的时候根据rowkey进行查询,非常实用hbase的应用场景。

4.订单路径树优化升级方案

上述订单路径树方案存在的问题:

(1)数据延迟上报  上报顺序: a1(ctm1)、a2(ctm2)、b(加购 ctm) ctm1

(2)数据量太大,hbase存储的扩展字段进行修改比较耗时。

因此做了如下优化:

(1)数据先进来保存10分钟再排序一起处理,解决延迟上报问题

(2)最新N条数据存redis(包括扩展字段),其他数据的扩展字段存hbase,因为最新数据需要进行频繁修改。

(3)hbase value过大,进行压缩或者拆分----hbase 1.0版本,2.0版本 hbase mob


5.应用

至此订单路径树生成完毕,可以使用订单路径树数据对用户订单行为进行分析、对广告的引单效果进行分析以及转换率进行分析。

订单路径树不仅仅对电商场景分析有用,对外卖(下单)、酒店、旅游(下单),甚至对电影或者视频网站也可以进行分析。



相关文章
|
XML JSON 缓存
Java实现根据商品ID搜索抖音商品详情数据方法
Java实现根据商品ID搜索抖音商品详情数据方法
|
SQL 小程序 JavaScript
【易售小程序项目】小程序首页(展示商品、商品搜索、商品分类搜索)【后端基于若依管理系统开发】
【易售小程序项目】小程序首页(展示商品、商品搜索、商品分类搜索)【后端基于若依管理系统开发】
64 0
|
2月前
|
JavaScript API
vue尚品汇商城项目-day06【37.获取交易数据+38.用户地址信息展示+39.交易信息展示及交易页面完成+40.提交订单+41.支付组件内获取订单号与展示支付信息】
vue尚品汇商城项目-day06【37.获取交易数据+38.用户地址信息展示+39.交易信息展示及交易页面完成+40.提交订单+41.支付组件内获取订单号与展示支付信息】
46 0
|
6月前
|
数据库
电商购物系统商品数据结构设置 -- 商品类别表
电商购物系统商品数据结构设置 -- 商品类别表
|
搜索推荐 Java 数据库
淘东电商项目(46) -商品搜索服务功能的实现
淘东电商项目(46) -商品搜索服务功能的实现
57 0
|
7月前
|
消息中间件 供应链 NoSQL
电商订单待支付(思路分析)
电商订单待支付(思路分析)
|
SQL 搜索推荐 数据库
淘东电商项目(39) -商品搜索服务数据库设计
淘东电商项目(39) -商品搜索服务数据库设计
113 0
|
SQL 前端开发 测试技术
增加购物车商品数量【项目 商城】
增加购物车商品数量【项目 商城】
107 0
|
XML JSON 缓存
Java实现根据商品ID搜索拼多多商品详情数据方法
Java实现根据商品ID搜索拼多多商品详情数据方法
|
XML JSON 缓存
Java实现根据商品ID搜索抖音商品评论数据方法
Java实现根据商品ID搜索抖音商品评论数据方法

热门文章

最新文章