Anillo de hashing consistente

Anillo de hashing consistente con nodos virtuales: distribución de claves, equilibrio de carga y cuántas claves se mueven al añadir o quitar un nodo — frente al hashing módulo.

Acerca de esta herramienta

Explora la ubicación de claves cuando cambia el tamaño del clúster. Elige 1–400 tokens virtuales por nodo y 1.000–200.000 claves; muestra el anillo. Compara un token con 64. Añade un nodo o elimínalo en la tabla. Los colores siguen vinculados a los nombres. Cambiar tokens o cantidad borra resultados; Restablecer recupera todos los valores.

Una clave pertenece al primer token en sentido horario, incluida la igualdad; después del último vuelve al primero. Cada arco pertenece al nodo de su token final. La tabla cuenta propietarios primarios, no copias ni peticiones. Carga máxima: mayor cantidad dividida por la media. Dispersión: desviación estándar poblacional dividida por esa media. Más tokens suelen mejorar el equilibrio, sin garantía monótona para cada muestra finita.

Tras un cambio, compara claves trasladadas con hash(key) módulo número de nodos sobre todas las mismas claves y los mismos nombres antes/después. Añadir solo mueve claves al nuevo nodo; eliminar solo mueve claves antes situadas en el nodo eliminado. 1/n usa el mayor tamaño del clúster: expectativa de ubicación uniforme, no mínimo ni garantía. Los ejemplos desplegables muestran hasta ocho claves.

Introduce una clave para ver posición y destinos distintos en sentido horario. El factor 1–16 incluye el primario; se indican copias no disponibles. Modelo educativo local con mezcla de tipo FNV de 32 bits sobre unidades de caracteres JavaScript y finalización Murmur; no es un hash estándar de bytes ni de seguridad. Sin pesos, tráfico de claves populares, fallos, transferencias de copias ni quórums. Búsqueda O(log T), distribución O(K log T) tras ordenar. El artículo Dynamo §§4.2–4.3 describe anillo, tokens virtuales y nodos físicos distintos; no reproduce su MD5 ni todo el sistema.