Consistent hashing είναι μια τεχνική για τη διανομή δεδομένων σε κόμβους (servers) που ελαχιστοποιεί την αναδιανομή όταν προστίθενται ή αφαιρούνται κόμβοι — σε αντίθεση με το απλό hashing, το οποίο αναχαρτογραφεί τα περισσότερα κλειδιά όταν αλλάζει ο αριθμός των κόμβων. Είναι σημαντικό για κατανεμημένες caches, βάσεις δεδομένων και κατανομή φορτίου.
Το πρόβλημα με το απλό hashing
Simple approach: node = hash(key) % N (N = number of nodes)
✗ when N CHANGES (add/remove a node), N changes → MOST keys remap to different nodes →
massive data movement / cache invalidation (almost everything moves!)
→ adding/removing a server causes huge disruption → bad for dynamic distributed systems.
