Voici comment fonctionne les données dans le cluster Redis:
Redis Cluster Sharding
Redis Cluster utilise un mécanisme de rupture intégré pour partitionner automatiquement les données sur plusieurs nœuds Redis. Les aspects clés de la façon dont cela fonctionne:
1. Partionnement de l'espace de clé: L'espace de Keyspace entier dans un cluster Redis est divisé en 16 384 emplacements de hachage. Ces emplacements de hachage sont responsables de la distribution des données à travers le cluster.
2. Affectation des emplacements de hachage: Chaque nœud Redis dans le cluster se voit attribuer un sous-ensemble des emplacements de hachage de 16 384. L'attribution des emplacements de hachage aux nœuds se fait via une fonction de hachage.
3. Placement de données: lorsqu'un client souhaite stocker une paire de valeurs de clé, le client calcule une valeur de hachage de la clé à l'aide d'une fonction de hachage prédéfinie. Cette valeur de hachage est ensuite cartographiée à l'un des 16 384 emplacements de hachage. Les données sont ensuite stockées sur le nœud Redis qui possède ce emplacement de hachage.
4. Réplication: Pour chaque emplacement de hachage, il existe un nœud principal qui est responsable de la description de lecture / écriture. De plus, il existe une ou plusieurs répliques de nœuds qui maintiennent une copie des données pour la haute disponibilité.
5. Reshardage automatique: à mesure que les nœuds sont ajoutés ou supprimés du cluster, les affectations de machines à sous de hachage sont automatiquement rééquilibrées pour assurer une distribution uniforme des données et une charge à travers le cluster.
Avantages de la fragment du cluster redis
1. Évolutivité: En distribuant des données sur plusieurs nœuds, le cluster Redis peut évoluer pour gérer de grandes quantités de données et un débit élevé.
2.
3. Accès transparent des clients: le mappage des emplacements de hachage est géré de manière transparente par le cluster Redis, afin que les clients puissent accéder aux données sans avoir besoin de connaître les détails de la rupture sous-jacente.
4. Gestion automatique: Redis Cluster automatise la gestion de la rupture, y compris le rééquilibrage des données à mesure que le cluster se développe ou rétrécit.
Dans l'ensemble, l'architecture Sharding du cluster Redis lui permet de fournir un magasin de données distribué hautement évolutif, disponible et facile à gérer, ce qui le rend bien adapté aux applications avec de grands volumes de données ou des exigences à haut débit.
Citations:[1] https://scalegrid.io/blog/intro-to-redis-sharding/
[2] https://redis.io/redis-enterprise/technology/redis-enterprise-cluster-architecture/
[3] https://yandex.cloud/en/docs/managed-redis/concepts/sharding
[4] https://redisson.org/glossary/sharding.html
[5] https://docs.aws.amazon.com/amazonlasticache/latest/red-ug/cachenodes.nodegroups.html