HBase Handledning för nybörjare: Vad är HBase? Lär dig på 3 dagar!

Sammanfattning av HBase Handledning

Hbase är ett kolumnorienterat databashanteringssystem som körs ovanpå HDFS (Hadoop Distributed File System). I den här HBase-handledningen för nybörjare kommer du att lära dig Apache HBase-grunderna och avancerade koncept. Denna HBase-kurs innehåller alla HBase-grunderna från introduktion, installation, arkitektur till avancerade saker.

Vad är HBase?

HBase är ett öppen källkod, kolumnorienterat distribuerat databassystem i en Hadoop miljö. Från början var det Google Big Table, efteråt; det döptes om till HBase och är huvudsakligen skrivet i Java.  Apache HBase behövs för realtids Big Data-applikationer.

HBase kan lagra enorma mängder data från terabyte till petabyte. Tabellerna som finns i HBase består av miljarder rader med miljontals kolumner. HBase är byggd för operationer med låg latens, som har vissa specifika egenskaper jämfört med traditionella relationsmodeller.

HBase utbildningsplan

Här är vad vi tar upp i denna Apache HBase Training Guide

👉 Lesspå 1 Architecture av HBase — HBase Architecture, komponenter och datamodell
👉 Lesspå 2 Installation av HBase — HBase Installation på Ubuntu
👉 Lesspå 3 HBase Shell-kommandon — Lär dig med exempel
👉 Lesspå 4 HBase Skapa tabell — Steg för att skapa en tabell i HBase med hjälp av Java API
👉 Lesspå 5 Infoga och hämta data i HBase — get(), put(), scan() Exempel
👉 Lesspå 6 Prestanda flaskhalsar i HBase — HBase fördel och begränsningar
👉 Lesspå 7 Hbase intervjufrågor — Topp 30 Hbase-intervjufrågor och svar

Vad kommer du att lära dig i denna HBase-handledning för nybörjare?

I denna HBase-handledning för nybörjare kommer du att lära dig vad Apache HBase är Architecture of HBase, Hur man installerar HBase, Steg för att skapa en tabell i HBase, HBase Advantage and Limitations, etc.

Varför välja HBase?

En tabell för en populär webbapplikation kan bestå av miljarder rader. Om vi ​​vill söka en viss rad från en sådan enorm mängd data, är HBase det idealiska valet eftersom hämtningstiden för frågor är kortare. De flesta onlineanalysapplikationer använder HBase.

Traditionella relationsdatamodeller klarar inte prestandakraven för mycket stora databaser. Dessa prestanda- och bearbetningsbegränsningar kan övervinnas av Apache HBase.

Apache HBase-funktioner

  • HBase är byggd för operationer med låg latens
  • HBase används flitigt för slumpmässiga läs- och skrivoperationer
  • HBase lagrar en stor mängd data i form av tabeller
  • Ger linjär och modulär skalbarhet över klustermiljö
  • Strikt konsekvent för läs- och skrivoperationer
  • Automatisk och konfigurerbar skärning av bord
  • Stöd för automatisk failover mellan regionservrar
  • Bekväm basklass för backning Hadoop MapReduce jobb i HBase-tabeller
  • Lätt att använda Java API för klientåtkomst
  • Blockera cache och Bloom Filter för realtidsfrågor
  • Frågepredikat trycks ned via filter på serversidan.

Vikten av NoSQL-databaser i Hadoop

Inom big data-analys, Hadoop spelar en viktig roll för att lösa typiska affärsproblem genom att hantera stora datamängder och ger de bästa lösningarna inom analysdomänen.

I Hadoops ekosystem spelar varje komponent sin unika roll för

  • Databearbetning
  • Datavalidering
  • Datalagring

När det gäller lagring av ostrukturerad, semistrukturerad datalagring samt hämtning av sådana data är relationsdatabaser mindre användbara. Det är också en utmanande uppgift att hämta resultat genom att använda en fråga på stora datamängder som lagras i Hadoop-lagring. NoSQL-lagringsteknologier ger den bästa lösningen för snabbare sökningar på stora datamängder.

Andra NoSQL-lagringstyp Databaser

Några av de NoSQL-modeller som finns på marknaden är Cassandra, MongoDBoch CouchDB. Var och en av dessa modeller har olika sätt för lagringsmekanism.

Till exempel, MongoDB är en dokumentorienterad databas från NoSQL-släktträdet. Jämfört med traditionella databaser ger den de bästa funktionerna när det gäller prestanda, tillgänglighet och skalbarhet. Det är en dokumentorienterad databas med öppen källkod och den är skriven i C++.

Cassandra är också en distribuerad databas från Apache-programvara med öppen källkod som är designad för att hantera en enorm mängd data som lagras över råvaruservrar. Cassandra ger hög tillgänglighet utan en enda felpunkt.

Medan CouchDB är en dokumentorienterad databas där varje dokumentfält lagras i nyckel-värde kartor.

Hur skiljer sig HBase från andra NoSQL-modeller

HBase-lagringsmodellen skiljer sig från andra NoSQL-modeller som diskuterats ovan. Detta kan sägas enligt följande.

  • HBase lagrar data i form av nyckel/värdepar i en kolumnmodell. I den här modellen är alla kolumner grupperade som kolumnfamiljer.
  • HBase tillhandahåller en flexibel datamodell och tillgång med låg latens till små mängder data lagrade i stora datamängder.
  • HBase ovanpå Hadoop kommer att öka genomströmningen och prestandan för distribuerade klusteruppsättningar. I sin tur ger den snabbare slumpmässiga läs- och skrivoperationer.

Vilken NoSQL-databas ska jag välja?

MongoDB, CouchDBoch Cassandra är databaser av NoSQL-typ som är funktionsspecifika och används enligt deras affärsbehov. Här har vi listat olika NoSQL-databas enligt deras användningsfall.

Databastyp baserad på funktion Exempel på databas Användningsfall (när det ska användas)
Nyckelvärde Redis, MemcacheDB Cacha, köa, distribuera information
Kolumnorienterad Cassandra, HBase Skalning, hålla ostrukturerad, icke-flyktig
Dokumentorienterad MongoDB, Couchbase Kapslad information, JavaSkriptvänlig
Grafbaserad OrientDB, Neo4J Hantering av komplex relationsinformation. Modellering och hanteringsklassificering.

HBase vs. Bikupa

Funktioner HBase Bikupa
Databasmodell Bred kolumnbutik Relationellt DBMS
Dataschema Schemafri Med Schema
SQL-stöd Nej Ja, den använder HQL (Hive query language)
Partitionsmetoder Sharding Sharding
Konsistensnivå Omedelbar konsistens Eventuell konsistens
Sekundära index Nej Ja
Replikeringsmetoder Valbar replikeringsfaktor Valbar replikeringsfaktor

HBase vs. RDBMS

När vi jämför HBase med traditionella relationsdatabaser måste vi ta hänsyn till tre nyckelområden. Dessa är datamodell, datalagring och datadiversitet.

HBASE RDBMS
  • Schemalöst i databasen
  • Har fixat schema i databasen
  • Kolumnorienterade databaser
  • Radorienterad datalagring
  • Designad för att lagra avnormaliserade data
  • Designad för att lagra normaliserad data
  • Breda och glest befolkade tabeller som finns i HBase
  • Innehåller tunna tabeller i databasen
  • Stöder automatisk partitionering
  • Har inget inbyggt stöd för partitionering
  • Väl lämpad för OLAP-system
  • Väl lämpad för OLTP-system
  • Läs endast relevant data från databasen
  • Hämta en rad i taget och kan därför läsa onödiga data om bara en del av datan i en rad krävs
  • Strukturerad och semistrukturerad data kan lagras och bearbetas med HBase
  • Strukturerad data kan lagras och bearbetas med hjälp av RDBMS
  • Möjliggör aggregering över många rader och kolumner
  • Aggregation är en dyr operation

Sammanfattning

HBase tillhandahåller unika funktioner och kommer att lösa typiska industriella användningsfall. Som kolumnorienterad lagring ger den snabb sökning, hämtning av resultat och en stor mängd datalagring. Den här kursen är en komplett steg-för-steg-introduktion till HBase.