阐明:
1、tracking 的数据起源,包含 SDK 数据、点击上报数据,SDK 数据又分为 SDK 客户端上报和 RestAPI 上报。
2、RestAPI 和 SDK 客户端上报的数据,都发到阿里云 e302 服务器。点击上报数据,优先会往阿里云的 e302 短链服务器发送,e302 服务器查看接管到的点击的短链在缓存中不存在,会跳转到 s302 回源服务器,不论在 e302 还是 s302,找到短链的点击都会跳转到对应的落地页。
3、RestAPI 数据间接上报到 logserver 服务器。
4、SDK 客户端和点击上报的数据在往 logserver 服务器发送过程会被 NWS 缓存服务器拦挡,先缓存到本地,当 nws 关上开关时,数据 nws 往 logserver 发送;当 nws 敞开开关时,不发送。(nsw 能够缓存 100G 的数据)
5、logserver 接管到数据后,进行数据散发,数据会依据业务需要,发往 kafka 的不同 topic。
6、实时计算的 jstorm 工作从 kafka 的 topic 中取出数据,进行归因解决,解决实现后,对于须要点击透传的点击事件以及归因后须要回调的激活 / 注册 / 付费事件,发送到 kafka 的回调 topic。
7、实时计算解决实现后,统计数据会入库 hbase,用于归因排重的信息会入库到 redis。
8、stat_exporter 服务会定时从 hbase 中导出统计数据并入库到 tracking 的 mysql 数据库。
9、logserver 日志会定时上传到 hdfs 集群。
10、zakaban 调度平台上配置的离线工作,会对 logserver 日志进行解决,别离计算设施留存、设施 ltv、帐号留存、帐号 ltv。
11、离线计算实现后入库到 hive。
12、trackv2task 服务定期从 hive 导出前一天的离线计算结果入库到 tracking 的 mysql 数据库。
13、callback 回调服务会实时从 kafka 的回调 topic 中取到须要回调或点击透传的音讯,进行激活 / 注册 / 付费回调或点击透传。
14、tracking 的 web 后盾从 mysql 及 hbase 中查问数据并展现,实时模块从 hbase 查。
15、tracking 通过 OpenAPI 向内部(次要是 adt)提供 api 接口查问数据。
16、adt 的后端服务定时从 tracking 的数据库同步数据。