Razlika između HBase i Cassandra

HBase je baza podataka koja za pohranu koristi datotečni sustav Hadoop distribuiran. HBase je važan dio HDFS-a i odvija se na vrhu Hadoop Clustera. HBase nije tradicionalna relacijska baza podataka, zahtijeva različit pristup modeliranju podataka. Cassandra radi na modelu replikacije podataka tako da u slučaju nedostupnosti bilo kojeg čvora neće doći do gubitka podataka. Cassandra je distribuirana baza podataka što znači da klijentu podaci mogu pristupiti s bilo kojeg klastera i s bilo kojeg čvora

1.1) Kasandra:

Pokrenuo ga je Facebook jer je uvijek na zahtjev aplikacije. Cassandra je pokrenuta 2005. godine i postala je dostupna javnosti 2008. godine. Cassandra je razvijena za uvijek aktualne aplikacije poput društvenih mreža poput Facebooka i Twittera.

Cassandra radi na "uvijek uključenoj" arhitekturi i ima Active-Active model čvora, tako da nema SPoF (Single point of neuspjeh). CQL (Cassandra Query Language) je Cassandrov jezik upita, ali ima sintaksu istu kao SQL. Podržava sve glavne OS poput Linuxa, Unixa, OSX-a i Windows.

Uvijek uključen:

Cassandra je baza podataka s modelom distribucije i svi su čvorovi unutar klastera jednaki. Podaci se repliciraju na podesivim čvorovima, tako da u slučaju kvara nekih ne. čvorova neće rezultirati gubitkom podataka.

(Uvijek na modelu)

Na slici 1, sva su četiri čvora sinkronizirana međusobno i repliciraju podatke unutar klastera. Svi rade na aktivnom aktivnom modelu, tako da u slučaju kvara na čvoru neće doći do gubitka podataka. Klijent može pročitati podatke iz ostalih dostupnih čvorova / čvorova.

1.2) HBase:

HBase je baza podataka zasnovana na NoSQL i dizajnirana je za obradu upita u velikim tablicama koje imaju milijarde redaka s milijunima stupaca i prolaze kroz grupu robnog / uobičajenog hardvera. Omogućuje vam mogućnosti upita u stvarnom vremenu brzinom " ključ / vrijednost trgovine " .

HBase se zapravo temelji / radi na četverodimenzionalnom modelu podataka.

  • ID retka / ključ retka
  • Obitelj kolona.
  • Parovi ključ i vrijednost.

(Slika 2, Primjer sheme tablice u HBase.)

Na slici 2, tablica je zbirka porodice stupaca i obitelj stupaca je zbirka stupaca. Stupci su zbirka parova ključ-vrijednost

(Slika 3, Uzorak tablice u HBaseu)

Na slici 3, porodice stupaca su zbirka podataka o studentima Alumnija, a ID-ovi redaka (ključevi redaka) sadrže Student's Roll No.

U stvari, ključevi redaka drže jedinstvenu vrijednost u odnosu na podatke Stupa porodice. Korištenjem ključa retka, možete izvući čitave detalje, razloge zbog kojih su baze podataka usmjerene prema stupcu mnogo brže od tradicionalnih baza podataka.

Apache HBase može se koristiti za slučajni pristup čitanju / pisanju i pruža podršku neuspjeha. Također podržava replikaciju i rad na modelu distribucijske baze podataka.

Usporedba HBase-a protiv Cassandra (Infographics)

Ispod je 9 najboljih razlika između HBase i Cassandra

Ključne razlike između HBase i Cassandra

Ispod su popisi bodova, opišite ključne razlike između HBase i Cassandra:

1) Za unutarnju komunikaciju s čvorovima, Cassandra koristi GOSSIP protokol, dok se HBase temelji na Zookeeper-u. Usluge GOSSIP protokola integrirane su s Cassandra s druge strane Zookeeper je potpuno zasebna aplikacija za distribuciju.

2) U Cassandra arhitekturi, svi čvorovi djeluju kao Active Node, dok HBase arhitekt slijedi Master-Slave Node model. U modelu Active-Active Node, nema SPoF (Single Point of Failure). U HBase-u, ako Master čvor padne niz čitav klaster neće biti dostupan.

3) Podrška za HBase model pretraživanja binarnog stabla dok Cassandra ne podržava B-Tree model Bez B-Treea, ne možete pretraživati ​​Korisnikovu kolonu obitelji za sve koji imaju godišnjicu u travnju, dok možete tražiti sve koji žive u Pekingu s Godišnjica u travnju.

4) HBase, podrška C, C ++, Java, Python, Scala skriptnih jezika, dok Cassandra također podržava JavaScript i Ruby.

5) HBase ima jednu značajku nazvanu koprocesori dok Cassandra nema takvu značajku kao dosad. Koprocesori pružaju knjižnicu i okruženje za izvršavanje korisničkog koda unutar HBase poslužitelja i master procesa.

6) HBase dizajniran je za podršku skladišta podataka dok će Cassandra biti savršena za sve vrijeme pokretane aplikacije poput Web-a i mobilnih aplikacija.

7) HBase jezik upita prilagođeni je jezik koji treba naučiti dok Cassandra koristi svoj razvijeni CQL (Cassandra Query Language) koji je SQL-jezik

8) Upravljanje Cassandrom mnogo je lakše nego HBase-om. U Cassandri treba pokrenuti jedan Java proces po čvoru, dok je za HBase potreban potpuno operativan HDFS, Nekoliko HBase procesa i Zookeeper sustav.

9) HBase završava s provjerama i automatskim rebalansom dok Cassandra ne podržava rebalansiranje klastera u cjelini.

10) Na temelju " CAP teorema", Cassandra radi na AP modelu, dok je HBase CP model.

Teorem CAP-a

Ova se teorema koristi za distribuirane sustave. C označava konzistentnost, a znači dostupnost & P je tolerancija particije. CAP teorem je objašnjen u nastavku:

C (dosljednost): Dosljednost znači da ako je netko zapisao vrijednost u bazu podataka, drugi mogu odmah pročitati istu vrijednost.

O (Dostupnost) : Dostupnost znači ako neki čvorovi nisu dostupni u vašem klasteru (Čvorovi su nestali / ne žive u klasteru zbog nekog problema) neće utjecati na čitav klaster i distribuirani sustav / baza podataka bit će im dostupna za pristup podacima. Klaster će biti dostupan za sve vrste zadataka.

P (Tolerancija particije): Tolerancija particije znači ako se jedan Data Center i dalje spušta, što ne bi trebalo utjecati na podatke predstavljene na čvorovima, a svi bi podaci trebali biti dostupni u bilo kojem trenutku. Znači, Tolerancija particije omogućava bolju replikaciju podataka u drugi podatkovni centar kao i unutar okruženja klastera.

Usporedna tablica HBase vs Cassandra

točkeHBaseCassandra
Teorem CAP-aKonzistentnost i dostupnostDostupnost i tolerancija particije
koprocesorDaNe
rebalansHBase omogućuje automatsko ponovno uravnoteženje unutar klastera.Cassandra također pruža uravnoteženje, ali ne za ukupni klaster
Model arhitektureTemelji se na Master-Slave arhitektonskom modeluCassandra se temelji na aktivnom i aktivnom čvoru
Baza podatakaTemelji se na Google BigTableuCassandra se temelji na Amazon DynamoDB
SPoF (jedinstvena točka kvara)Ako glavni čvor nije dostupan, cijeli klaster neće biti dostupanSvi čvorovi imaju istu ulogu unutar klastera, tako da nema SPoF
DR (Obnova od katastrofe)DR je moguće ako su konfigurirana dva glavna čvora.Da, kao i svi čvorovi koji imaju istu ulogu
HDFS kompatibilnostDa, kako HBase pohranjuje sve metapodatke u HDFSNe
DosljednostjakNije jak kao HBase

Zaključak - HBase protiv Cassandra

Facebook i druga strana društvenih mreža preferirali bi HBase (ranije su obojica koristili Cassandra, pogledajte Facebook post) zbog njegove dostupnosti drugi sektor bankarskih domena traži sigurnost za svaku svoju financijsku transakciju, pa bi odabrali Cassandra preko HBase-a.

Cassandra Ključne karakteristike uključuju visoku dostupnost, minimalnu administraciju i bez SPoF (Single Point of Failure) druge strane HBase je dobra za brže čitanje i pisanje podataka s linearnom skalabilnošću.

Tvrtke poput Verizon, Bloomberg, Bank of America i još mnogo toga koriste HBase, a Cassandra koriste velike web stranice za društveno umrežavanje kao što su Twitter, Facebook itd. …

Ne možemo zaključiti koji je najbolji, HBase i Cassandra imaju svoje prednosti i mane. Stvarne performanse i HBase i Cassandra baze podataka mogu se vidjeti u proizvodnom okruženju.

Preporučeni članci:

Ovo je vodič za HBase vs Cassandra, njihovo značenje, usporedbu "Head to Head", ključne razlike, tablicu usporedbe i zaključak. Možete pogledati i sljedeće članke da biste saznali više -

  1. Hadoop vs Apache Spark - Zanimljive stvari koje trebate znati
  2. Kako razbiti Hadoopin razvojni razgovor?
  3. Top 5 trendova velikih podataka
  4. 5 izazova velike analize podataka

Kategorija: