将这种Firebase实时数据库结构转换为Firestore数据结构的最佳方法?

时间:2019-09-19 10:32:52

标签: firebase google-cloud-firestore

我想将this firebase实时数据库结构转换为firestore数据结构,请提供一些帮助。

我想要这样的结构,如Posts(collection)/ pin(collection)/ pid(document)/ then post description,但是我知道一个集合不能包含另一个集合,所以我应该怎么做?

All_Posts节点仅包含pid和pin才能共享该帖子,然后使用pin和pid获取帖子详细信息。

我结构中的另一件事帖子-> 734 ...(pin)-> pid->然后发布详细信息,因为我想检索所有pid和pin下的详细信息。所以我应该这样做这样或像帖子-> pids(包含密码)->然后获取详细信息。我应该做哪一个?

1 个答案:

答案 0 :(得分:1)

Cloud Firestore数据模型

  

Cloud Firestore是一个NoSQL,面向文档的数据库。与SQL数据库不同,没有表或行。取而代之的是,您将数据存储在文档中,这些文档被组织成集合。

     
    

每个文档包含一组键值对。 Cloud Firestore经过优化,可以存储大量的小文档。

         

所有文档必须存储在集合中。文档可以包含子集合和嵌套对象,两者都可以包括诸如字符串之类的原始字段或诸如列表之类的复杂对象。

         

集合和文档在Cloud Firestore中隐式创建。只需将数据分配给集合中的文档即可。如果集合或文档不存在,则Cloud Firestore会创建它。

  

访问链接以获取有关 Cloud Firestore Data model

的更多信息

您的数据库结构

  

关于您的案例情况,您可以在其他集合中包含集合,这些集合称为子集合,作为聊天的示例应用显示在这里:

enter image description here

  

您可以使用Collection Group Queries访问具有相同集合ID的这些子集合。


将数据从Firebase实时数据库移至Cloud Firestore

为了使答案简短,如果您打算使用 Moving data from Firebase Realtime Database to Cloud Firestore ,请查看此链接,以咨询最佳做法和建议。