Mongodb 当使用可裁剪游标时,提示({$natural:1})是否多余?

Mongodb 当使用可裁剪游标时,提示({$natural:1})是否多余?,mongodb,capped-collections,Mongodb,Capped Collections,在我发现的许多在封顶集合上使用可定制游标的示例中,代码包括: hint( { $natural: 1 } ) (例如),包括官方文档(),以“确保我们不使用任何索引”,并以自然(即磁盘)顺序返回结果 但是,文档还建议这是可定制游标的默认行为: 可定制游标不使用索引并按自然顺序返回文档 所以使用提示是否是多余的 我试着查看带有和不带提示的explain()的输出,据我所知,没有区别。是的 有时,您可能希望以相反的自然顺序返回结果(插入的最后一个文档是要返回的第一个文档。您可以通过以下方式实现此目

在我发现的许多在封顶集合上使用可定制游标的示例中,代码包括:

hint( { $natural: 1 } )
(例如),包括官方文档(),以“确保我们不使用任何索引”,并以自然(即磁盘)顺序返回结果

但是,文档还建议这是可定制游标的默认行为:

可定制游标不使用索引并按自然顺序返回文档

所以使用
提示是否是多余的

我试着查看带有和不带
提示的
explain()
的输出,据我所知,没有区别。

是的

有时,您可能希望以相反的自然顺序返回结果(插入的最后一个文档是要返回的第一个文档。您可以通过以下方式实现此目的:

db.cappedCollection.find().sort({$natural:-1})

有效地将封顶集合的FIFO性质更改为LIFO性质。

我能想到的唯一解释是,如果您有索引,因为尾部必须使用自然顺序,必须指定提示以避免使用其他索引。@joao我会这么认为,但文档说:“可定制游标不使用索引”。。。