A replikáció áttekintése a MongoDB-ben

A MongoDB egy nyílt forrású, dokumentum-orientált adatbázis, amely nagyon skálázható, NoSQL adatbázis. Nagy mennyiségű adattárolásra használható.

A MongoDB az adatokat JSON-formátumban tárolja, amely nagyon rugalmas, és a dokumentummodell ezután az alkalmazási kódokban leképezi az objektumokat.

Mi az a MongoDB replikáció?

A replikáció alatt olyan kiszolgálók csoportosítását értjük, amelyek ugyanazt a funkciót hajtják végre. A MongoDB esetében rendelkezünk MongoDB szerverekkel az adatok tárolására. A replikáció célja az adatok magas rendelkezésre állásának biztosítása. Abban az esetben, ha valamelyik szerver leáll, mindig rendelkeznie kell egy másolattal az elérhető adatok másolatával, hogy ez ne érintse a rendelkezésre állást.

Az adatokat rendszeresen és rendszeres időközönként meg kell ismételni, hogy megbizonyosodjunk arról, hogy semmilyen adatot ne veszítsünk el - és még ha az elsődleges szerver is leáll, a másodiknak képesnek kell lennie arra, hogy kiszolgálja a felhasználói kéréseket.

A replikáció nagyon hatékony a terheléselosztás esetén is, például ha több felhasználó próbál adatokat olvasni vagy írni a szerverekre, ebben az esetben tisztességtelen lenne, ha az összes kérést csak a Az egyik kiszolgálónak rendelkeznie kell egy kiegyensúlyozó mechanizmussal, amely egyenlően osztja el a terhelést a fürtben elérhető kiszolgálókra úgy, hogy egyetlen kiszolgáló sem fogy el a memóriára vagy a sávszélességre, és nem csökken.

Replikáció működése a MongoDB folyamatban

A replikáció a MongoDB-ben replikakészletek segítségével érhető el. A replikakészletek a MongoDB szerverek csoportosítása. Van egy elsődleges kiszolgáló, amely felel az összes kérés vagy az írás művelet ügyfelektől történő fogadásáért, és a másolatkészlethez hozzáadott többi példányt másodlagos példánynak nevezzük, amely az összes olvasási műveletért felel.

  • Amint azt a fenti ábra szemlélteti, az összes adat az elsődleges csomópontot a másodlagos csomópontokra replikálja, bármely replikakészletben csak egy elsődleges csomópont lesz.
  • Amikor feladatátvétel történik, vagy valamilyen karbantartási tevékenységet végeznek, új elsődleges csomópontot választanak.
  • Miután a feladatátvételt helyreállították, a hibás csomópont másodlagos csomópontként működik.
  • Az ügyfélalkalmazás mindig kommunikál az elsődleges csomóponttal, amelyet ezt követően az adatok replikálása az összes másodlagos csomópontra.

Másolatkészletek, létrehozás és műveletek

A MongoDB-kiszolgálók teljes körű replikációjának elkészítéséhez először létre kell hoznunk a MongoDB-példányok replikakészletét.

Képzeljük el, hogy három szerverünk van: repl1, repl2 és repl3, ahol az elsődleges kiszolgáló az repl1, a többi pedig másodlagos.

Elsődleges csomópont-replikáció hozzáadása a MongoDB-ben:

  • Kérjük, ellenőrizze, hogy a mongo.exe példányai vannak-e telepítve az összes kiszolgálóra.
  • Az összes mongod.exe-nek képesnek kell lennie arra, hogy ping-eket egymás között, azaz kommunikálni tudjanak. Ennek ellenőrzéséhez futtassa a következő parancsokat az elsődleges kiszolgálókról (kezdetben), azaz esetünkben a repl1-et.

mongo –host repl2 –port 27017

mongo –host repl3 –port 27017

Hasonlóképpen, ugyanazt a tesztet elvégezhetjük más szerverektől is

  • A mongo –replset parancs használatával el kell indítanunk az első mongod.exe példányunkat.
    mongo –replset “Replica_A”, ahol a Replica_A a replikakészlet neve.
  • Mint most, az első kiszolgálót hozzáadtuk a replikakészlethez, a következő lépés a replikakészlet kezdeményezése az rs.initiate () parancs kiadásával.
  • A következő lépés az ellenőrzési lépés, ahol biztosítjuk, hogy bármi, amit eddig konfiguráltunk, helyes legyen, ezt megtehetjük az rs.conf () parancs futtatásával.

Másodlagos csomópont replikáció hozzáadása a MongoDB-ben:

Az elsődleges kiszolgáló hozzáadása után könnyű felvenni a többi másodlagos csomópontot, ezt megtehetjük az rs.add () parancs kiadásával.

Ezért futtassa az alábbi parancsot, mivel a repl1 az elsődleges szerverünk, a repl2 és a repl3 pedig másodlagos szerver.

rs.add ( „repl2”)

rs.add ( „repl3”)

Szerverek eltávolítása a replikakészletből:

A kiszolgálók eltávolításához az összes replikakészletből az rs.remove () paranccsal teheti meg.

Vannak bizonyos lépések, amelyek részt vesznek a folyamatban az alábbiak szerint:

  • Először állítsa le az eltávolítandó példányt. Ezt megteheti a db.shutdownserver parancs futtatásával a mongo cellán keresztül.
  • A következő lépés az elsődleges kiszolgálóhoz történő csatlakozás.
  • Futtassa a következő parancsot, mondjuk, hogy elsődleges és másodlagos szerverként repl1, repl2 és repl3 van, és el akarjuk távolítani a repl3-t, majd futtatjuk a következő parancsot:

rs.remove ( „repl3”)

Néhány hibaelhárítási parancs

  • Az összes mongod.exe-nek képesnek kell lennie arra, hogy ping-eket egymás között, azaz kommunikálni tudjanak. Ennek ellenőrzéséhez futtassa a következő parancsokat az elsődleges kiszolgálókról (kezdetben), azaz esetünkben a repl1-et.

mongo –host repl2 –port 27017

mongo –host repl3 –port 27017

Hasonlóképpen, ugyanazt a tesztet elvégezhetjük más szerverektől is

  • Az rs.status () megadja a replikakészlet állapotát
  • Az oplog ellenőrzéséhez, amely egy napló az elvégzett írási műveletek rögzítéséhez, adja ki ezt a parancsot - rs.printReplicationInfo.

A replikáció előnyei a MongoDB-ben

A replikáció célja az adatok magas rendelkezésre állásának biztosítása. Abban az esetben, ha valamelyik szerver leáll, mindig rendelkezzünk másolattal egy másik kiszolgálón elérhető adatokkal, hogy ez ne érintse a rendelkezésre állást. A replikáció nagyon hatékony a terheléselosztás esetén is, például ha van egy száma a felhasználók próbálnak adatokat olvasni vagy írni a szerverekre.

Röviden, a replikáció fő előnyei az alábbi célt szolgálják:

  1. Magas rendelkezésre állás
  2. Terhelés elosztás

Következtetés:

Mint láttuk, a MongoDB replikáció olyan folyamat, amelynek során az adatokat egynél több kiszolgálón replikáljuk a magas rendelkezésre állás biztosítása érdekében. Ezt úgy lehet meghozni, hogy létrehoz egy replikakészletet, és hozzáadja az elsődleges és másodlagos kiszolgálókat.

Ajánlott cikkek:

Ez egy útmutató a replikációhoz a MongoDB-ben. Itt tárgyaljuk a létrehozást, működést, működést, az előnyöket és a hibaelhárítás néhány parancsát. A további javasolt cikkeken keresztül további információkat is megtudhat -

  1. MongoDB GUI eszközök
  2. MongoDB parancsok
  3. MongoDB alternatívák
  4. Hogyan telepítsük a MongoDB-t