Docs Menu

cursor.batchSize()

cursor.batchSize(size)

Important

mongosh Method

This page documents a mongosh method. This is not the documentation for a language-specific driver, such as Node.js.

For MongoDB API drivers, refer to the language-specific MongoDB driver documentation.

The maximum number of documents that can be returned in each batch of a query result. By default, the initial batch size is the lesser of 101 documents or 16 mebibytes (MiB) worth of documents. Subsequent batches have a maximum size of 16 MiB. This option can enforce a smaller limit than 16 MiB, but not a larger one. When set, the batchSize is the lesser of batchSize documents or 16 MiB worth of documents.

A batchSize of 0 means that the cursor is established, but no documents are returned in the first batch.

Note

If the batch size is too large, the cursor allocates more resources than it requires, which can negatively impact query performance. If the batch size is too small, the cursor requires more network round trips to retrieve the query results, which can negatively impact query performance.

Adjust batchSize to a value appropriate to your database, load, and application needs.

The batchSize() method takes the following field:

Field
Type
Description

size

integer

The maximum number of documents that can be returned in each batch of a query result. The default initial batch size is the lesser or 101 documents or 16 mebibytes (MiB) worth of documents. Subsequent batches have a maximum size of 16 MiB. This option can enforce a smaller limit than 16 MiB, but not a larger one. The default applies to drivers and Mongo Shell. For details, see Cursor Batches.

This method is available in deployments hosted in the following environments:

  • MongoDB Atlas: The fully managed service for MongoDB deployments in the cloud

Note

This command is supported in all MongoDB Atlas clusters. For information on Atlas support for all commands, see Unsupported Commands.

The following example sets batchSize for the results of a query (specifically, find()) to 10:

db.inventory.find().batchSize(10)