Navigation

Modify Chunk Size in a Sharded Cluster

The default chunk size for a sharded cluster is 64 megabytes. This default chunk size works well for most deployments; however, if you notice that automatic migrations have more I/O than your hardware can handle, you may want to reduce the chunk size. For automatic splits and migrations, a small chunk size leads to more rapid and frequent migrations. The allowed range of the chunk size is between 1 and 1024 megabytes, inclusive.

To modify the chunk size, use the following procedure:

  1. Connect to any mongos in the cluster using the mongo shell.

  2. Issue the following command to switch to the Config Database:

    use config
    
  3. Issue the following save() operation to store the global chunk size configuration value:

    db.settings.save( { _id:"chunksize", value: <sizeInMB> } )
    

Modifying the chunk size has several limitations:

  • Automatic splitting only occurs on insert or update.
  • If you lower the chunk size, it may take time for all chunks to split to the new size.
  • Splits cannot be undone.
  • If you increase the chunk size, existing chunks grow only through insertion or updates until they reach the new size.
  • The allowed range of the chunk size is between 1 and 1024 megabytes, inclusive.