用于新闻Feed的Firebase扇出结构

时间:2017-07-14 10:12:28

标签: firebase firebase-realtime-database nosql

我的数据库包含postsusers和其他节点,如经典社交媒体应用。

我正在继续为我的应用程序实现最佳实践。现在我想重写我的新闻报道(我关注的用户帖子(如Instagram中的主页标签))。

我已经阅读了有关fan-out策略的一些信息,现在我对如何正确完成它感到困惑。

所以,我有两个机会:

  1. here类似:每次用户添加新的post时,带有完整信息的post都会被users-timeline(users news strip)/UID/postId: FULL INFO复制到所有followers这个user。每个编辑都会编辑每次提及此post

  2. 每次用户添加新post时,此postID都会被user-timeline(users news strip)/UID/postId: true复制到此followers的所有user。每个编辑都只会编辑源帖子。

  3. 使用Firebase哪种逻辑更好?

1 个答案:

答案 0 :(得分:3)

我建议您使用David的East解决方案。正如我在帖子中看到的,他使用Firebase非规范化和数据展平,这是Firebase中最常见的做法。

我还建议您阅读NoSQL Data Modeling TechniquesStructuring your Firebase Data correctly for a Complex App以便更好地理解。

如果你有SQL背景,我建议你也看一下David的东部教程The Firebase Database For SQL Developers