Konsistent hashing er en teknik til at distribuere data på tværs af knuder (servere), som minimerer omfordeling når knuder tilføjes eller fjernes — i modsætning til simpel hashing, som gentilknytter de fleste nøgler når antallet af knuder ændres. Det er vigtigt for distribuerede cachesystemer, databaser og lastfordeling.
Problemet med simpel 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.
