Différences entre MongoDB et HBase

Les bases de données jouent un rôle vital dans toutes les organisations et industries. Les alternatives à celles-ci se développent rapidement et nécessitent des résultats plus rapides. Pour répondre à ces nouvelles exigences, les industries utilisent des bases de données non tabulaires, nous avons MongoDB vs HBase. MongoDB est une base de données non relationnelle open source. Toutes les informations associées sont stockées ensemble pour accéder rapidement aux données. HBase, quant à lui, est écrit en Java et fonctionne sur le framework Hadoop. Il utilise une paire clé-valeur pour accéder aux modèles aléatoires générés.

Comparaison directe entre MongoDB et HBase (infographie)

Ci-dessous, les 4 meilleures comparaisons entre MongoDB et HBase

Différences clés entre MongoDB et HBase

Les deux MongoDB vs HBase sont des choix populaires sur le marché; laissez-nous discuter de certaines des principales différences entre MongoDB vs HBase:

HBase vs MongoDB étant tous les deux Aucune base de données SQL n'a des différences significatives. Le modèle de requête de MongoDB fournit différents types de projections, de filtrage et de fonctions d'agrégation. Hbase, en revanche, a un appariement valeur-clé pour les données.

Pour la recherche de texte, MongoDB fournit une fonctionnalité native pour les index de texte et dans les données HBase est répliquée pour un moteur de recherche. MongoDB fournit trois nœuds à savoir primaire et secondaire et un pour la réplication. HBase a 10 nœuds pour les maîtres, les serveurs de région, les nœuds de nom de secours, les nœuds de données et le gardien de zoo.

Dans MongoDB, le partitionnement peut être effectué en utilisant un hachage, une plage et un partage de zone tandis que HBase fournit uniquement une technique de hachage.

En ce qui concerne la sauvegarde et la récupération, MongoDB a un gestionnaire Ops et Atlas cohérent qui fournit des sauvegardes en temps opportun et des clusters fragmentés. HBase prend des instantanés de données toutes les 60 secondes sur chaque nœud du cluster.

Le regroupement dans MongoDB est effectué en utilisant le pipeline d'agrégation et dans HBase, il utilise la carte traditionnelle Hadoop réduire.

Tableau de comparaison MongoDB vs HBase

Voici le tableau de comparaison entre MongoDB vs HBase

La base de la comparaison entre MongoDB vs HBase MongoDB HBase
Différence de base et histoireMongoDB est un programme de base de données NoSQL orienté document open source. Il utilise des documents JSON avec des schémas. Le développement de MongoDB a été lancé en 2007 par le logiciel 10gen. Il est multiplateforme et offre une haute disponibilité et une évolutivité. Il fonctionne sur la collection et le concept de document. Il utilise principalement une base de données, une collection et un document.HBase est également un modèle de base de données distribuée non relationnelle open source. Il a été développé par Apache Foundation et fonctionne sur le système de fichiers distribué Hadoop. Il avait commencé par la société Powerset car ils avaient besoin de grandes quantités de données. Il est similaire à la grande table de Google et donne accès à d'énormes quantités de données. Il fait partie de l'écosystème Hadoop et le consommateur de données peut lire et accéder aux données à l'aide de HBase.
Installation1) Vous pouvez télécharger MongoDB sur https://www.mongodb.org/downloads

Tout d'abord, vous devez vous assurer de votre version Windows.

2) Une fois que vous avez téléchargé, vous pouvez extraire le dossier mongodb-win32-i386- (version) ou mongodb-win32-x86_64- (version).

3) Accédez à l'invite de commande et exécutez la commande ci-dessous:

C: \> déplacer mongodb-win64- * mongodb 1 dir (s) déplacé. L'emplacement par défaut de ce dossier doit être C: \ data \ db.

4) Maintenant, allez dans le répertoire bin du dossier d'installation de MongoDB et définissez le chemin comme ci-dessous:

C: \ Users \ XYZ> d:

D: \> cd «mis en place»

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) Installez MongoDB et installez-le en utilisant:

apt-get install mongodb-10gen = 2.2.3 et démarrez MongoDB en utilisant:

sudo service mongodb start

Linux doit être configuré avant d'installer Hadoop. Par conséquent, cela peut être fait en utilisant ssh. Les étapes d'une installation sont les suivantes:

1) Créez un utilisateur à l'aide des commandes ci-dessous:

$ su

Mot de passe:

#useradd Hadoop

#passwd Hadoop

Nouveau mot de passe:

Retapez le nouveau mot de passe

2) L'étape suivante implique la configuration ssh et la génération de clés. Les commandes suivantes peuvent vous aider à générer une paire clé-valeur à l'aide de ssh.

$ ssh-keygen –t rsa

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

$ chmod 0600 ~ / .ssh / authorized_keys

3) L'installation de JAVA comprend une version Java de jdk-7u71-Linux-x64.tar.gz. Extrayez-le et déplacez-le vers / usr / local. Une fois cela fait, définissez le chemin et les variables JAVA_HOME dans le profil ~ / .bashrc.

4) Configurez l'environnement Hadoop en configurant tous les fichiers comme hdfs-site.xml, yarn-site.xml, core-site.xml, mapred-site.xml

5) Configurez Hbase en mode autonome en configurant les fichiers hbase-nv.sh et hbase-site.xml. Vous pouvez également l'installer en mode pseudo en configurant le fichier hbase-site.xml.

Création de tables et de collectionsMongoDB utilise des bases de données, des collections et des documents pour stocker toutes les données. Pour créer une collection, il faut utiliser la méthode createCollection ().

Syntaxe:

db.createCollection (nom, options)

Nom: nom de la collection à créer

Options: il s'agit d'un champ facultatif qui spécifie la taille de la mémoire et l'indexation.

Le champ facultatif peut avoir les options ci-dessous:

1) plafonné: il permet la collecte plafonnée qui a la capacité de remplacer automatiquement la taille fixe et les anciennes entrées une fois qu'une taille maximale est atteinte.

2) autoIndexId: il crée automatiquement un index

3) taille: il spécifie le nombre maximal d'octets pour la collection plafonnée.

4) Max: Il garantit un nombre maximum de documents autorisés.

Exemple:

> test d'utilisation

passé au test db

> db.createCollection («mycollection»)

("Ok": 1)

Ceux-ci peuvent être vérifiés en utilisant:

> montrer les collections

ma collection

system.indexes

HBase permet à l'utilisateur de créer des tables à l'aide de la commande create. L'utilisateur peut spécifier le nom de la table et les colonnes.

Syntaxe:

créer 'nom de table', 'famille de colonnes'

Exemple:

hbase (principal): 002: 0> créer 'emp', 'données personnelles', 'données professionnelles'

Une table peut également être créée à l'aide de l'API JAVA. Les étapes pour le créer peuvent être les suivantes:

1) Instancier HBaseAdmin

Cela nécessite une configuration en tant que paramètre qui instanciera la classe de configuration respective et la transmettra à HBaseAdmin.

Configuration conf = HBaseConfiguration.create ();

HBaseAdmin admin = nouveau HBaseAdmin (conf);

2) Ensuite, l'utilisateur peut créer TableDescriptor. HTableDescriptor est la classe qui contiendra les noms de table et les familles de colonnes.

// création d'un descripteur de table

HTableDescriptor newtable = nouveau HTableDescriptor (toBytes ("Nom de la table"));

// création d'un descripteur de famille de colonnes

HColumnDescriptor newfamily = nouveau HColumnDescriptor (toBytes («famille de colonnes»));

// ajout de la famille coloumn à HTable

table.addFamily (nouvellefamille);

3) Exécuter via Admin: En utilisant la méthode createTable (), nous pouvons exécuter la méthode présente dans HBaseAdmin en utilisant:

admin.createTable (table);

Table basse et collectionLa méthode pour supprimer la collection est db.collection.drop qui supprime la collection dans la base de données.

Syntaxe:

db.collection_name.drop ()

Pour déposer une table dans Hbase, l'utilisateur doit désactiver la table. Cela peut être fait comme ci-dessous:

hbase (principal): 018: 0> désactiver 'emp'

0 ligne (s) en 1.4580 secondes

Une fois qu'une table est désactivée, vous pouvez la supprimer en utilisant les commandes ci-dessous:

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

0 ligne (s) en 0, 3060 seconde

En utilisant regex, vous pouvez également supprimer plusieurs tables.

Conclusion - MongoDB vs HBase

HBase peut être utilisé lorsque les données sont sous la forme d'une paire clé-valeur et ont un volume de données élevé. MongoDB, d'autre part, peut être utilisé lorsque l'utilisateur souhaite suivre le comportement de l'utilisateur sur une application en ligne. HBase a des performances et une évolutivité élevées tandis que MongoDB a une large gamme d'applications qu'il prend en charge. C'est l'utilisateur qui doit décider s'il souhaite de meilleures performances ou s'il prend en charge différentes applications

Article recommandé

Cela a été un guide pour les principales différences entre MongoDB et HBase. Ici, nous discutons également des principales différences entre MongoDB et HBase avec des infographies et un tableau de comparaison. Vous pouvez également consulter l'article HBase vs MongoDB suivant pour en savoir plus -

  1. MongoDB vs Cassandra
  2. HBase vs Cassandra - Les principales différences
  3. MongoDB vs PostgreSQL
  4. HDFS vs HBase - lequel est le meilleur
  5. MongoDB vs DynamoDB: Différences
  6. MongoDB vs SQL: Quelles sont les différences