Video: GTA 5 Thug Life #41 ( GTA 5 Funny Moments ) 2024
Un grup mare de baze de date NoSQL este un lucru greu de gestionat. Apache Zookeeper la salvare! Urmărirea nodurilor care se află în cluster, a datelor pe care fiecare gestionează fiecare și asigurarea că noile maeștri sunt selectate atunci când un maestru eșuează nu sunt sarcini ușoare.
Coordonarea sistemelor distribuite mari este, prin urmare, foarte dificilă. Atât hadoop cât și bazele de date distribuite NoSQL au nevoie de o modalitate de a gestiona configurația unui întreg grup. Acest proces trebuie, de asemenea, să fie foarte disponibil, astfel încât acesta să nu fie singur punct de eșec al sistemului global.
Aici intră Apache Zookeeper. Zookeeper oferă un serviciu de coordonare distribuit, coerent.
Mai multe alte produse utilizează Zookeeper pentru gestionarea clusterului:
-
Apache Hadoop
-
Solver Cloud
-
Neo4j
-
Accumulo
-
HBase
-
Rackspace
-
Zynga
-
Yahoo! (pentru mai multe servicii)
Zookeeper oferă o structură de stocare ierarhică în memorie care este similară cu un sistem de fișiere pe computer. Această structură este gestionată de actualul maestru Zookeeper și reprodusă între celelalte noduri din cluster. Un cluster de zookeeper este numit un Zookeeper e .
Doar masterul gestionează actualizările (scrie) la spațiul de stocare. Aceste modificări sunt verificate pe disc pentru a le face durabile și apoi replicate la celelalte instanțe ale Zookeeper din ansamblu.
Aceste servicii stochează datele de configurare a cluster-lor în Zookeeper. Unii dintre ei stochează și intervalele cheie pentru fragmente din baza lor de date. Acest lucru permite clienților care utilizează o bază de date NoSQL care utilizează Zookeeper să comunice cu orice server Zookeeper din ansamblu. În acest fel, clienții pot descoperi ce servere NoSQL dețin datele pe care le interesează.
Privind care nod stochează ce gama cheie minimizează sarcina pe serverele NoSQL, deoarece nu au nevoie să transmită cererile de date de la un nod NoSQL la nodul care deține efectiv datele.
De asemenea, puteți utiliza spațiul de stocare a datelor din Zookeeper pentru stocarea efemeră (stocare care nu va dura ulterior repornirea serviciului), care este utilă pentru stocarea sesiunilor sau a altor date de rulare.
Serverele Zookeeper utilizează această memorie efemeră pentru a determina cine preia controlul în cazul în care un maestru nu reușește. Fiecare server creează un znode efemere numerotate (fișier de stocare) în spațiul cheie. Dacă maestrul Zookeeper (leader) suferă un defect hardware, atunci proprietarul următorului znode din secvență devine master. Aceasta este o soluție elegantă și evită efectul "turmă", în care toate serverele comunică frenetic între ele pentru câteva secunde pentru a selecta un master nou.
Zookeeper este o soluție excelentă Java pentru problemele inerente gestionării sistemelor coordonate și disponibilității ridicate. Puteți să-l utilizați pentru a implementa servicii extrem de accesibile, inclusiv servicii de mesagerie. Deci, dacă aveți nevoie să creați un nou serviciu distribuit, luați în considerare utilizarea lui Zookeeper.