Rozdíly mezi MongoDB vs HBase

Databáze hrají zásadní roli ve všech organizacích a průmyslových odvětvích. Alternativy k nim rychle rostou a vyžadují rychlejší výsledky. Pro splnění těchto nových požadavků používají průmyslová odvětví jiné než tabulkové databáze, máme MongoDB vs HBase. MongoDB je open-source non-relační databáze. Všechny související informace jsou uloženy společně pro rychlý přístup k datům. HBase je naproti tomu napsána v jazyce Java a pracuje na rámci Hadoop. Pro přístup k vygenerovaným náhodným vzorům používá pár klíč - hodnota.

Srovnání hlava-hlava mezi MongoDB vs HBase (infografika)

Níže je uvedeno top 4 srovnání mezi MongoDB vs HBase

Klíčové rozdíly mezi MongoDB vs. HBase

Oba MongoDB vs HBase jsou populární volby na trhu; pojďme diskutovat o některých hlavních rozdílech mezi MongoDB vs HBase:

HBase vs. MongoDB, které nejsou databázemi SQL, mají významné rozdíly. Dotazový model MongoDB poskytuje různé druhy projekcí, filtrování a agregace funkcí. Hbase, na druhé straně, má párování klíč-hodnota pro data.

Pro textové vyhledávání poskytuje MongoDB nativní funkci pro textové indexy a data HBase jsou replikována pro vyhledávací stroj. MongoDB poskytuje tři uzly, a to primární a sekundární a jeden pro replikaci. HBase má 10 uzlů pro master, regionální servery, uzly pohotovostního jména, datové uzly a zookeeper.

V MongoDB lze dělení provést pomocí hash, range a zónového shardingu, zatímco HBase poskytuje pouze hashovací techniku.

Pokud jde o zálohování a obnovu, MongoDB má správce Ops a Atlas konzistentní, což poskytuje včasné zálohování a sharded clustery. HBase pořizuje snímky dat každých 60 sekund v každém uzlu klastru.

Seskupení v MongoDB se provádí pomocí agregačního potrubí a v HBase používá redukci tradiční mapy Hadoop.

Srovnávací tabulka MongoDB vs HBase

Následuje srovnávací tabulka mezi MongoDB vs HBase

Základ srovnání mezi MongoDB vs HBase MongoDB HBase
Základní rozdíl a historieMongoDB je otevřený zdrojový dokumentově orientovaný databázový program NoSQL. Používá dokumenty JSON se schématy. Vývoj MongoDB byl zahájen v roce 2007 softwarem 10gen. Je multiplatformní a poskytuje vysokou dostupnost a škálovatelnost. Pracuje na konceptu sběru a dokumentů. Používá hlavně databázi, sbírku a dokument.HBase je také otevřený zdrojový nerelační distribuovaný databázový model. Byl vyvinut společností Apache Foundation a běží na distribuovaném systému souborů Hadoop. Začalo to společností Powerset, protože vyžadovalo velké množství dat. Je to podobné velké tabulce společnosti Google a poskytuje přístup k obrovskému množství dat. Je součástí ekosystému Hadoop a spotřebitel dat může číst a přistupovat k datům pomocí HBase.
Instalace1) MongoDB si můžete stáhnout z https://www.mongodb.org/downloads

Nejprve se musíte ujistit o verzi systému Windows.

2) Po stažení můžete extrahovat složku mongodb-win32-i386- (verze) nebo mongodb-win32-x86_64- (verze).

3) Přejděte na příkazový řádek a spusťte příkaz pod:

C: \> move mongodb-win64- * mongodb 1 dir (s) move. Výchozí umístění této složky by mělo být C: \ data \ db.

4) Nyní přejděte do adresáře bin v instalační složce MongoDB a zadejte cestu níže:

C: \ Users \ XYZ> d:

D: \> cd „set up“

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) Nainstalujte MongoDB a nainstalujte pomocí:

apt-get install mongodb-10gen = 2.2.3 a spusťte MongoDB pomocí:

spuštění služby sudo service mongodb

Linux by měl být nastaven před instalací Hadoop. To lze provést pomocí ssh. Kroky zahrnuté v instalaci jsou následující:

1) Vytvořte uživatele pomocí následujících příkazů:

$ su

Heslo:

#useradd Hadoop

#passwd Hadoop

Nový přístup:

Znovu zadejte nový přístup

2) Další krok zahrnuje nastavení ssh a generování klíčů. Následující příkazy vám mohou pomoci vygenerovat pár klíč-hodnota pomocí ssh.

$ ssh-keygen –t rsa

$ cat ~ /. ssh / id_rsa.pub >> ~ / .ssh / autorizované_keys

$ chmod 0600 ~ / .ssh / autorizované_keys

3) Instalace JAVA zahrnuje Java verzi jdk-7u71-Linux-x64.tar.gz. Rozbalte to a přesuňte jej do / usr / local. Po dokončení nastavte cestu a proměnné JAVA_HOME v profilu ~ / .bashrc.

4) Nastavte prostředí Hadoop konfigurací všech souborů, jako jsou hdfs-site.xml, nite-site.xml, core-site.xml, mapred-site.xml

5) Nastavení Hbase v samostatném režimu konfigurací souborů hbase-nv.sh a hbase-site.xml. Můžete jej také nainstalovat v režimu Pseudo konfigurací souboru hbase-site.xml.

Vytváření tabulek a sbírekMongoDB používá databáze, sbírky a dokumenty pro ukládání všech dat. Chcete-li vytvořit kolekci, musíte použít metodu createCollection ().

Syntax:

db.createCollection (jméno, možnosti)

Název: Název kolekce, kterou je třeba vytvořit

Možnosti: Toto je volitelné pole a určuje velikost a indexování paměti.

Volitelné pole může mít níže uvedené možnosti:

1) Capped: Umožňuje limitovanou kolekci, která má schopnost automaticky přepsat pevnou velikost a staré záznamy, jakmile je dosaženo maximální velikosti.

2) autoIndexId: Vytvoří index automaticky

3) size: Určuje maximální bajty pro limitovanou kolekci.

4) Max: Zajišťuje maximální povolený počet dokumentů.

Příklad:

> použít test

přepnuto na test db

> db.createCollection („mycollection“)

(„Ok“: 1)

Lze je zkontrolovat pomocí:

> zobrazit sbírky

Moje sbírka

system.indexes

HBase umožňuje uživateli vytvářet tabulky pomocí příkazu create. Uživatel může určit název tabulky a sloupce.

Syntax:

vytvořit 'název tabulky', 'rodinu sloupců'

Příklad:

hbase (main): 002: 0> create 'emp', 'personal data', 'professional data'

Tabulku lze také vytvořit pomocí JAVA API. Kroky k jeho vytvoření mohou být následující:

1) Okamžitý HBaseAdmin

To vyžaduje konfiguraci jako parametr, který vytvoří instanci příslušné třídy konfigurace a předá ji HBaseAdmin.

Conf conf = HBaseConfiguration.create ();

HBaseAdmin admin = nový HBaseAdmin (conf);

2) Poté může uživatel vytvořit TableDescriptor. HTableDescriptor je třída, která bude obsahovat názvy tabulek a rodiny sloupců.

// vytvoření deskriptoru tabulky

HTableDescriptor newtable = new HTableDescriptor (toBytes („Název tabulky“));

// vytvoření deskriptoru rodiny sloupců

HColumnDescriptor newfamily = nový HColumnDescriptor (toBytes („rodina sloupců“));

// přidání rodiny sloupců do HTable

table.addFamily (newfamily);

3) Spouštět přes Admin: Pomocí metody createTable () můžeme provést metodu přítomnou v HBaseAdmin pomocí:

admin.createTable (tabulka);

Skládací stůl a kolekceMetoda pro zrušení kolekce je db.collection.drop, která zahodí kolekci do databáze.

Syntax:

db.collection_name.drop ()

Pro zrušení tabulky v Hbase musí uživatel zakázat tabulku. To lze provést takto:

hbase (hlavní): 018: 0> deaktivovat 'emp'

0 řádků za 1, 4580 sekund

Jakmile je tabulka zakázána, můžete tabulku odstranit pomocí následujících příkazů:

hbase (hlavní): 019: 0> drop 'emp'

0 řádků za 0, 3060 sekund

Pomocí regexu můžete také vymazat více tabulek.

Závěr - MongoDB vs HBase

HBase lze použít, když jsou data ve formě páru klíč-hodnota a mají velký objem dat. Na druhé straně MongoDB lze použít tam, kde chce uživatel sledovat chování uživatele v online aplikaci. HBase má vysoký výkon a škálovatelnost, zatímco MongoDB má širokou škálu aplikací, které podporuje. Je to uživatel, který se musí rozhodnout, zda chce lepší výkon nebo chce podporovat různé aplikace

Doporučený článek

Toto bylo vodítko k největším rozdílům mezi MongoDB vs. HBase. Zde diskutujeme také klíčové rozdíly MongoDB vs HBase s infografikou a srovnávací tabulkou. Další informace naleznete v následujícím článku HBase vs MongoDB -

  1. MongoDB vs Cassandra
  2. HBase vs Cassandra - hlavní rozdíly
  3. MongoDB vs PostgreSQL
  4. HDFS vs HBase - který je lepší
  5. MongoDB vs DynamoDB: Rozdíly
  6. MongoDB vs SQL: Jaké jsou DIfference