Firebase 用户公司,Firestore中的模型

Firebase 用户公司,Firestore中的模型,firebase,google-cloud-firestore,Firebase,Google Cloud Firestore,我只是想知道如何在Firestore中设计这个。 假设您拥有用户集合。此集合包含每个用户的详细信息,如生日、电子邮件、姓名。。等等 现在让我们假设我们有一个集合(公司),应该有所有在那里工作的用户 你会怎么做? 您是否有一个包含空文档的公司集合,其中每个文档都有用户id。?还是复制公司内部文档下的所有用户详细信息 我只是不知道如何为这些典型情况对Firestore进行建模,文档中也没有很多示例向您展示如何对用例进行建模 谢谢您应该从要在此数据模型上执行的查询中查看它。这就是问题所在。如果我使用当

我只是想知道如何在Firestore中设计这个。 假设您拥有用户集合。此集合包含每个用户的详细信息,如生日、电子邮件、姓名。。等等

现在让我们假设我们有一个集合(公司),应该有所有在那里工作的用户

你会怎么做? 您是否有一个包含空文档的公司集合,其中每个文档都有用户id。?还是复制公司内部文档下的所有用户详细信息

我只是不知道如何为这些典型情况对Firestore进行建模,文档中也没有很多示例向您展示如何对用例进行建模


谢谢

您应该从要在此数据模型上执行的查询中查看它。这就是问题所在。如果我使用当前的查询进行设置,然后决定添加一个功能,则可能会使整个模型无法使用。例如,如果我在“公司”集合下添加文档,并且该文档包含“姓氏”属性,因为我要显示该属性。然后我发布了这个应用程序,后来我决定显示电子邮件,所以现在我要做一个迁移,用电子邮件地址填充所有现有文档。因此,我最好首先添加userId。这就是我在如何建模方面遇到的问题。实际上,使用NoSQL数据建模,您应该毫不犹豫地复制数据,也就是说,以一种使查询更容易、更重要、更快的方式进行非规范化。看看这篇文章:谢谢。我会检查链接。复制数据的唯一问题是,如果您决定添加功能来更改数据(比如用户名),那么在所有集合和文档中更改数据将带来巨大的完整性风险