加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

[bigdata-013]某app端用户行为分析-1

发布时间:2020-12-14 01:22:46 所属栏目:大数据 来源:网络整理
导读:数据集来自mongodb数据库,将bson格式转为json格式已经在其他文章描述。这里使用已经转化好的json文件。每行是一个行为事件。 ? 我们首先要从无序的数据集里,恢复出每个用户的行为事件的时间序列,然后才能进行有效的后续分析。本文主要解决这个问题。 ? 1.

数据集来自mongodb数据库,将bson格式转为json格式已经在其他文章描述。这里使用已经转化好的json文件。每行是一个行为事件。

?

我们首先要从无序的数据集里,恢复出每个用户的行为事件的时间序列,然后才能进行有效的后续分析。本文主要解决这个问题。

?

1. 一个理财行为事件的数据记录,数据结构如下:

{

'deviceInfo': {

??? 'idfa': '696F8E5',

??? 'ip': '172.16.104.125',

??? 'osVersion': '9.3.3',

??? 'operationSystem': 'iOS',

??? 'phoneModel': 'iPad4,8'},

'beginTime': '2016-09-16 04:17:54',

...

}

其中,beginTime是这个事件发生的开始时间,endTime是这个事件的结束时间。凑齐若干个事件上传到mongodb服务器。

?

2. 用户标识问题:

一个用户,在没有登录的情况下,其操作产生的事件,是没有userId的,也没有token。

对某些类型用户而言,可以用硬件指纹识别,这个值是固定的,且非常有可能跟userId进行绑定。一个手机可能登录多个用户,因此userId和idfa不能一一对应关系。

sessionId和token在当前登录有效,过期后就无效了。

结论:userId是唯一持续有效; 在没有userId的情况下,硬件指纹短期内(一个持续的用户操作流程内)是唯一持续有效。

?

3.一个用户的操作过程,表现一组事件。比如,如下是一个用户的完整操作过程,用硬件指纹进行标识。

event no.4,在start页面,在没有登录的状态下,没有userId,也没有token

该用户浏览4个页面后,进入login页面,开始登录,也就是event no.8

于是,从event no.9开始,该用户的事件信息有了userId和token,到了event no.11,用户操作结束。

?

4. 登录用户的转化率分析处理

??? 4.1 对数据进行处理,过滤掉没有userId信息的记录。数据集所有事件共计×××万个,具有userId的事件是×××万个。

??? 4.2 根据userId对事件进行重排,也就是说,将一个userId产生的所有事件按照时间先后排序,视为一个Case,也就是一个用户的完整踪迹记录。

??? 4.3 一个用户可能在多天内多次登录,为了区分多次登录,需要将记录切分,也就是说,要区分每次登录,每次登录包含若干个事件。?

?

5. 根据一组组事件,再细化需求,分析用户行为。

?

6. 数据上报到Mongodb-->数据清洗到hive-->hive/impala数据汇聚成特定需求子集-->处理子集/关系库计算缓存-->对外提供json rest api查询功能。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读