Razlika između košnice i HBase
Apache Hive i HBase su velike podatkovne tehnologije temeljene na Hadoopu. Oboje su koristili podatke. Hive i HBase rade na vrhu Hadoopa, a razlikuju se u svojoj funkcionalnosti. Hive je SQL dijalekt temeljen na smanjenju karata, dok HBase podržava samo MapReduce. HBase pohranjuje podatke u obliku parova obitelji / ključeva / vrijednosti ili stupaca dok Hive ne pohranjuje podatke.
Međusobne razlike između Hive i HBase (Infographics)
Ispod je 8 najboljih razlika između Hive i HBase
Ključne razlike između Hive i HBase
- Hbase je ACID kompatibilan dok košnica nije.
- Hive podržava kriterije particioniranja i filtriranja na temelju formata datuma dok HBase podržava automatiziranu particiju.
- Hive ne podržava izjave o ažuriranju dok ih HBase podržava.
- Hbase je brži u usporedbi s košnicom u dohvaćanju podataka.
- Osip se koristi za obradu strukturiranih podataka, dok HBase, budući da je bez sheme, može obraditi bilo koju vrstu podataka.
- Hbase je (horizontalno) skalabilan u usporedbi s košnicom.
- Kupac analizira podatke na HDFS-u uz podršku SQL upita, a zatim ih pretvaraju u mapu i smanjuju zadatke dok u Hbase-u, budući da struji u stvarnom vremenu, izravno obavlja svoje operacije na bazi podataka podjelom na tablice i obitelji stupaca.
- kad dođemo do upita u košnici podataka koristi se školjka poznata kao ljuska Hive za izdavanje naredbi, dok je HBase, budući da je baza podataka, upotrijebit ćemo naredbu za obradu podataka u HBase.
- Za odlazak do ljuske košnice upotrijebit ćemo naredbenu košnicu. Nakon davanja, pojavit će se kao košnica>. U HBaseu jednostavno dajemo kao Use HBase.
Tabela uspoređivanja košnice sa HBase
Osnove za usporedbu | Košnica | Hbase |
Vrsta baze podataka | To nije baza podataka | Podržava NoSQL bazu podataka |
Vrsta obrade | Podržava grupnu obradu tj. OLAP | Podržava protok podataka u stvarnom vremenu, tj. OLTP |
Model baze podataka | Kućište podržava imati model sheme | Hbase nije shema |
Latentnost | Košnica ima malu latenciju | Hbase ima visoku latenciju |
cijena | To je skuplje u odnosu na HBase | Isplativa je |
kada koristiti | Osip se može koristiti kada ne želimo pisati složeni MapReduce kôd | HBase se može koristiti kada želimo imati slučajni pristup za čitanje i pisanje velike količine podataka |
Koristite slučajeve | Trebalo bi ga koristiti za analizu podataka koji su pohranjeni u određenom vremenskom razdoblju | Trebalo bi ga koristiti za analizu podataka u stvarnom vremenu. |
Primjeri | Hubspot je primjer za košnicu | Facebook je najbolji primjer za Hbase |
Razlike u kodiranju između Hive i HBase
Raspravimo sada o osnovnim razlikama između Hive i HBase u kodiranju.
Osnove za usporedbu | Košnica | Hbase |
Za stvaranje baze podataka | USPOREDI BAZU PODATAKA (AKO NE POSTOJI) BAZA-IME; | Budući da je Hbase baza podataka, ne trebamo stvarati određenu bazu podataka |
Za ispuštanje baze podataka | DROBNI DATABAS (AKO POSTOJI) PODATAK IME BAZE (OGRANIČENO ILI KASCADNO) | NA |
Za izradu tablice | USPOREDI (PRIVREMENI ILI VANJSKI) TABELA (AKO NE POSTOJI) IME TABELE ((naziv naziva stupca (komentar stupca-komentar), ….)) (komentar tablice_komentar) (ROW FORMAT-format retka) (pohranjuje se u obliku datoteke) | USTVARITE '', '' |
Da biste promijenili tablicu | ALTER TABELA naziv RENAME TO novo-ime
ALTER TABLE naziv DROP (COLUMN) naziv stupca NAZIV PROTIV TABELE DODAJU KOLUME (col-spec (, col-spec ..)) ALTER TABLE naziv PROMIJENI naziv stupca new-name new-type NAZIV PROTIV TABELE ZAMJENITE KOLUME (col-spec (, col-spec ..)) | ALTER 'TABLE-NAME', NAME => 'COLUMN-NAME', VERSIONS => |
Onemogućavanje tablice | NA | onemogući 'TABLE-NAME' -> da biste onemogućili navedeno ime tablice
onesposobiti sve tablice koje odgovaraju pravilnom izrazu |
Omogućavanje tablice | NA | omogućite "TABLE-NAME" |
Da biste bacili stol | DROP TABLICA AKO POSTOJI naziv tablice | Ako želimo ispustiti tablicu, prvo je moramo isključiti
onemogući 'naziv tabele' drop 'naziv tabele' Slično tome, možemo koristiti invalid_all i drop_all za brisanje tablica koje odgovaraju zadanom regularnom izrazu. |
Za popis baza podataka | prikažite baze podataka; | NA |
Za popis tablica u bazi podataka | prikažite tablice; | popis |
Da biste opisali shemu tablice | opisati naziv tablice; | opišite "naziv tablice" |
Integracija košnice i HBase
- Instalirajte i konfigurirajte košnicu.
- Instalirajte i konfigurirajte HBase.
- Za integraciju košnice i HBase, u košnici koristimo SKLADIŠTENE RUKE.
- Storage Handlers je kombinacija SERDE, InputFormat, OutputFormat koja prihvaća bilo koji vanjski entitet kao tablicu u košnici.
- Tako ova značajka pomaže korisniku u izdavanju SQL upita, bilo da je tablica prisutna u Hadoopu ili u bazi podataka zasnovanoj na NOSQL-u, kao što su HBase, MongoDB, Cassandra, Amazon DynamoDB.
- Sada ćemo pogledati jedan primjer povezivanja Hive-a i HBase-a pomoću HiveStorageHandlera:
- Prvo moramo stvoriti Hbase tablicu pomoću naredbe.
stvorite "Student", "personalinfo", "dept info"
-> Osobni i podaci o podacima stvorite dvije različite grupe stupaca u studentskoj tablici.
- Neke podatke moramo umetnuti u tablicu učenika. Na primjer, kao što je spomenuto u nastavku.
stavite 'student', 'sid01', 'personalinfo: ime', 'Ram'
stavite 'student', 'sid01', 'personalinfo: mailid', ' '
stavite 'student', 'sid01', 'deptinfo: deptname', 'Java'
stavi 'Student', 'sid01', 'deptinfo: joinyear', '1994'
-> Slično tome, možemo stvoriti podatke za sid02, sid03…
- Sada moramo kreirati tablicu Hive koja upućuje na tablicu HBase.
- Za svaki stupac u Hbase-u stvorit ćemo jednu posebnu tablicu za taj stupac u košnici. U ovom slučaju, u košnici ćemo stvoriti 2 tablice
create external table student_hbase(sid String, name String, mailid String)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler with serdeproperties("hbase.columns.mapping"=":key, personalinfo:name, personalinfo:mailid")
tblproperties("hbase.table.name"="student");
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
-> Slično tome, u košnici moramo izraditi tablicu podataka o odrednicama.
- Sada možemo napisati SQL upit u košnicu kao što je spomenuto u nastavku.
select * from student_hbase;
Na taj način možemo integrirati košnicu s HBase-om.
Zaključak - Hive vs HBase
Kao što se raspravljalo, obje su različite tehnologije koje pružaju različite funkcionalnosti gdje Hive radi koristeći SQL jezik, a može se nazvati i kada HQL i HBase koriste parove ključ-vrijednost za analizu podataka. Hive i HBase rade bolje ako se kombiniraju jer košnica ima malu latenciju i može obraditi ogromnu količinu podataka, ali ne može održavati ažurne podatke, a HBase ne podržava analizu podataka, ali podržava ažuriranje na razini retka na velikoj količini podataka.
Preporučeni članak
Ovo je vodič za košnicu i HBase, njihovo značenje, usporedbu glave do glave, ključne razlike, tablicu usporedbe i zaključak. Možete pogledati i sljedeće članke da biste saznali više -
- Apache Pig vs Apache košnica - 12 najboljih korisnih razlika
- Otkrijte 7 najboljih razlika između Hadoopa i HBasea
- Top 12 usporedba Apache košnice i Apache HBase (Infographics)
- Hadoop vs košnica - saznajte najbolje razlike