Cassandra építészet & Replikációs faktor stratégia

A Cassandra nagy adatok kezelésére készült. A Cassandra fő jellemzője, hogy több csomóponton tárolja az adatokat egyetlen hibapont nélkül.

A Cassandra ilyen architektúrájának oka az volt, hogy a hardverhiba bármikor előfordulhat. Bármely csomópont lehet lent. Meghibásodás esetén egy másik csomópontban tárolt adatok használhatók. Ezért a Cassandrát elosztott architektúrájával tervezték.

A Cassandra a különböző csomópontokon tárolja az adatokat peer to peer elosztott divatarchitektúrával.

Az összes csomópont információt cserél egymással a Gossip protokoll használatával . A Gossip egy olyan protokoll Cassandrában, amelyen keresztül a csomópontok kommunikálhatnak egymással.

Ebben az oktatóanyagban megtanulja-

  • A Cassandra alkatrészei
  • Adatreplikáció
  • Írási művelet
  • Olvassa el a Műveletet

A Cassandra alkatrészei

A következő alkatrészek vannak a Cassandrában;

Cassandra építészeti rajz
  • Csomópont

    A csomópont az a hely, ahol az adatokat tárolják. Ez a Cassandra alapkomponense.

  • Adatközpont

    A csomópontok gyűjteményét adatközpontnak hívják. Sok csomópont adatközpontnak minősül.

  • Fürt

    A klaszter számos adatközpont gyűjteménye.

  • Végezze el a Naplót

    Minden írási művelet a Commit Log-ba kerül. A Commit naplót az összeomlás helyreállításához használják.

  • Mem-asztal

    A Commit naplóba írt adatok után az adatok a Mem-táblába kerülnek. Az adatokat ideiglenesen a Mem-tábla írja.

  • SSTable

    Amikor a Mem-tábla elér egy bizonyos küszöbértéket, az adatok egy SSTable lemezfájlba kerülnek.

Adatreplikáció

Mivel hardverprobléma léphet fel, vagy a kapcsolat bármikor leállhat az adatfeldolgozás során, megoldásra van szükség a biztonsági másolat készítéséhez, amikor a probléma felmerült. Tehát az adatok replikálódnak, hogy egyetlen hibapontot ne biztosítsanak.

E két tényező alapján Cassandra különböző csomópontokon helyezi el az adatok másolatait.

  • A következő replika helyét a replikációs stratégia határozza meg .
  • Míg a különböző csomópontokon elhelyezett replikák teljes számát a replikációs tényező határozza meg .

Az egyik replikációs tényező azt jelenti, hogy csak egyetlen példány van az adatokról, míg a három replikációs faktor azt jelenti, hogy az adatok három másolata van három különböző csomóponton.

Annak biztosítása érdekében, hogy ne legyen egyetlen meghibásodási pont, a replikációs tényezőnek háromnak kell lennie.

Kétféle replikációs stratégia létezik Cassandrában.

SimpleStrategy

A SimpleStrategy akkor használható, ha csak egy adatközpontja van. A SimpleStrategy az első replikát a partíció által kiválasztott csomópontra helyezi. Ezt követően a fennmaradó másolatokat az óramutató járásával megegyező irányban helyezzük el a Csomópont gyűrűben.

Itt látható a SimpleStrategy képi ábrázolása.

NetworkTopologyStrategy

A NetworkTopologyStrategy akkor használható, ha több mint két adatközpontja van.

A NetworkTopologyStrategyben a replikákat minden adatközponthoz külön-külön állítják be. A NetworkTopologyStrategy az óramutató járásával megegyező irányban helyezi el a másolatokat a gyűrűben, amíg el nem éri az első csomópontot egy másik állványon.

Ez a stratégia megpróbálja másolatokat elhelyezni ugyanazon adatközpont különböző állványain. Ennek oka az az oka, hogy néha meghibásodás vagy probléma léphet fel az állványon. Ezután más csomópontokon található másolatok adhatnak adatokat.

Itt látható a hálózati topológia stratégia képi ábrázolása

Írási művelet

A koordinátor írási kérelmet küld a másolatoknak. Ha az összes másolat fent van, írási kérelmet kapnak, a konzisztencia szintjüktől függetlenül.

A konzisztencia szintje határozza meg, hogy hány csomópont válaszol vissza a siker nyugtázásával.

A csomópont válaszol a siker nyugtázásával, ha az adatokat sikeresen beírja az elkötelezettségi naplóba és a memTable-be.

Például egyetlen adatközpontban, ahol a replikációs tényező három, három replika fog írni kérést. Ha a konzisztencia szintje egy, csak egy replika válaszol vissza a siker nyugtázásával, a fennmaradó kettő pedig szunnyadó marad.

Tegyük fel, hogy ha a fennmaradó két másolat adatot veszít csomópont-visszaesések vagy valamilyen más probléma miatt, a Cassandra következetessé teszi a sort a Cassandra beépített javítási mechanizmusával.

Itt elmagyarázzák, hogy az írás folyamata hogyan megy végbe Cassandrában,

  1. Amikor az írási kérelem megérkezik a csomópontba, akkor először a bejelentkezési naplóba jelentkezik.
  2. Ezután Cassandra beírja az adatokat a mem-táblába. Az egyes írási kérelmek mem-táblájába írt adatok külön is írják a végrehajtási naplóba. A Mem-table egy ideiglenesen tárolt adat a memóriában, míg a Commit napló a tranzakciórekordokat biztonsági mentés céljából naplózza.
  3. Ha a mem-tábla megtelt, az adatok az SSTable adatfájlba kerülnek.

Olvassa el a Műveletet

Háromféle olvasási kérés létezik, amelyeket a koordinátor elküld a másolatoknak.

  1. Közvetlen kérés
  2. Digest kérés
  3. Olvassa el a javítási kérelmet

A koordinátor közvetlen kérést küld az egyik másolatnak. Ezt követően a koordinátor elküldi az összefoglaló kérést a konzisztencia szint által megadott számú replikához, és ellenőrzi, hogy a visszaküldött adatok frissített adatok-e.

Ezt követően a koordinátor összefoglaló kérést küld az összes fennmaradó másolatnak. Ha bármelyik csomópont elavult értéket ad, a háttérben olvasható javítási kérelem frissíti ezeket az adatokat. Ezt a folyamatot olvasásjavító mechanizmusnak nevezzük.

Összegzés

Ez az oktatóanyag elmagyarázza a Cassandra belső architektúráját, és azt, hogy a Cassandra hogyan replikálja, írja és olvassa el az adatokat különböző szakaszokban. Itt azt is elmagyarázza, hogy a Cassandra hogyan tartja fenn a konzisztencia szintjét az egész folyamat során.

érdekes cikkek...