mongoDB朋友关系

时间:2017-08-29 13:25:25

标签: node.js mongodb nosql

我正在建立一个网络应用程序,其功能类似于社交地图网站,用户可以在其中查看他们的朋友在哪里登记。用户应该只看到他们的直接朋友和加入同一群组的人。我试图在像mongoDB这样的noSQL数据库中做这件事。

在SQL数据库中,我将有一个表3表。

1)用户,他们的支票

2)用户对(朋友)

3)用户组与组

要返回正确的数据,这将是一个相对简单的连接查询问题。

在mongoDB中,我想我会有2个收藏。

1)用户。在每个用户中将是签到的子文档,朋友的子文档和加入的组的子文档。

2)小组。每个文档都包含该组中用户的子文档。

我从两个集合中编译用户列表,然后从第一个集合中查询他们的签到。

这看起来非常麻烦,我没有花太多时间在没有SQL上,所以我想学习如何使用它,但我认为这是一个糟糕的应用程序。这项工作会好吗?或者我应该查看不同类型的数据库。

1 个答案:

答案 0 :(得分:1)

我会将check ins(places?)添加为自己的集合。然后,您可以使用聚合管道和$lookup

进行连接