Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Ako funguje zdieľanie údajov v Redis Cluster


Ako funguje zdieľanie údajov v Redis Cluster


Takto funguje zdieľanie údajov v Redis Cluster:

Redis Cluster Sharding

Redis Cluster používa vstavaný mechanizmus shardingu na automatické rozdelenie údajov medzi viacero uzlov Redis. Kľúčové aspekty toho, ako to funguje, sú:

1. Rozdelenie kľúčového priestoru: Celý kľúčový priestor v klastri Redis je rozdelený do 16 384 hash slotov. Tieto hash sloty sú zodpovedné za distribúciu údajov v rámci klastra.

2. Priradenie hash slotov: Každému uzlu Redis v klastri je priradená podmnožina 16 384 hash slotov. Priradenie hašovacích slotov uzlom sa vykonáva pomocou hašovacej funkcie.

3. Umiestnenie údajov: Keď chce klient uložiť pár kľúč – hodnota, vypočíta hodnotu hash kľúča pomocou preddefinovanej hašovacej funkcie. Táto hašovacia hodnota sa potom namapuje na jeden zo 16 384 hašovacích slotov. Údaje sa potom uložia do uzla Redis, ktorý vlastní daný hash slot.

4. Replikácia: Pre každý hash slot existuje primárny uzol, ktorý je zodpovedný za obsluhu požiadaviek na čítanie/zápis. Okrem toho existuje jeden alebo viac uzlov repliky, ktoré uchovávajú kópiu údajov pre vysokú dostupnosť.

5. Automatické opätovné spevnenie: Keď sa uzly pridávajú alebo odstraňujú z klastra, priradenia hašovacích slotov sa automaticky vyvažujú, aby sa zabezpečilo rovnomerné rozloženie údajov a zaťaženia v klastri.

Výhody Redis Cluster Sharding

1. Škálovateľnosť: Vďaka distribúcii údajov medzi viaceré uzly môže Redis Cluster škálovať, aby spracoval veľké množstvo údajov a vysokú priepustnosť.

2. Vysoká dostupnosť: Replikácia hash slotov medzi primárnymi a replikovanými uzlami zabezpečuje vysokú dostupnosť, pretože klienti môžu naďalej pristupovať k údajom, aj keď niektoré uzly zlyhajú.

3. Transparentný klientsky prístup: Mapovanie hašovacích slotov je spravované transparentne v klastri Redis, takže klienti môžu pristupovať k údajom bez toho, aby museli poznať podrobnosti o základnom shardingu.

4. Automatická správa: Redis Cluster automatizuje správu shardingu vrátane opätovného vyvažovania údajov pri raste alebo zmenšovaní klastra.

Celkovo architektúra shardingu Redis Cluster umožňuje poskytovať vysoko škálovateľné, dostupné a ľahko spravovateľné distribuované úložisko dát, vďaka čomu je vhodné pre aplikácie s veľkými objemami dát alebo vysokými požiadavkami na priepustnosť.

Citácie:
[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/AmazonElastiCache/latest/red-ug/CacheNodes.NodeGroups.html