NoSQL如何在集合中查找id

问题描述 投票:0回答:1

NoSQL菜鸟在这里。我正在使用Firestore NoSQL构建应用程序。我正在遍历每个项目都有所有者ID(创建者用户ID)的项目。我想在列表页面上显示所有者的名字。在传统的SQL中,我具有外键,因此我可以参考引用,例如Item.Owner.FirstName

NoSQL的最佳实践是什么?保存项目时,是否应该将所有者名称保存为字段?还是在我遍历项目时查找每个所有者ID以获取用户对象?

第二个选项听起来很昂贵,所以我假设第一种方法是要走的路。除非有更好,更被接受的方法?

google-cloud-firestore nosql
1个回答
1
投票

如果您在文档之间复制数据(称为“非规范化”),那么您将需要尽一切努力使它们彼此保持最新。因此,编写一个文档实际上可能会变成编写多个文档。

    如果您不重复地标准化数据,则每个查询将需要更多查询才能从其他文档中获取相关数据。对于读取负载较重的应用程序,这可能会导致性能下降和成本增加。
  • 由于我们不知道您的应用程序的性能要求和使用行为,因此无法提供具体建议。您可能必须根据复杂性,性能和总体成本来仔细考虑要解决的问题。
  • © www.soinside.com 2019 - 2024. All rights reserved.