假设我有用户可以互相关注。他们也可以发布项目,让我们称之为推文。
现在,就像在Twitter上一样,当用户发布推文时,它应该显示在该用户的所有关注者的时间轴(已订购)上。
在noSQL设置中,如何构建节点,以便快速有效地加载每个用户的时间轴?
为您提供效率不高的示例:
xsl
要检索user1的时间轴,可以检索1)跟随者id的完整列表,2)过滤掉每个followerId的所有推文,3)对其进行排序。显然,当网络增长时,这需要很长时间。
有什么更好的方法来解决这个问题?
可选问题:是否有一些已知的解决方案或数据库可以解决这些问题?