使用$ in运算符和大量Ids查询

时间:2015-06-09 10:03:04

标签: mongodb mongodb-.net-driver

我有大量的文档ID来迭代(例如5k-10k)。 $ in运算符并不限制从mongodb 2.6开始的数字。早期版本的combinatorial limit为4 mio。

那就是说,在mongodb中做这样的事情是否有意义,或者它是一种具有性能损失的反模式,我应该在应用层中手动迭代?

1 个答案:

答案 0 :(得分:0)

这有点像反模式,但有时别无选择。

如果您可以更改架构并使该查询变得多余,那么您应该这样做。如果你做不到,那么自己动手将比让MongoDB做得慢得多。

但是,您需要考虑另一个限制。 MongoDB中的每个文档都限制为16MB,每个查询都作为文档发送,因此有足够的项目可以达到该限制并获得例外。