Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kaip „Redis Cluster“ veikia duomenų bendrinimas


Kaip „Redis Cluster“ veikia duomenų bendrinimas


Štai kaip „Redis Cluster“ veikia duomenų bendrinimas:

Redis klasterio dalijimasis

„Redis Cluster“ naudoja integruotą dalijimosi mechanizmą, kad automatiškai skaidytų duomenis keliuose Redis mazguose. Pagrindiniai šio veikimo aspektai yra šie:

1. Keyspace skaidymas: visa Redis klasterio klavišų erdvė yra padalinta į 16 384 maišos lizdus. Šie maišos lizdai yra atsakingi už duomenų paskirstymą klasteryje.

2. Maišos laiko tarpsnių priskyrimas: kiekvienam klasterio Redis mazgui priskiriamas 16 384 maišos tarpsnių poaibis. Maišos laiko tarpsniai mazgams priskiriami naudojant maišos funkciją.

3. Duomenų talpinimas: kai klientas nori išsaugoti rakto ir vertės porą, klientas apskaičiuoja rakto maišos reikšmę naudodamas iš anksto nustatytą maišos funkciją. Tada ši maišos vertė susieta su vienu iš 16 384 maišos tarpsnių. Tada duomenys saugomi Redis mazge, kuriam priklauso tas maišos lizdas.

4. Replikacija: kiekvienam maišos lizdui yra pagrindinis mazgas, atsakingas už skaitymo / rašymo užklausų aptarnavimą. Be to, yra vienas ar daugiau replikų mazgų, kurie palaiko duomenų kopiją, kad būtų užtikrintas aukštas pasiekiamumas.

5. Automatinis perskirstymas: kai mazgai pridedami arba pašalinami iš grupės, maišos laiko tarpsnių priskyrimai automatiškai subalansuojami, kad būtų užtikrintas tolygus duomenų paskirstymas ir apkrova grupėje.

Redis Cluster Sharding privalumai

1. Mastelio keitimas: paskirstydamas duomenis keliuose mazguose, „Redis Cluster“ gali keisti mastelį, kad būtų galima apdoroti didelius duomenų kiekius ir didelį pralaidumą.

2. Aukštas prieinamumas: maišos laiko tarpsnių replikavimas pirminiuose ir kopijos mazguose užtikrina aukštą pasiekiamumą, nes klientai gali ir toliau pasiekti duomenis, net jei kai kurie mazgai sugenda.

3. Skaidri kliento prieiga: maišos laiko tarpsnių susiejimą skaidriai tvarko „Redis Cluster“, todėl klientai gali pasiekti duomenis nežinant išsamios pagrindinės dalybos.

4. Automatinis valdymas: „Redis Cluster“ automatizuoja dalijimosi valdymą, įskaitant duomenų perbalansavimą, kai klasteris auga arba mažėja.

Apskritai, „Redis Cluster“ dalijimosi architektūra leidžia teikti labai keičiamą, prieinamą ir lengvai valdomą paskirstytą duomenų saugyklą, todėl ji puikiai tinka programoms, turinčioms didelį duomenų kiekį arba didelius pralaidumo reikalavimus.

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