社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  NoSql

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

Dominic • 5 年前 • 746 次点击  

我注意到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
 
746 次点击  
文章 [ 1 ]  |  最新文章 5 年前