定义
cursor.batchSize(size)重要
mongosh 方法
This page documents a
mongoshmethod. This is not the documentation for a language-specific driver, such as Node.js.如需了解 MongoDB API 驱动程序,请参阅特定语言的 MongoDB 驱动程序文档。
查询结果中每批次可返回的最大文档数量。默认情况下,初始批处理大小是
101个文档或 16 个兆字节(MiB)文档中的较小者。后续批处理的最大大小为 16 MiB。此选项可以执行比 16 MiB 更小的限制,但不能执行更大的限制。设置后,batchSize是batchSize份文档或 16 MiB 文档中较小的一个。在分片集群中,
mongos不会将batchSize值转发给各个分片。在分片集群中,后续的getMore操作每个批处理最多返回 16 MiB 的文档,而无论配置的batchSize如何。batchSize为0是指将建立游标,但第一批不会返回任何文档。注意
如果批处理大小太大,则游标分配的资源会超过其所需,这可能会对查询性能产生负面影响。如果批处理大小太小,则游标需要更多的网络往返来检索查询结果,这会对查询性能产生负面影响。
将
batchSize调整为适合您的数据库、负载和应用程序需求的值。The
batchSize()method takes the following field:字段类型说明size整型
批处理查询结果中可以返回的最大文档数。默认初始批处理大小为
101个文档或 16 MB (MiB) 文档中的较小者。后续批次的最大大小为 16 MiB。此选项可以实施小于 16 MiB 的限制,但不能执行大于 MiB 的限制。默认适用于驱动程序和Mongo Shell。 有关详细信息,请参阅游标批处理。
兼容性
此方法可用于以下环境中托管的部署:
- MongoDB Atlas: The fully managed service for MongoDB deployments in the cloud
注意
This command is supported in all MongoDB Atlas clusters. For information on Atlas support for all commands, see Unsupported Commands.
MongoDB Enterprise:基于订阅、自我管理的 MongoDB 版本
MongoDB Community:源代码可用、免费使用且可自行管理的 MongoDB 版本
例子
以下示例将查询结果(具体来说,即 find())的 batchSize 设置为 10:
db.inventory.find().batchSize(10)