【问题标题】:Best way to convert this firebase real time database structure to firestore data structure?将此firebase实时数据库结构转换为firestore数据结构的最佳方法?
【发布时间】:2019-09-19 10:32:52
【问题描述】:

我想将thisfirebase 实时数据库结构转换为firestore 数据结构,请帮忙。

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

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

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

【问题讨论】:

  • 通常您会根据要执行的查询来构建 Firestore 数据库。这些查询是什么?
  • @AlexMamo 像 ** 这样的查询会显示一个 pin 下的所有帖子。 , 用户个人资料中的个人详细信息等**

标签: firebase google-cloud-firestore


【解决方案1】:

Cloud Firestore 数据模型

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

每个文档都包含一组键值对。 Cloud Firestore 针对存储大量小文档进行了优化。

所有文档都必须存储在集合中。文档可以包含子集合和嵌套对象,它们都可以包含字符串等原始字段或列表等复杂对象。

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

访问链接以获取有关 Cloud Firestore Data model 的更多信息


您的数据库结构

关于您的案例场景,您可以拥有其他集合中的集合,这些称为子集合,作为聊天的示例应用显示在这里:

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


将数据从 Firebase 实时数据库移动到 Cloud Firestore

为了使这个答案保持简短,如果您计划在 Moving data from Firebase Realtime Database to Cloud Firestore 上查看此链接以咨询最佳做法和建议。

【讨论】:

  • 我的数据结构设计在实时数据方面是否正确?
  • 据我了解,您的解释。您需要创建一个集合 ~> 文档 ~> 子集合。请记住,子集合始终与文档相关联。例如: Posts (Collection) ~> postID (Document) ~> 添加任何您需要的特定帖子 (Collection) 的集合 请注意,您不能像这样拥有 (Collection-Collection-Document): Posts (Collection) ~> 添加任何该特定帖子所需的集合(集合)〜> postID(文档)
  • 明白了……我会试试的
猜你喜欢
  • 1970-01-01
  • 2019-11-01
  • 2016-09-21
  • 1970-01-01
  • 1970-01-01
  • 2023-04-08
  • 2021-08-28
  • 2018-07-17
  • 1970-01-01
相关资源
最近更新 更多