数据人看Feed流-架构实践(12)

基于推荐的传递

图8是基于推荐的模型 , 可以看出它是在推拉结合的模式上融合了推荐系统 。

  1. 引入画像系统 , 保存用户画像、消息画像(简单情况下消息画像可以放在消息元数据中) 。 画像用于推荐系统算法的输入 。

  2. 引入了临时收信箱 , 在信息过载的场景中 , 非大V的消息也是总量很大 , 其中不免充斥着垃圾、冗余消息 , 所以直接进入用户收信箱不太合适 。

  3. 收信箱和发信箱都需要有良好的搜索能力 , 这是推荐系统高效运行的关键 。 Outbox有缓存层 , 索引可以做到缓存里面;Inbox一般情况下二级索引可以满足大部分需求 , 但如果用户希望有全文索引或者任意维度的检索能力 , 还需要引入搜索系统如Solr/ES

图8 基于推荐的Feed流架构

用户画像使用HBase存储

  1. 画像一般是稀疏表 , 画像总维度可能在200+甚至更多 , 但单个用户的维度可能在几十 , 并且维度可能随业务不断变化 。 那么HBase的Schema free和稀疏表的能力非常适合这个场景 , 易用且节省大量存储空间 。

    推荐阅读