MongoDB在文档中存储计数与执行计数查询

MongoDB在文档中存储计数与执行计数查询,mongodb,Mongodb,在决定将评论存储在与其对应的帖子不同的集合中后,如何存储和返回每篇帖子的评论数 选项1:在每次插入新注释文档时更新计数器(尽管MongoDB不支持事务) 选项2:统计每篇文章检索时的评论数。 选项3: 这种情况是呈现一组帖子,每个帖子都应该显示评论的数量 您可以使用聚合(模拟加入RDBMS) 但实际上我看不出在NoSQL DB中使用RDB模式有什么意义。您必须尽量避免NoSQL中的连接,因为它会影响性能,并且违背NoSQL的整个逻辑 另外,NoSQL中的数据复制是可接受的(-;您可以使用聚合(用

在决定将评论存储在与其对应的帖子不同的集合中后,如何存储和返回每篇帖子的评论数

选项1:在每次插入新注释文档时更新计数器(尽管MongoDB不支持事务)
选项2:统计每篇文章检索时的评论数。
选项3:

这种情况是呈现一组帖子,每个帖子都应该显示评论的数量

您可以使用聚合(模拟加入RDBMS)

但实际上我看不出在NoSQL DB中使用RDB模式有什么意义。您必须尽量避免NoSQL中的连接,因为它会影响性能,并且违背NoSQL的整个逻辑

另外,NoSQL中的数据复制是可接受的(-;

您可以使用聚合(用于连接RDBMS的模拟)

但实际上,我不认为在NoSQL DB中使用RDB模式有什么意义。您必须尽量避免在NoSQL中使用联接,因为它会影响性能并违背NoSQL的整体逻辑


另外,NoSQL中的数据复制是可接受的(-;

存储和增加注释数量的计数似乎是一个可行的选择,但是由于缺少事务,我不能保证增加计数器实际上会导致插入注释。执行查找/计数对于使用简单计数器来说似乎开销太大。因此,如果您需要转换,则进退两难那么为什么不使用RDBMS(如MySQL/MariaDB、PostgreSQL等)?因为NodeJS/MongoDB总体上似乎是我们的live app的一个不错的选择。NodeJS也可以使用MySQL(-;总之,你不能拥有一切(性能、一致性等)。完美的DB并不存在,所以你必须接受一些权衡(选择最能满足您需求的数据库,或组合一些数据库)是的,有一些事情要考虑,我会仔细考虑。谢谢!存储和增加计数的数量似乎是一个可行的选择,但是由于缺少事务,我不能保证递增计数器实际上会导致注释插入。e简单计数器。因此进退两难……如果您需要事务,那么为什么不使用RDBMS(如MySQL/MariaDB、PostgreSQL等)?因为NodeJS/MongoDB总体上似乎是我们live app的一个不错的选择。NodeJS也可以使用MySQL(-;总之,您不可能拥有一切(性能、一致性等)完美的DB不存在,所以你必须接受一些折衷(选择最符合你需要的DB或者组合几分贝)。是的,有一些事情要考虑,我会仔细考虑。谢谢。相关的,如果使用MangOSE,那也是方法,如果使用猫鼬,那就是走的路。