实时--1.0 需求分析| 整体架构
1. 需求分析
离线T+1 需求
一般是根据前一日的数据生成报表等数据,虽然统计指标、报表繁多,但是对时效性不敏感。
实时T+0 需求
主要侧重于对当日数据的实时监控,通常业务逻辑相对离线需求简单一下,统计指标也少一些,但是更注重数据的时效性,以及用户的交互性。
即席需求
临时需求,可用即席查询如Impala、Presto、 Kylin、 Druid等
关于日志埋点 发送的两种策略:
① 周期性发送,把一段时间的日志,积攒起来,周期性的发送到后台;对日志后台收集系统压力小;非实时
② 直接发送,时效性非常好,后台收集压力大;
1.1 实时需求
1、当日用户首次登录(日活)分时趋势图,昨日对比
从项目的日志中获取用户的启动日志,如果是当日第一次启动,纳入统计。将统计结果保存到ES中,利用Kibana进行分析展示
日志服务器 --- Kafka --- Spark --- Hbase
2、当日新增付费用户(首单)分析(ods+dwd)
按省份|用户性别|用户年龄段,统计当日新增付费用户首单平均消费及人数占比;无论是省份名称、用户性别、用户年龄,订单表中都没有这些字段,需要订单(事实表)和维度表(省份、用户)进行关联,形
成宽表后将数据写入到ES,通过Kibana进行分析以及图形展示。
3、订单明细实付金额分摊以及交易额统计(dws)
4、ADS聚合及可视化(ads)
以热门品牌统计为案例
2. 统计架构图
2.1 实时架构
2.2 离线架构