Primii pași cu Cassandra

Cuprins
Cassandra este o bază de date NoSQL puternic și scalabil. Este open source și arhitectura sa este concepută ca un sistem distribuit în care toate nodurile sunt aceleași în interiorul său, permițând astfel distribuirea datelor în toate nodurile din cluster.
Depozitare în Cassandra este definit ca valoare cheie unde o cheie poate mapa la una sau mai multe valori. Este o Bază de date orientat către înregistrări de rând, unde fiecare rând este identificat prin cheia sa și particularitatea acestui sistem este că un rând poate fi stocat în mai multe noduri.
Înainte de a trece la instalarea Cassandra în sistemul nostru, trebuie să știm puțin despre arhitectura acestui lucru Bază de date, în acest fel vom ști ce avem și ce putem realiza.
Când vorbim despre replicarea informațiilor, una dintre primele întrebări pe care ni le punem este: De câte exemplare avem nevoie? Acest lucru în Cassandra nu este o întrebare ușor de răspuns, dar ceea ce trebuie să avem în vedere este că acest factor indică numărul de noduri care sunt stocate în același rând.
De exemplu, un factor de replicare de 2 garantează că vor exista două copii ale informațiilor nodurilor din cluster. Alegerea valorii două pentru factorul de replicare este bună pentru a acoperi eșecurile într-un nod din mediul de dezvoltare și poate fi minimul pentru mediile de producție, deoarece dacă un nod coboară, celălalt se va ocupa de toate cererile, deci trebuie să ne gândim cu atenție înainte de a-l implementa.
Spațiul cheiiCassandra ne permite să grupăm informațiile în ceva numit spații de taste, unde putem spune că acestea spații de taste sunt containere pentru informații despre aplicații. Cu toate acestea, un cluster are un spațiu de taste pentru fiecare aplicație Cassandra folosește acestea spații de taste pentru gestionarea replicării.
Familia de coloaneDupă definirea noastră spațiul tastelor, în interiorul ei avem ceva numit familia de coloane, acestea sunt containere la fel, dar pentru o colecție de rânduri. Fiecare rând este o colecție ordonată de coloane și putem face o analogie cu privire la bazele de date relaționale, unde familia de coloane sunt oarecum asemănătoare cu tabelele.
Strategia de replicareÎn Cassandra Există două strategii pentru replicarea informațiilor, una dintre ele și cea pe care am abordat-o deja este strategia simplă sau SimpleStrategy care este responsabil pentru copierea informațiilor la următorul nod până la îndeplinirea factorului de replicare definit. A doua strategie se numește NetworkTopologyStrategy, unde este cea mai bună opțiune dacă dorim să distribuim informațiile în mai multe centre de date.
Protocolul folosit de Cassandra pentru a partaja locația nodurilor și se numește informația acestora în cluster Bârfă. În cazul în care aceste noduri „bolborosesc” constant și schimbă informații cu până la 3 noduri în cluster.
Acest protocol, la fel ca altele, are regulile sale pentru a trimite cereri către alte noduri, unde putem vedea trei pași pentru el și fiecare nod repetă întotdeauna acești pași:
1- Murmură la un nod activ aleatoriu.
2- Lansați un murmur către un nod descendent aleatoriu.
3- Acest pas este opțional și definește că, dacă nodul selectat în pasul unu nu este un nod de semințe, murmurați către un alt nod de semințe aleatoriu.
Dar pentru a muta informațiile și a efectua comunicarea între noduri Cassandra folosiți o componentă numită SnitchSă vedem la ce te referi.
Practic, această componentă este responsabilă pentru gestionarea mișcării informațiilor între noduri care iau alte noduri pentru interogări și replicare pe baza diferitelor valori. Această configurație este aceeași pentru toate nodurile din cluster, cu toate acestea poate varia în tipul său, să vedem care sunt disponibile:
SimpleSnitchFolosit în implementări simple de centre de date și a smulge configurat în acest mod nu folosește nicio informație din centrul de date. Comportamentul său este simplu și este de a găsi următorul nod.
Snitching dinamicAceastă configurație monitorizează performanța replicilor și o selectează pe cea mai bună pe baza unei valori simple care penalizează timpii de răspuns lungi și evită nodurile care vă comprimă informațiile.
RackInferringSnitchCeea ce face această configurație este să utilizeze adresa IP pentru a determina locația nodurilor, unde ultima parte a IP identifică nodul, a doua racks-urile și a treia centrele de date.
PropertyFileSnitchAceasta permite definirea topologiei clusterului într-un fișier de proprietăți, în general această configurație este utilizată dacă RackInferringSnitch neaplicabil.
GossipingPropertyFileSnitchUtilizează un fișier de proprietăți pentru configurarea inițială și continuă cu murmurul pentru a trimite informații către alte noduri.
Instalarea de Cassandra O vom face în echipă cu Windows 8, în care trebuie să îndeplinim anumite cerințe înainte, să vedem de ce avem nevoie:
1- Trebuie să avem cel puțin Java 7 instalat în sistemul nostru, dacă nu îl avem, putem descărca cea mai recentă versiune în următorul link.
2- Mai avem nevoie Pachet redistribuibil Microsoft Visual C ++ 2008 (x86).
3- În cele din urmă, conexiune la internet pentru a descărca pachetul DataStax.
Cu cerințele noastre revizuite, vom merge la pagina proiectului și vom căuta versiunea pe 32 sau 64 de biți care se potrivește sistemului nostru:

MARI

Dacă dorim să aruncăm o privire asupra documentației de conectivitate pentru Cassandra Cu diferitele limbaje de programare putem coborî pagina și putem vedea de ce avem nevoie pentru același lucru. După descărcare, instalăm ca orice aplicație Windows. Unde este important să menționăm că după această instalare, Cassandra va crea în mod implicit un grup de teste.
Odată cu instalarea, sunt instalate mai multe instrumente în sistemul nostru, unul dintre ele este interfața web a Cassandra apel OpsCenter, la care putem introduce dacă introducem în browser următoarea adresă:
 http: // localhost: 8888 / opscenter / index.html
Această interfață ne permite să facem mai multe lucruri interesante, totuși nu este cea mai optimă cu care să lucrăm Cassandra, dar în scopul acestui tutorial este important să-l cunoaștem, să vedem ce ne oferă și astfel să avem un punct de plecare pentru a începe să cunoaștem structura bazei de date.
Primul lucru pe care îl găsim la intrarea în această interfață este secțiunea din Bord, unde putem vizualiza diverse valori de performanță, cum ar fi starea nodului, capacitatea de stocare sau cererile de scriere:

MARI

În această interfață putem crea un nou cluster, pentru aceasta mergem în partea din dreapta sus și apăsăm Cluster nou, care va deschide următorul ecran:

Introducem datele solicitate și facem clic pe construiți cluster, pe lângă aceasta, putem adăuga noduri în mod egal în meniul derulant al Acțiuni cluster, în dreapta sus. În secțiune Nu da, putem vedea nodurile și centrele de date disponibile, precum și anumiți parametri precum starea de sănătate, dimensiunea datelor și chiar alertele generate:

MARI

În secțiune Activități Putem vedea o listă a activităților desfășurate în cluster, precum și un jurnal de evenimente, ceva destul de util atunci când suntem administratorii Bază de date:

MARI

Apoi avem cea mai importantă secțiune din interfața noastră web și acesta este Date, aici putem defini containerele noastre de informații mai cunoscute sub numele de spații de taste iar „tabelele” sau familii de coloane.
Pentru a crea un spațiul tastelor, mai întâi trebuie să mergem la secțiune Date și selectați acolo opțiunea Adăuga, introducem numele, strategia de replicare, pe care o explicăm că poate fi simplă sau topologie de rețea și factorul de replicare.

Am salvat și am fi creat deja spațiul tastelor, după cum ne amintim, aceste containere au o funcție cheie în Cassandra y este de a defini factorul de replicare. Cu containerul definit, vom adăuga un familia de coloane, pentru aceasta intrăm în spațiul tastelor și selectăm opțiunea Adăuga. Aici introducem numele, tipul coloanei și tipul comparatorului.

Cu aceasta ne-am creat deja familia de coloaneDupă cum putem vedea, este extrem de simplu, cu toate acestea această interfață ne limitează în multe lucruri și este doar un bun punct de plecare pentru utilizatorii începători care doresc să înțeleagă modul în care structura Cassandra și cum se descurcă el clustere, noduri, spații de taste și familii de coloane.
Cu aceasta am terminat acest tutorial, unde am putut vedea care este arhitectura Cassandra, protocolul, componentele și instalarea acestuia. Am aflat despre structură prin intermediul interfeței web, dar cu aceasta am atins doar vârful aisbergului, în viitoarele tutoriale vom intra pe deplin cu CQL și cum să lucrați profesional Cassandra.

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave