本文是数据埋点知识系列的第二篇文章,主要分享关于埋点数据的采集、传输、加工、存储、应用和管理等内容。正如上篇文章所提的,埋点是互联网公司获取数据信息的重要方式。数据的全流程一般涉及到采集、传输、加工、存储、应用等过程。下面就将按照这个顺序,对埋点全流程进行说明。最后,加入了一个埋点系统设计者对埋点管理过程的理解,期待同行的交流~
采集过程:
上文提到了埋点信息采集的方式,那么具体埋点信息采集的过程是怎么样的呢? 以H5网页某页面曝光埋点为例子,先讲一下网页页面展现的流程。框图如下: 具体细节如下:- 用户点击或输入某页面链接。
- APP客户端或浏览器向服务器发送HTTP请求。该请求内容一般包括请求的URL、请求方法、请求报头(一些必要的内容例如用户cookie等)、请求内容。
- 服务器接受HTTP请求,进行解析,并将内容返回给客户端或浏览器。返回内容一般包括返回状态(是否成功,例如著名的404就是在这里进行添加的),返回具体内容(请求的网页中包含的内容如图片等),返回报头(cookie等)
- 客户端或浏览器对返回内容进行解析,并把内容展示给用户。
加工和存储过程:
加工:经过加工存储这一步后,埋点数据基本可以从收集到的原材料状态变为可以为业务服务的有用数据了。上文提到,埋点数据都是一条一条,是用户触发埋点对应事件时上传的。 这些数据可能包括:用户会话id,用户id,当前页面编码,当前事件编码,触发时间,用户设备id,ip信息等,这些零散的信息需要通过加工处理进行聚合,变成更加通用常用的数据,便于后续调用。 例如一些通用的处理:针对APP首页曝光事件,选取当日首页曝光事件上传的数据条数,对用户id去重并加和即可以得到当日的UV。 存储:对于离线存储来说,埋点原始数据会以表(类似excel表)的形式存储于数据仓库的原始数据层,经过上述处理过的数据,会以另外一张表的形式存储于数据仓库的汇总层。如果数据仓库建设比较完善,通用的业务数据,直接从汇总层甚至更上层的应用层中取即可,而不必再去取原始层的埋点数据,省去了每次计算的工作量。应用过程:
任何需要用户行为数据的场景,可能都能用到埋点信息。埋点数据可以用来计算页面的UV/PV、控件的点击PV/UV等基础数据,按照不同维度进一步加工可得APP的日活月活;也可以计算页面停留时间,流失率等;更为复杂一些,通过当前事件和上一事件间的关系(需要在埋点中定义),可以绘制出用户的行为路径图,计算漏斗转化率等等。 这些业务上的应用实现:- 大一点的公司可能有自己的可视化工具,直连到数据仓库应用层中已经加工聚合过的埋点数据并进行可视化展示;
- 有些公司可能需要BI人员使用tableau等可视化工具,写SQL跑数据去处理数据仓库中较为原始的埋点数据,然后得以展现。
埋点管理过程:
最原始的埋点管理方式是用文档或表格记录下来埋点的编码命名、业务含义及其他必备信息,在埋点业务方内部共享即可。 但当公司的产品越做越多越做越大,相应的埋点就会越多(多达成千甚至上万)。对互联网规模企业,管理大量埋点往往也需要配套的工具:埋点信息管理系统。 埋点信息管理系统主要有的功能:- 提供埋点信息的录入功能。
- 记录各埋点是否存在,进行埋点层级管理。因为埋点较多,往往需要按照APP-页面-控件的层级进行分类、记录和查询。
- 展示并可查询某埋点的详细信息。例如物理编码信息和对应的业务含义信息,埋点的上线版本和时间,埋点管理员责任人,埋点信息储存的数仓表名称以及必要的埋点数据结构体(对个性化埋点可能出现的上传数据中新加字段的解释)。
- 辅助功能。如埋点数据量的监控,埋点信息预览,埋点数据通用分析及可视化展示等。
相关阅读:
想看埋点数据?产品经理有必要了解的埋点知识(1) 爱盈利-运营小咖秀 始终坚持研究分享移动互联网App运营推广经验、策略、全案、渠道等纯干货知识内容;是广大App运营从业者的知识启蒙、成长指导、进阶学习的集聚平台;【转载说明】  若上述素材出现侵权,请及时联系我们删除及进行处理:8088013@qq.com