Distribution and subsequent redistribution of keys?
Had a question on how (and if) CB re-distributes keys. For example:
Say I have to store 100 keys on a 5 node cluster. As I understand it, 20 keys will go to each node. Which is what I have observed more or less.
However, say later on, one node is getting hit much more due to a specific usage pattern. Does couchbase redistribute the most looked up keys amongst the nodes so that the load is distributed across the cluster?
Haven't observed the latter, but would be nice to have the same confirmed from your end.
Couchbase use the CRC32 Hash based on the key you use to set the document, and distribute the document evenly on all the nodes.
You can find more information here:
I am inviting you to read the "Couchbase Architecture White Paper":
You should not have node with "more data" than other, if your application is always hitting the same keys it will hit the same servers but it will not be an issue because the document will be in the cache (RAM) on this sever so it won't have any impact on the performance.
That said if you start to see really more activity on some node you can add new nodes, rebalance the data and it will distribute the load on all servers.