When you decreased the chunk size, chunk got split and moved between the shards.
But If you increase it back, chucks cannot merged or combined.
When data is moved, there's some state resetting in mongos. Queries that used to hit a given shard for a migrated chunk, now need to hit a new shard. This state-resetting isn't free, so we want to move chunks infrequently (pressure to move a lot of keys at once). However, the actual moving has a cost that's proportional to the number of keys you're moving (pressure to move few keys).
http://www.mongodb.org/display/DOCS/Sharding+Administration#ShardingAdministration-ChunkSizeConsiderationsOn Wednesday, October 3, 2012 11:04:32 AM UTC+1, aryton wrote:
Actually i have an application which read data often rather than inserting data from/to mongoDB database...and i set up a sharding environment for my mongoDB database ( 3 shard) but for the first system test (beta test) mongos only read data from one shard for a really long because the chunk still not splitting (i use 64 MB chunk size at that time) and make the shard load high. after that i try to decrease the chunk size to 32 MB.and finally the read data load balance in each shard.
Is it fine if i use the smaller chunk size first and after i found out that the insert rate is increase, i increase it to reduce the network load due to the frequently chunk movement? What is the tradeoff from my action?
Sorry for my terrible grammar and english :D