Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kuidas andmete jagamine Redis Clusteris töötab


Kuidas andmete jagamine Redis Clusteris töötab


Andmete jagamine Redis Clusteris toimib järgmiselt:

Redis klastri jagamine

Redis Cluster kasutab andmete automaatseks jaotamiseks mitme Redise sõlme vahel sisseehitatud jagamismehhanismi. Selle toimimise põhiaspektid on järgmised:

1. Võtmeruumi partitsioonid: Redise klastri kogu võtmeruum on jagatud 16 384 räsipesaks. Need räsipesad vastutavad andmete jaotamise eest klastri vahel.

2. Räsipesade määramine: igale klastri Redise sõlmele on määratud 16 384 räsipesa alamhulk. Räsipesade määramine sõlmedele toimub räsifunktsiooni kaudu.

3. Andmete paigutus: kui klient soovib salvestada võtme-väärtuse paari, arvutab klient võtme räsiväärtuse, kasutades eelmääratletud räsifunktsiooni. See räsiväärtus kaardistatakse seejärel ühega 16 384 räsipesast. Seejärel salvestatakse andmed Redise sõlme, mis omab seda räsipesa.

4. Replikatsioon: iga räsipesa jaoks on esmane sõlm, mis vastutab lugemis-/kirjutustaotluste teenindamise eest. Lisaks on üks või mitu koopiasõlme, mis säilitavad andmete koopiaid kõrge kättesaadavuse tagamiseks.

5. Automaatne ümberjaotamine: sõlmede lisamisel või eemaldamisel klastris tasakaalustatakse räsipesade määramised automaatselt ümber, et tagada andmete ja koormuse ühtlane jaotus klastri vahel.

Redise klastri jagamise eelised

1. Skaleeritavus: jaotades andmeid mitme sõlme vahel, saab Redis Cluster skaleerida, et käsitleda suuri andmemahtusid ja suurt läbilaskevõimet.

2. Kõrge saadavus: räsipesade replikatsioon primaarsete ja koopiasõlmede vahel tagab kõrge kättesaadavuse, kuna kliendid saavad andmetele juurde pääseda ka siis, kui mõned sõlmed ebaõnnestuvad.

3. Läbipaistev kliendijuurdepääs: Redis Cluster haldab räsipesade vastendamist läbipaistvalt, nii et kliendid pääsevad andmetele juurde, ilma et nad peaksid teadma aluseks oleva jaotuse üksikasju.

4. Automaatne haldamine: Redis Cluster automatiseerib jaotamise haldamise, sealhulgas andmete tasakaalustamise, kui klastri kasvab või kahaneb.

Üldiselt võimaldab Redis Clusteri jagamisarhitektuur sellel pakkuda väga skaleeritavat, saadaolevat ja hõlpsasti hallatavat hajutatud andmesalvet, mistõttu sobib see hästi suurte andmemahtude või kõrge läbilaskevõimega rakendustele.

Tsitaadid:
[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