Since this is a database, I am assuming we need to always be able to retrieve a key’s value once it is set in this DB. With consistent hashing, our request can be served from a node which doesn’t have that key.
e.g. Say application writes key “Image-1792-Location” with value “http://something.com/does-not-matter.jpg”.
This is written in S1.
Now a new node (S3) is added.
Request for key “Image-1792-Location” goes to S3.
Obviously S3 won’t find the key. Should S3 now query S1 to find the data? Also, do we remove the key from S1 and add it to S3?