Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Hogyan működik az adatmegosztás a Redis Clusterben


Hogyan működik az adatmegosztás a Redis Clusterben


Íme, hogyan működik az adatfelosztás a Redis Clusterben:

Redis Cluster Sharding

A Redis Cluster beépített felosztási mechanizmust használ az adatok automatikus particionálására több Redis-csomópont között. Ennek működésének fő szempontjai a következők:

1. Keyspace-particionálás: A Redis-fürt teljes kulcstere 16 384 hash-helyre van felosztva. Ezek a hash-helyek felelősek az adatok fürtön belüli elosztásáért.

2. Hash Slots Asignment: A fürt minden Redis csomópontjához hozzá van rendelve a 16 384 hash slot egy részhalmaza. A hash-helyek csomópontokhoz való hozzárendelése egy hash-függvényen keresztül történik.

3. Adatelhelyezés: Ha egy ügyfél kulcs-érték párt akar tárolni, az ügyfél kiszámítja a kulcs hash értékét egy előre meghatározott hash függvény segítségével. Ezt a hash értéket a rendszer a 16 384 hash slot egyikére képezi le. Az adatok ezután azon a Redis-csomóponton tárolódnak, amelyik a hash slot tulajdonosa.

4. Replikáció: Minden hash slothoz tartozik egy elsődleges csomópont, amely az olvasási/írási kérések kiszolgálásáért felelős. Ezenkívül van egy vagy több replika csomópont, amely fenntartja az adatok másolatát a magas rendelkezésre állás érdekében.

5. Automatikus újrafelosztás: Amikor csomópontokat adnak hozzá vagy eltávolítanak a fürtből, a hash-rés-hozzárendelések automatikusan kiegyenlítésre kerülnek, hogy biztosítsák az adatok és terhelés egyenletes eloszlását a fürtben.

A Redis Cluster Sharding előnyei

1. Skálázhatóság: Az adatok több csomópont között történő elosztásával a Redis Cluster méretezhető nagy mennyiségű adat kezelésére és nagy áteresztőképességre.

2. Magas rendelkezésre állás: A hash-helyek replikációja az elsődleges és a replika csomópontok között magas rendelkezésre állást biztosít, mivel az ügyfelek továbbra is hozzáférhetnek az adatokhoz, még akkor is, ha egyes csomópontok meghibásodnak.

3. Átlátszó kliens hozzáférés: A hash slot leképezést a Redis Cluster átláthatóan kezeli, így az ügyfelek anélkül férhetnek hozzá az adatokhoz, hogy ismerniük kellene a mögöttes felosztás részleteit.

4. Automatikus kezelés: A Redis Cluster automatizálja a felosztás kezelését, beleértve az adatok újraegyensúlyozását a fürt növekedésével vagy csökkenésével.

Összességében a Redis Cluster felosztási architektúrája lehetővé teszi, hogy rendkívül méretezhető, elérhető és könnyen kezelhető elosztott adattárat biztosítson, így kiválóan alkalmas nagy adatmennyiséggel vagy nagy átviteli igényű alkalmazásokhoz.

Idézetek:
[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