如何保证埋点数据的准确性
一、数据上报的方式
数据上报的方式主要有以下几种:
前端触发上报:如业务方想了解用户的支付意愿,点击“去支付”按钮就触发
前端获取后端结果后上报:这种方式除了要获取用户操作的结果,如支付,需要拿到后端结果判断用户是否支付成功以及支付失败的原因;
后端触发就上报:后端处理后直接上报,优点是不会漏报,但是获取不到前端用户的设备终端及软硬件环境属性
后端获取前端属性且触发后上报:这种情况是为了解决后端埋点的软硬件环境属性问题。如用户点击去支付,后端获取前端用户的软硬件环境属性,后端发生支付成功后,带上前端用户的软硬件环境属性一并上报,这种方式优势是准确定较高,缺点是前后端接口均需变更,成本较高。
以京东APP排行榜页面曝光为例,页面展现的流程如下:
数据的传输过程:
数据传输过程中,可能会存在丢包,即数据发送失败没有传输过去的情况,数据发送一般通过POST格式,发送JSON串信息,具体方式分两种:一种是单条发送;一种是在本地打包成zip包,积累一定量后发送。两种方式中,zip的丢包情况更严重些,所以存在一定的数据误差(一般为不超过2%)
数据的加工和存储
在数据存储在数据仓库之前,一般会经过加工的过程,一般是由ETL工程师完成,即抽取、转换和加载,如用户会话id,用户id,当前页面编码,当前事件编码,触发时间,用户设备id,ip信息等,这些零散的信息需要通过加工处理进行聚合。
二、常见的的埋点问题及产生原因
1、数据源异常:如功能变动后未提出埋点需求、埋点需求不明确不完整、沟通过程中需求方和执行方理解有偏差,这些问题需要对埋点需求过程进行规范化的统一管理,做到版本迭代与数据埋点进程一致,埋点规范,口径统一。
2、数据上报异常,各业务需求的上报口径,采集方式等没有统一,导致数据没有按照需求的格式上报,或者因网络质量不佳和服务器压力过大会导致数据上报延迟等。
三、如何提升埋点质量
1.统一埋点规范和口径
统一的埋点规范是保证数据质量的前提,建议建立统一的数据埋点规范文档,及时更新,打通跨部门,业务线的数据通道,避免数据孤岛的形成,在团队中保持埋点理解的一致性。
2.监控数据质量
建立数据质量评价体系,实现信息采集分析与监控,建立持续改进机制,完善元数据管理。