Verschillen tussen MongoDB versus HBase

Databases spelen een cruciale rol in alle organisaties en industrieën. Alternatieven hiervoor groeien snel en vereisen snellere resultaten. Om aan deze nieuwe vereisten te voldoen, gebruiken industrieën niet-tabelvormige databases, we hebben MongoDB versus HBase. MongoDB is een open-source niet-relationele database. Alle gerelateerde informatie wordt samen opgeslagen om snel toegang tot de gegevens te krijgen. HBase daarentegen is geschreven in Java en werkt volgens het Hadoop-framework. Het gebruikt een sleutel / waarde-paar voor toegang tot willekeurige gegenereerde patronen.

Vergelijking van kop tot kop tussen MongoDB en HBase (infographics)

Hieronder vindt u de Top 4-vergelijkingen tussen MongoDB en HBase

Belangrijkste verschillen tussen MongoDB versus HBase

Beide MongoDB versus HBase zijn populaire keuzes in de markt; laten we enkele van de belangrijkste verschillen tussen MongoDB en HBase bespreken:

HBase versus MongoDB die beide geen SQL-databases zijn, hebben significante verschillen. Het querymodel van MongoDB biedt verschillende soorten projecties, filtering en aggregatiefuncties. Hbase heeft daarentegen een sleutel / waarde-koppeling voor gegevens.

Voor zoeken op tekst biedt MongoDB een native functie voor tekstindexen en in HBase worden gegevens gerepliceerd voor een zoekmachine. MongoDB biedt drie knooppunten namelijk primaire en secundaire en één voor replicatie. HBase heeft 10 knooppunten voor masters, regioservers, stand-by naamknooppunten, gegevensknooppunten en dierenverzorger.

In MongoDB kan partitioneren worden gedaan met behulp van een hash, bereik en zone-sharding, terwijl HBase alleen hashingtechniek biedt.

Met betrekking tot back-up en herstel heeft MongoDB Ops-manager en Atlas consistent, wat tijdige back-ups en shanned clusters biedt. HBase maakt elke 60 seconden momentopnamen van gegevens op elk knooppunt van het cluster.

Groeperen in MongoDB wordt uitgevoerd door gebruik te maken van de aggregatiepijplijn en in HBase gebruikt het de traditionele Hadoop-kaartreductie.

Vergelijkingstabel MongoDB versus HBase

Hierna volgt de vergelijkingstabel tussen MongoDB en HBase

De basis van vergelijking tussen MongoDB versus HBase MongoDB HBase
Fundamenteel verschil en geschiedenisMongoDB is een open source documentgericht NoSQL-databaseprogramma. Het maakt gebruik van JSON-documenten met schema's. De ontwikkeling van MongoDB werd in 2007 gestart door 10gen-software. Het is platformonafhankelijk en biedt hoge beschikbaarheid en schaalbaarheid. Het werkt op collectie- en documentconcept. Het maakt voornamelijk gebruik van een database, verzameling en document.HBase is ook een open source niet-relationeel gedistribueerd databasemodel. Het is ontwikkeld door Apache Foundation en draait op het Hadoop Distributed File System. Het was begonnen door het bedrijf Powerset omdat ze grote hoeveelheden gegevens nodig hadden. Het is vergelijkbaar met de grote tabel van Google en biedt toegang tot enorme hoeveelheden gegevens. Het maakt deel uit van het Hadoop-ecosysteem en dataconsument kan de gegevens lezen en openen met HBase.
Installatie1) U kunt MongoDB downloaden van https://www.mongodb.org/downloads

Eerst moet u zorgen voor uw Windows-versie.

2) Na het downloaden kunt u de map mongodb-win32-i386- (versie) of mongodb-win32-x86_64- (versie) uitpakken.

3) Ga naar de opdrachtprompt en voer de onderstaande opdracht uit:

C: \> verplaats mongodb-win64- * mongodb 1 dir (s) verplaatst. De standaardlocatie voor deze map moet C: \ data \ db zijn.

4) Ga nu naar de map bin in de installatiemap van MongoDB en stel het pad in zoals hieronder:

C: \ Users \ XYZ> d:

D: \> cd "instellen"

D: \ set up> cd mongodb

D: \ set up \ mongodb> cd bin

D: \ set up \ mongodb \ bin> mongod.exe –dbpath “d: \ set up \ mongodb \ data”

5) Installeer MongoDB en installeer het met:

apt-get install mongodb-10gen = 2.2.3 en start MongoDB met:

sudo service mongodb start

Linux moet worden ingesteld voordat Hadoop wordt geïnstalleerd. Daarom kan dit worden gedaan met behulp van SSH. De stappen voor een installatie zijn als volgt:

1) Maak een gebruiker met behulp van de onderstaande opdrachten:

$ su

Wachtwoord:

#useradd Hadoop

#passwd Hadoop

Nieuw wachtwoord:

Typ nieuw wachtwoord in

2) De volgende stap omvat het instellen van SSH en het genereren van sleutels. De volgende opdrachten kunnen u helpen om een ​​sleutel / waarde-paar te genereren met behulp van ssh.

$ ssh-keygen –t rsa

$ cat ~ /. ssh / id_rsa.pub >> ~ / .ssh / geautoriseerde_sleutels

$ chmod 0600 ~ / .ssh / Authorized_keys

3) Het installeren van JAVA omvat een Java-versie van jdk-7u71-Linux-x64.tar.gz. Pak dit uit en verplaats het naar / usr / local. Zodra dit is gedaan, stelt u het pad en de JAVA_HOME-variabelen in het ~ / .bashrc-profiel in.

4) Stel de Hadoop-omgeving in door alle bestanden te configureren, zoals hdfs-site.xml, yarn-site.xml, core-site.xml, mapred-site.xml

5) Stel Hbase in op zichzelf staande modus door hbase-nv.sh en hbase-site.xml-bestanden te configureren. U kunt het ook in de Pseudo-modus installeren door het bestand hbase-site.xml te configureren.

Tabellen en collecties makenMongoDB gebruikt databases, collecties en documenten voor het opslaan van alle gegevens. Om een ​​verzameling te maken, moet de methode createCollection () worden gebruikt.

Syntaxis:

db.createCollection (naam, opties)

Naam: naam van de collectie die moet worden aangemaakt

Opties: dit is een optioneel veld en geeft geheugengrootte en indexering aan.

Het optionele veld kan onderstaande opties hebben:

1) Capped: hiermee wordt een capped collection mogelijk gemaakt waarmee de vaste grootte en de oude items automatisch kunnen worden overschreven zodra een maximale grootte is bereikt.

2) autoIndexId: het maakt automatisch een index aan

3) grootte: het specificeert maximale bytes voor afgetopte verzameling.

4) Max: het zorgt voor een maximaal aantal toegestane documenten.

Voorbeeld:

> gebruik test

overgeschakeld naar db-test

> db.createCollection ( “mycollection”)

("Ok": 1)

Deze kunnen worden gecontroleerd met:

> collecties tonen

mijn collectie

system.indexes

Met HBase kan de gebruiker tabellen maken met de opdracht create. Gebruiker kan de tabelnaam en kolommen opgeven.

Syntaxis:

maak 'tabelnaam', 'kolomfamilie'

Voorbeeld:

hbase (main): 002: 0> creëer 'emp', 'persoonlijke data', 'professionele data'

Een tabel kan ook worden gemaakt met behulp van JAVA API. De stappen om het te maken kunnen zijn als:

1) Direct HBaseAdmin

Dit vereist configuratie als een parameter die de desbetreffende configuratieklasse instantieert en doorgeeft aan HBaseAdmin.

Configuratie conf = HBaseConfiguration.create ();

HBaseAdmin admin = nieuwe HBaseAdmin (conf);

2) Vervolgens kan de gebruiker TableDescriptor maken. HTableDescriptor is de klasse die tabelnamen en kolomfamilies zal bevatten.

// tabeldescriptor maken

HTableDescriptor newtable = new HTableDescriptor (toBytes ("Tabelnaam"));

// kolomfamiliebeschrijving maken

HColumnDescriptor newfamily = new HColumnDescriptor (toBytes ("column family"));

// coloumn-familie toevoegen aan HTable

table.addFamily (Gelijksoortige beelden zoeken Beschikbaarheid);

3) Uitvoeren via Admin: Met de methode createTable () kunnen we de in HBaseAdmin aanwezige methode uitvoeren met behulp van:

admin.createTable (tabel);

Dropping table en verzamelingDe methode om de verzameling te verwijderen is db.collection.drop waarmee de verzameling in de database wordt neergezet.

Syntaxis:

db.collection_name.drop ()

Voor het neerzetten van de tabel in Hbase moet de gebruiker de tabel uitschakelen. Dit kan als volgt worden gedaan:

hbase (main): 018: 0> 'emp' uitschakelen

0 rij (len) in 1, 4580 seconden

Zodra een tabel is uitgeschakeld, kunt u de tabel verwijderen met de onderstaande opdrachten:

hbase (main): 019: 0> drop 'emp'

0 rij (len) in 0, 3060 seconden

Met regex kunt u ook meerdere tabellen verwijderen.

Conclusie - MongoDB versus HBase

HBase kan worden gebruikt wanneer gegevens de vorm hebben van een sleutel / waarde-paar en veel gegevens bevatten. MongoDB daarentegen kan worden gebruikt wanneer de gebruiker het gedrag van de gebruiker op een online applicatie wil volgen. HBase heeft hoge prestaties en schaalbaarheid terwijl MongoDB een breed scala aan toepassingen heeft die het ondersteunt. Het is de gebruiker die moet beslissen of ze betere prestaties willen of verschillende applicaties willen ondersteunen

Aanbevolen artikel

Dit is een leidraad geweest voor de grootste verschillen tussen MongoDB en HBase. Hier bespreken we ook de belangrijkste verschillen tussen MongoDB en HBase met infographics en vergelijkingstabel. U kunt ook het volgende HBase vs MongoDB-artikel bekijken voor meer informatie -

  1. MongoDB tegen Cassandra
  2. HBase vs Cassandra - Topverschillen
  3. MongoDB versus PostgreSQL
  4. HDFS versus HBase - Welke is beter
  5. MongoDB versus DynamoDB: Verschillen
  6. MongoDB versus SQL: wat zijn de verschillen