【问题标题】:Firebase linear nodesFirebase 线性节点
【发布时间】:2017-09-03 05:20:30
【问题描述】:

我开始使用 Firebase 来存储数据信息。我了解到,最好把它放在一个狭窄的结构中而不是深层次的结构中。

我有以下结构:

MainDetail
  -Kd92jd93kaod93  <----ID
  -Kfirkd9rmtiepr
  -.....More than 1 million more

问题我的问题是,我有超过一百万个数据,超过一百万个 ID 将按上述每个主要节点下的线性序列存储。

这是在一个节点中拥有所有 id 的好方法吗?还是我应该进一步分解它,例如按日期?喜欢...

01_MainDetail
  -20170902
      -Kd92jd93kaod93 
      -Kfirkd9rmtiepr
      -....
  -20170901
      -Kd92jd93rt4e3 
      -Kfer5hrmtiepr
      -....      
  -....

这与我在网上阅读的内容相矛盾,因为现在我并没有缩小范围并有多个孩子。

当我有大量数据时,正确的方法是什么?

【问题讨论】:

    标签: firebase firebase-realtime-database nosql


    【解决方案1】:

    一个节点下的子节点数量没有实际限制。这完全取决于您希望如何访问这些子节点。具体来说:

    1. 查询长数据列表总是比查询短数据列表花费更多时间。
    2. 读取节点列表总是比从更长的列表中查询相同的节点更快。

    查看这些答案了解更多信息:

    通常最好对数据进行分区以匹配您想要访问它的方式。您展示的第二个数据结构就是一个示例,因为它允许您访问特定日期的节点,而无需查询它们。

    【讨论】:

      【解决方案2】:

      好的方法是像你所说的那样在父节点下以日期块的形式组织数据。

      这种方法不会给您带来麻烦。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-02-04
        • 1970-01-01
        • 2017-04-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多