实时指标-1日留存率

  1. 2个DWD层
    1. 登录→kafka
    2. 注册→kafka
  2. 1个DWS
    1. 弄2条流,从kafka读取数据
    2. 将昨日注册数据存到状态中,TTL为2天,存到map状态中,key为注册日期,value为set,存储注册的uid
    3. 将登录流和注册流进行连接
    4. 来一条登录数据,去注册状态中get昨天的日期,然后判断登录的uid在不在set中,如果在,说明昨天注册的,那么留存数加1
    5. get昨天的日期,取set的size,就是昨日注册数
    6. 开一个10分钟的窗口,每10分钟将留存数和昨日注册数存到Doris的当日分区中,然后在ADS层计算0点至今的留存率=留存数/昨日注册数
    7. 大屏每10分钟刷新1次

你可能感兴趣的:(Flink,大数据,flink)