当前位置: 首页 > article >正文

数据埋点2

文章目录

  • 1 数据埋点流程
  • 2 六个步骤实现数据埋点设计
    • 2.1 确认事件与变量
    • 2.2 明确事件的触发时机
    • 2.3 明确事件的上报机制
    • 2.4 设计数据表结构
    • 2.5 统一字段命名规范
    • 2.6 明确优先级
  • 3 以电商购物成交转化为例实现数据埋点设计

作为数据分析师的你,是否和我一样经常会被业务方拿着两个不同数据平台的报表数据进行灵魂拷问。下面的场景你应该在熟悉不过了。

一场拉新促活的活动之后,运营拿着两个不同团队维护的报表数据来问我,为什么两份报表统计出来的日活跃用户(DAU)数量不一致?
我解释道,“你确定两份报表的统计口径是一致的吗,最小的统计维度是一致的吗?”
运营说,“都是一样的啊,统计的都是DAU。”
我说,“DAU以account_id为最小维度进行统计或者以device_id或者以open_id为最小维度进行统计的结果都会有一定的差距。
我们这边是以account_id为最小单位统计的DAU。而且,即使统计口径一致,埋点和上报方法也有区别。”

后来,我向另外一个数据平台的相关人员咨询之后,发现他们统计DAU的最小单位是open_id,不同的统计口径会造成一定的数据差异。而统计口径的差异不止出现在报表统计阶段,在数据埋点阶段也会出现口径不一致的问题,触发事件的条件、数据埋点的方式、数据上报的方式不同都会造成数据不一致的情况出现。

为了避免这些问题,小编把自己踩过的坑总结出来并形成一套方法论,希望初学的你或即将转行的你能够少采坑,高效地完成数据埋点工作!

1 数据埋点流程

数据埋点是数据治理流程中重要的一环,是一项多部门协作共同完成的工作,数据分析师在这个流程当中承担着重要的角色。我们将数据埋点流程梳理为下图,数据分析师从数据需求评估阶段直至数据应用阶段都会参与流程,可谓是埋点工作的中流砥柱。
在这里插入图片描述
在数据埋点这项工作中,数据分析师需要立足于当前的数据需求,提炼出数据指标方案,并且构思要看这些指标需要有哪些数据,这些数据也就是需要埋的点。当然,这只是一些初步的埋点方案,想要让埋点指标变得“准”而“全”当然还需要另外一些方法实现,比如用户路径之类的。有了初步的埋点规划之后,分析师还需要确定时间触发机制和上报机制,因为不同的机制意味着不同的统计口径。对于新业务来说,为了避免统计口径不一致而出现乌龙事件,最好能和之前的口径一致,以方便横向比较。除此之外呢,统一各个项目之间的字段命名和表结构也是一项必不可少的工作,这个步骤也是数据治理流程当中必不可少环节。完成这些步骤之后,一份初步的埋点就差不多完成了。在和需求方以及程序的反复讨论中修改完善埋点文档,将埋点文档交付程序进行埋点,在此期间分析师需要通过测试环境的数据验证当前埋点是否存在一定的问题,若有问题还可以在该阶段进行修改,若无问题可上线埋点事件。

2 六个步骤实现数据埋点设计

数据埋点设计师数据分析师是埋点的重中之重,埋点设计得好能够极大地方便后续的数据应用。对于数据埋点设计,我们也总结了六个关键步骤。

2.1 确认事件与变量

这里的事件指产品中的功能或者用户的操作,而变量是指描述事件的属性或者关键指标。确认事件与变量可以通过AARRR模型或者UJM模型进行逐步拆解,理清用户生命周期和行为路径,抽象出每一个步骤的关键指标。

2.2 明确事件的触发时机

不同的触发时机代表不同的计算口径,因此触发时机是影响数据准确的重要因素。以用户付款为例,是以用户点击付款界面作为触发条件,还是以付款成功作为触发条件进行埋点呢?二者口径不同,数据肯定会有一定差异,因此明确事件触发条件非常重要。

而在用户付款这个例子中,我们建议使用两个字段记录用户付款行为,一个字段记录点击付款界面这个行为,另一个字段记录是否付款成功。

2.3 明确事件的上报机制

不同的上报机制也是数据准确性的重要影响因素之一,客户端上报数据可能会由于网络原因出现丢包的情况,前面章节已经详细介绍过,这里就不在赘述上报机制之间的异同。而作为数据分析师,在完成埋点工作的时候也需要确定数据是实时上报还是异步上报,以确定埋点是否合理,并及时调整数据埋点方案。

2.4 设计数据表结构

统一的数据表结构,方便团队内部进行数据的管理和复用,建议团队内部形成一套统一的数据结构规范。例如,将表分为不同的层级,第一层记录用户的基础信息,包括id,地区,昵称等;第二层记录玩家行为信息。

2.5 统一字段命名规范

有了统一的数据表结构档案还是不够的,统一数据命名规范数据埋点工作的重要一环。确保同一变量在所有的数据表当中都用统一的字段,比如消费金额这个字段,我们希望所有的表只要出现消费金额都用Amount字段,不要出现money,pay等其他字段。
建立公司内部或者团队内部的命名规范是非常必要的,可以采用「动词+名词」或者「名词+动词」的规则来命名,比如「加入购物车」事件,就可以命名为:addToCart。

2.6 明确优先级

数据埋点都是为数据应用做铺排,埋点之后分析师可能面临着搭建指标体系和数据报表体系的工作,可以根据报表的优先级、埋点的技术实现成本以及资源有限性为数据埋点确定优先级。

3 以电商购物成交转化为例实现数据埋点设计

(1)通过UJM模型拆分用户购买商品的路径:将用户购买路径拆解为注册-登录-商品曝光-商品点击-浏览页面详情-加入购物车-生成订单-订单支付步骤,根据产品或策划提的数据需求,确定每一个步骤学要看哪些字段才能实现数据需求。
(2)确认触发机制:明确是在点击按钮时记录行为还是在用户完成该步骤时记录行为。
(3)确认上报机制:明确数据上报机制,是实时上报还是异步上报,不同的上报机制采集到的字段可能不一样,或者说需要将字段拆分到不同表进行记录。
(4)统一字段名:业务内同一变量在所有的数据表当中都用统一的字段,例如,用户编号用account_id,用户所属国家用region,用户所属地区用ip_region等等。
(5)统一表层级结构:我们这里采用两层数据表结构,第一层存放用户基信息,第二层存放用户行为信息。这个根据团队内部的数据接入规范进行调整,只要是统一的结构,对于数据分析师的分析都是有利的。
(6)明确数据优先级:根据埋点需求的紧急程度,给每一个买埋点任务标上优先级。
在这里插入图片描述
根据上面的六个步骤,将每一个步骤需要记录的字段按照标准格式汇总到文档,即可完成初步的埋点设计。当然完成初版埋点设计之后,还需要与产品、策划、程序一遍一遍过文档内容,不断修改完善,直至三方会谈达成统一意见。
在这里插入图片描述
参考链接
https://mp.weixin.qq.com/s/8lHa-Z5KdBGqoEGS5I9glQ
http://www.woshipm.com/pd/3070837.html
https://mp.weixin.qq.com/s?__biz=MzI2MTAxOTk5OQ==&mid=2650945421&idx=1&sn=b16a4fbe3b535b91b21baa8a2855aa8b&chksm=f19657bdc6e1deab3568d0020033a58ffeea90806eff483d9e8d8d32f3115e9160db0a72f68b&scene=21#wechat_redirect
https://www.cnblogs.com/flzs/p/13815329.html


http://www.kler.cn/a/17286.html

相关文章:

  • 人脸识别技术:从算法到深度学习的全面解析
  • kafka消费数据太慢了,给优化下
  • C#程序开发,检测当前电脑已经安装的软件目录
  • 【蓝桥等考C++真题】蓝桥杯等级考试C++组第13级L13真题原题(含答案)-最大的数
  • React Native 全新架构来了
  • 【JavaEE进阶】导读
  • 华为OD机试 - 识图谱新词挖掘(Python)
  • PBDB Data Service:Output formats and Vocabularies(输出格式与术语表)
  • 腾讯高工手写13W字“Netty速成手册”,3天走向实战
  • 《可穿戴监测中的数据质量评估》阅读笔记
  • TypeScript进阶
  • 【数字IC前端笔试真题精刷(2022年)】大疆——数字芯片开发工程师A卷
  • Python | 人脸识别系统 — 用户操作
  • 单链表——单链表的定义及基本操作(初始化、头插法尾插法建表、查找、插入、删除、判空等)
  • 当ChatGPT续写《红楼梦》,能替代原著吗?
  • [计算机图形学]动画与模拟:关键帧动画、质点弹簧系统、运动学与绑定(前瞻预习/复习回顾)
  • 为什么用Selenium做自动化测试
  • ebpf-linux 安全“双刃剑”
  • 不合格机器人工程讲师如何坦然面对失败
  • Java算法比赛常用方法
  • Java入门超详细(内含Java基础 Java高级)
  • 100种思维模型之万物系统思维模型-57
  • Packet Tracer - 配置扩展 ACL - 场景 1
  • C语言通过控制台命令行传入参数
  • 安卓联发科MT6737手机开发核心板 开发模块
  • 【Java笔试强训 15】