哪一个更好,请在MongoDB中使用单独的集合或嵌入式文档

时间:2018-12-05 00:07:41

标签: java database mongodb spring-boot nosql

我有一个产品集,一个用户集。
用户可以喜欢或不喜欢产品,因此我必须以某种方式将喜欢/不喜欢的产品存储在数据库中。
我有两个选择:
-使用另外两个集合,一个用于收藏喜欢的产品,另一个用于收藏不喜欢的产品,并参考该产品和用户。
-每个用户文档内有两个嵌入式文档,一个用于喜欢的产品,另一个用于不喜欢的产品。

我应该和哪一个一起去?

1 个答案:

答案 0 :(得分:0)

应该通过应用程序如何频繁访问和读取数据来回答问题。应用程序似乎更有可能检查用户是否喜欢某个产品,而不是显示喜欢的产品的完整产品数据。因此,您可以考虑做类似User.liked_product_ids = [1, 2, 3]的事情来适合这种情况。

相关问题