2

TL;DR : How the READ/WRITE requests for KEYS present in failed node handled during rehashing/rebalancing ?

Suppose in Consistent Hashing setup of database, one node in database goes down. Now , only the keys on that particular node will be rehashed/re-balanced across the remaining nodes in the hash ring.

My question is , how the READ/WRITE requests for KEYS present in failed node handled during rehashing/rebalancing ?

One simplistic answer can be that READ/WRITE requests are handled by replicas of the failed node during rebalancing. However consider below case :

Suppose, my replication factor(N) = 3 , WRITE quorum(W) = 3 and READ QUORUM(R) = 3

Now , if one node fails then during rebalancing , my replication factor will become 2 i.e. there are only two copies of data present on failed node.

Now , if a READ request comes , since my READ quorum is set at 3 , my database will be unavailable to that request since there is no way it can find 3 copies corresponding to READ request.

However , as far as I know Consistent Hashing helps in designing ALWAYS-ON systems.

Does , it mean that during rebalancing/rehashing , it is quite possible that my R/W quorum may not be satisfied if I desire high Aavailability ??

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.