首次激活时间、每日新增用户以及应用留存在衡量一个应用或者服务的重要宏观指标。但在实际收集中,数据一般存储的是动作数据,即某个用户在某个特定的时间触发了某个特定的事件,因而在获取首次激活时间、每日新增用户以及用户留存等宏观指标时,需要基于事件数据计算各个宏观指标。
首次激活时间
首次激活时间计算(有时也是用户首次使用时间),是用户使用应用或者服务的历史记录数据,只不过是仅记录用户首次的使用时间。
计算首次使用时间的思路是:
- 创建首次使用时间的空表;
- 循环日期,如果特定一天的用户不再用户首次使用历史表中,则将该数据插入首次使用历史表;
- 直到所有时期循环结束
循环执行过程有很多方法,可以用shell
也可以用其他程序,比如python
就需要用到 python 日期循环。
这里唯一需要指出的问题是在使用python
时,需要将程序提交至服务器后台运行,否则退出shell
时,程序也会自动中断,方法如下:
参见:PYTHON的程序在LINUX后台运行
当期新增、累计新增
完成数据处理后,首次激活即可以非常容易的计算。当然在实际统计中,不仅需要统计特定日期的激活量,还需要统计累计截止到某一日期累计激活量。在有了上述历史表就可以很容计算。
参考:hive累计求和 与 mysql累计求和
留存统计
参考文献
- Hive统计新增