Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 游标batchSize如何在节点mongodb本机驱动程序上工作?_Node.js_Mongodb_Node Mongodb Native - Fatal编程技术网

Node.js 游标batchSize如何在节点mongodb本机驱动程序上工作?

Node.js 游标batchSize如何在节点mongodb本机驱动程序上工作?,node.js,mongodb,node-mongodb-native,Node.js,Mongodb,Node Mongodb Native,我使用的是mongodb本机驱动程序,我不太明白为什么他们总是在文档示例中设置batchSize=1 根据官方文件,不应使用等于1的batchSize: 如果我将batchSize设置为1,会发生什么?每次检索文档时是否强制转到数据库 听起来真的很奇怪。。。这两个参考是官方来源,所以我想我遗漏了一些东西。您正在参考mongo shell文档-如果您在那里使用cursor.batchSize(1),它将与limit()一样工作 外壳的行为与驾驶员的行为略有不同 您展示的示例来自mongodb

我使用的是mongodb本机驱动程序,我不太明白为什么他们总是在文档示例中设置batchSize=1

根据官方文件,不应使用等于1的batchSize:

如果我将batchSize设置为1,会发生什么?每次检索文档时是否强制转到数据库


听起来真的很奇怪。。。这两个参考是官方来源,所以我想我遗漏了一些东西。

您正在参考mongo shell文档-如果您在那里使用cursor.batchSize(1),它将与limit()一样工作

外壳的行为与驾驶员的行为略有不同

您展示的示例来自mongodb node.js驱动程序(而不是来自mongo shell)。在那里可以使用batchSzie(1)。它将迫使驱动程序在每次迭代中转到数据库并获取一个文档。您可以通过这种方式控制存储在内存中的文档数量。数量越大,从客户机到数据库的请求越少,迭代时存储在客户机内存中的文档就越多

在您提供的示例中,{cursor:{batchSize:1}}是“聚合”方法的选项之一