桔妹导读:流量数据作为整个数据体系构建的基石之一,为公司的用户增长、产品优化、智能运营及科学决策等方面,提供了可靠的业务分析及决策依据。业务层面对于流量数据也有较高的要求,比如全面性、准确性、及时性。经过几年时间的打磨,我们沉淀了一套覆盖全链路的检测体系,能够有效辅助链路同学看清数据现状、定位数据问题。本文分享了流量链路检测在滴滴多业务线场景下的实践。
1.
背景
Omega是公司内部提供移动端用户行为采集、加工、存储、呈现和应用的全流程数据服务平台。整个平台以前端数据采集为源头,通过实时或者离线ETL加工出具有业务需求的指标结果,为滴滴的用户增长、产品优化、智能运营及科学决策等提供可靠的流量数据支持。目前支持了公司内外部近1500+应用,覆盖公司大部分业务线。
业务层面对埋点提出了全面、准确、及时的高要求,而这也是整个数据体系构建的基石。经过过往几年的持续打磨,我们沉淀了一套覆盖全链路的检测体系,能够有效的辅助链路同学看清数据现状,定位数据问题。下面我将与大家分享技术侧的架构设计。
2.
数据链路
首先,先简单介绍一下整个数据链路的架构,一共包含如下六个核心模块。
采集SDK:用于收集、组装、发送埋点数据,通过相关缓存策略,降低丢包率、重复率。同时接收服务端策略下发,定向采集。
数据接收:用于接收来自端上的埋点数据及配置下发,高吞吐轻量级web服务。
实时ETL:下游实时、离线数据的同源出口,负责比较重的数据处理逻辑,如格式转换、地理信息填充、白名单过滤等。
离线数仓:kafka数据到hive的清洗过程,包含通用ODS及面向Session、设备等主题的数仓建设。
实时分流:面向实时数仓及算法策略场景的分流服务。
行为分析:kafka2olap子链路,服务上层行为分析能力,如埋点细分、漏斗、路径分析等分析产品。
整个链路相对较长