HBase Tutorial for begyndere: Hvad er HBase? Lær på 3 dage!

HBase Selvstudieoversigt

Hbase er et kolonneorienteret databasestyringssystem, der kører oven på HDFS (Hadoop Distributed File System). I denne HBase-tutorial for begyndere lærer du Apache HBase grundlæggende og avancerede concepts. Dette HBase-kursus indeholder alt det grundlæggende i HBase fra introduktion, installation, architecture til avancerede ting.

Hvad er HBase?

HBase er et open source, kolonneorienteret distribueret databasesystem i en Hadoop miljø. I starten var det Google Big Table, bagefter; den blev omdøbt til HBase og er primariskrevet på Java.  Apache HBase er nødvendig for real-time Big Data-applikationer.

HBase kan gemme enorme mængder data fra terabyte til petabyte. Tabellerne til stede i HBase består af billioner af rækker med millioner af kolonner. HBase er bygget til lav latenstid operationer, som har nogle specifikke træk sammenlignet med traditionelle relationsmodeller.

HBase uddannelsespensum

Her er, hvad vi dækker i denne Apache HBase Training Guide

👍 Lektion 1 Architecture af HBase — HBase Architecture, komponenter og datamodel
👍 Lektion 2 HBase installation — HBase Installation til Ubuntu
👍 Lektion 3 HBase Shell-kommandoer — Lær med eksempel
👍 Lektion 4 HBase Opret tabel — Trin til at oprette en tabel i HBase ved hjælp af Java API
👍 Lektion 5 Indsæt og hent data i HBase — get(), put(), scan() Eksempler
👍 Lektion 6 Ydeevne flaskehalse i HBase — HBase fordel og begrænsninger
👍 Lektion 7 Hbase interviewspørgsmål — Top 30 Hbase-interviewspørgsmål og -svar

Hvad vil du lære i denne HBase-tutorial for begyndere?

I denne HBase-tutorial for begyndere vil du lære, hvad Apache HBase er Architecture of HBase, hvordan man installerer HBase, trin til at oprette en tabel i HBase, HBase Advantage og begrænsninger osv.

Hvorfor vælge HBase?

Et bord til en populær webapplikation kan bestå af billioner af rækker. Hvis vi ønsker at søge i en bestemt række fra en så stor mængde data, er HBase det ideelle valg, da forespørgselshentetiden er kortere. De fleste af onlineanalyseapplikationerne bruger HBase.

Traditionelle relationelle datamodeller opfylder ikke ydeevnekravene i meget store databaser. Disse ydeevne- og behandlingsbegrænsninger kan overvindes af Apache HBase.

Apache HBase funktioner

  • HBase er bygget til lav latenstid operationer
  • HBase bruges flittigt til tilfældig læsning og skrivning operationer
  • HBase gemmer en stor mængde data i form af tabeller
  • Giver lineær og modulær skalerbarhed over cluster miljø
  • Strengt konsekvent at læse og skrive operationer
  • Automatisk og konfigurerbar skæring af borde
  • Understøtter automatisk failover mellem regionsservere
  • Praktiske basisklasser til opbakning Hadoop MapReduce job i HBase-tabeller
  • Let at bruge Java API til klientadgang
  • Bloker cache og Bloom Filtre til realtidsforespørgsler
  • Forespørgselsprædikat skubber ned via filtre på serversiden.

Vigtigheden af ​​NoSQL-databaser i Hadoop

I big data-analyse, Hadoop spiller en afgørende rolle i løsningen af ​​typiske forretningsproblemer ved at administrere store datasæt og giver de bedste løsninger inden for analysedomænet.

I Hadoop ecossystem, hver komponent spiller sin unikke rolle for

  • Databehandling
  • Data validering
  • Datalagring

Med hensyn til lagring af ustruktureret, semi-struktureret datalagring samt hentning af sådanne data, er relationelle databaser mindre nyttige. Det er også en udfordrende opgave at hente resultater ved at anvende forespørgsler på enorme datasæt, der er gemt i Hadoop-lagring. NoSQL-lagringsteknologier giver den bedste løsning til hurtigere forespørgsler på enorme datasæt.

Andre NoSQL-lagringstype-databaser

Nogle af de NoSQL-modeller, der findes på markedet, er Cassandra, MongoDBog CouchDB. Hver af disse modeller har forskellige måder til opbevaringsmekanisme.

For eksempel: MongoDB er en dokumentorienteret database fra NoSQL-slægtstræet. Sammenlignet med traditionelle databaser giver det de bedste funktioner med hensyn til ydeevne, tilgængelighed og skalerbarhed. Det er en open source dokumentorienteret database, og den er skrevet i C++.

Cassandra er også en distribueret database fra open source Apache-software, som er designet til at håndtere en enorm mængde data, der er lagret på tværs af råvareservere. Cassandra giver høj tilgængelighed uden et enkelt fejlpunkt.

Mens CouchDB er en dokumentorienteret database, hvor hvert dokumentfelt er gemt i nøgleværdikort.

Hvordan adskiller HBase sig fra andre NoSQL-modeller

HBase-lagringsmodel er forskellig fra andre NoSQL-modeller diskuteret ovenfor. Dette kan oplyses som følger.

  • HBase gemmer data i form af nøgle/værdi-par i en søjleformet model. I denne model er alle kolonnerne grupperet sammen som kolonnefamilier.
  • HBase giver en fleksibel datamodel og lav latensadgang til små mængder data gemt i store datasæt.
  • HBase oven på Hadoop vil øge gennemløbet og ydeevnen af ​​distribuerede cluster Opsætning. Til gengæld giver det hurtigere tilfældig læsning og skrivning operationer.

Hvilken NoSQL-database skal jeg vælge?

MongoDB, CouchDBog Cassandra er NoSQL-databaser, der er funktionsspecifikke og bruges i henhold til deres forretningsbehov. Her har vi oplistet forskellige NoSQL-databaser i henhold til deres anvendelsestilfælde.

Databasetype baseret på funktion Eksempel på database Use case (hvornår skal bruges)
Nøgle/værdi Redis, MemcacheDB Caching, kø-ing, distribution af information
Søjleorienteret Cassandra, HBase Skalering, holde ustruktureret, ikke-flygtig
Dokumentorienteret MongoDB, Couchbase Indlejret information, JavaScript-venlig
Graf-baseret OrientDB, Neo4J Håndtering Complex relationel information. Klassificering af modellering og håndtering.

HBase vs. Hive

Funktionalitet HBase Hive
Database model Bred kolonne butik Relationel DBMS
Dataskema Skemafri Med skema
SQL support Ingen Ja, den bruger HQL (Hive-forespørgselssprog)
Opdelingsmetoder sharding sharding
Konsistensniveau Øjeblikkelig konsistens Begivenhedskonsistens
Sekundære indekser Ingen Ja
Replikationsmetoder Valgbar replikationsfaktor Valgbar replikationsfaktor

HBase vs. RDBMS

Mens vi sammenligner HBase med traditionelle relationelle databaser, er vi nødt til at tage tre nøgleområder i betragtning. Det er datamodel, datalagring og datadiversitet.

HBASE RDBMS
  • Skemafri i databasen
  • Har fast skema i databasen
  • Kolonneorienterede databaser
  • Rækkeorienteret datalager
  • Designet til at gemme de-normaliserede data
  • Designet til at gemme normaliserede data
  • Brede og tyndt befolkede tabeller til stede i HBase
  • Indeholder tynde tabeller i databasen
  • Understøtter automatisk partitionering
  • Har ingen indbygget understøttelse af partitionering
  • Velegnet til OLAP-systemer
  • Velegnet til OLTP-systemer
  • Læs kun relevante data fra databasen
  • Hent en række ad gangen og kan derfor læse unødvendige data, hvis kun nogle af dataene i en række er påkrævet
  • Strukturerede og semistrukturerede data kan lagres og behandles ved hjælp af HBase
  • Strukturerede data kan lagres og behandles ved hjælp af RDBMS
  • Aktiverer aggregering over mange rækker og kolonner
  • Aggregation er dyrt operation

Resumé

HBase giver unikke funktioner og vil løse typiske industrielle brugssager. Som kolonneorienteret lagring giver det hurtig forespørgsel, hentning af resultater og en høj mængde datalagring. Dette kursus er en komplet trin-for-trin introduktion til HBase.