Py学习  »  NoSql

如何在NoSQL中建模经典用户->多个关系应用数据

Dominic • 5 年前 • 739 次点击  

我注意到google nosql、firestore和dynamodb等巨头提供的nosql解决方案没有join查询(这里我不包括mongodb和rethinkdb)。

不过,我喜欢将这些应用于简单和成本效益方面的想法。

我喜欢JSON风格的文档数据库,不想回到varchar等黑暗的时代。因此,我想知道为Web构建99%的数据库有多可行。

以这个场景为例:

用户可以是许多项目的成员,可以在项目列表页上查看其项目,并向下钻取到一个项目。 详情页。

从关系上来说,这很简单:

user: { ..., projects: [projectId1, ...] }
project: { ..., users: [userId1, ...] }

然后您可以进行一个连接,在项目列表等上显示一些基本的细节。

但是对于非关系NoSQL呢?我们如何将其非规范化?

您是否只需要:

user: { no project IDs },
project: { users: [userId1, ...] }

然后对于项目列表页或项目详细信息页,只需在 每一个 投影并返回用户所属的用户?这就是NoSQL在效率方面的繁荣所在吗?我不在这里处理大型数据集,我希望项目是10万个而不是大型文档。谢谢。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/30506
 
739 次点击  
文章 [ 1 ]  |  最新文章 5 年前