Hashowanie spójne (bazy danych)
Technika rozdzielania danych między węzły tak, że przy dodaniu lub usunięciu węzła trzeba przenieść tylko niewielką część kluczy. Rozwiązanie problemu prostego hashowania modulo, które przy każdej zmianie topologii wymusza przetasowanie niemal wszystkiego.
Problem: „węzeł = hash(klucz) % N” oznacza, że gdy N się zmienia (węzeł dołącza lub odchodzi), prawie wszystkie klucze zmieniają węzeł → katastrofalne przetasowanie. Hashowanie spójne umieszcza zarówno węzły, jak i klucze na okrężnym „pierścieniu” (przestrzeni haszy); klucz należy do następnego węzła zgodnie z ruchem wskazówek zegara. Nowy węzeł przejmuje klucze tylko od sąsiada, a po usunięciu sąsiad dziedziczy jego dane → przenosi się tylko ok. 1/N danych. Ulepszenie: węzły wirtualne (vnodes) dają równiejszy rozkład i lepsze wyrównanie obciążenia. Fundament Amazon Dynamo (2007), a przez to Cassandry, Riaka i DynamoDB. Używane też w CDN-ach, pamięciach podręcznych (memcached) i load balancerach. Klasyczny element składowy skalowalnych systemów rozproszonych. Powiązane z vnode i protokołem plotkowania.