类似于用户年度统计这样的功能如何实现

最近看到好多应用在打开后,将用户一年的活动轨迹显示给用户看,并引导分享到朋友圈。
类似于下面这种:

clipboard.png

图片描述图片描述

于是比较好奇是怎么实现的,自己觉得有3种可能性:

  • 产品一开始就有这个功能需求,所以一开始就会有张表来记录这些数据,但缺点是后期表结构更新比较麻烦

  • 在年底的时候,去各个表获取需要的信息,然后给每个用户生成好缓存,用户登录后直接去拿缓存,缺点是用户量大的时候,生成缓存比较慢

  • 该功能上线的时候,实时去各个表获取信息,获取一次后缓存,缺点是第一次获取时需要查询多个表,用户可能感觉到慢

不知道大家有没有什么更好的想法~~还望分享~

阅读 3.4k
2 个回答

半夜三更做出来就好 反正你会在新的一年1月1日就给大家看么 不需要吧 数据多可以多跑一会儿 可以拿到离线的集群里跑 不行的话就过几天在放出来
干嘛非要做实时呢
很少有系统说年统计这么大的数据量还做实时

这种不用那么精确的,大概的范围就行了。所以用缓存没啥影响,提前计算好。不用每次都实时计算的。你听一首歌,听了200次,还是300次。谁会去较那个真

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进