Differenze tra MongoDB e HBase
I database svolgono un ruolo vitale in tutte le organizzazioni e settori. Le alternative a queste stanno crescendo rapidamente e richiedono risultati più rapidi. Per soddisfare questi nuovi requisiti, le industrie utilizzano database non tabulari, abbiamo MongoDB vs HBase. MongoDB è un database non relazionale open source. Tutte le informazioni correlate vengono archiviate insieme per accedere rapidamente ai dati. HBase, d'altra parte, è scritto in Java e funziona sul framework Hadoop. Utilizza una coppia chiave-valore per accedere a modelli casuali generati.
Confronto testa a testa tra MongoDB vs HBase (infografica)
Di seguito sono riportati i primi 4 confronti tra MongoDB e HBase
Differenze chiave tra MongoDB e HBase
Sia MongoDB che HBase sono scelte popolari sul mercato; parliamo di alcune delle principali differenze tra MongoDB e HBase:
HBase vs MongoDB essendo entrambi i database No SQL presentano differenze significative. Il modello di query di MongoDB offre diversi tipi di proiezioni, filtri e funzioni di aggregazione. Hbase, d'altra parte, ha un accoppiamento valore-chiave per i dati.
Per la ricerca di testo, MongoDB fornisce una funzione nativa per gli indici di testo e in HBase i dati vengono replicati per un motore di ricerca. MongoDB fornisce tre nodi, ovvero primario e secondario e uno per la replica. HBase ha 10 nodi per master, server regionali, nodi nome standby, nodi dati e zookeeper.
In MongoDB il partizionamento può essere fatto usando un hash, range e zone sharding mentre HBase fornisce solo la tecnica di hashing.
Per quanto riguarda il backup e il ripristino, MongoDB ha Ops manager e Atlas coerenti che forniscono backup tempestivi e cluster frammentati. HBase acquisisce istantanee di dati ogni 60 secondi su ciascun nodo del cluster.
Il gruppo di MongoDB viene eseguito utilizzando la pipeline di aggregazione e in HBase utilizza la riduzione della mappa tradizionale di Hadoop.
Tabella comparativa MongoDB vs HBase
Di seguito è riportata la tabella di confronto tra MongoDB e HBase
La base del confronto tra MongoDB e HBase | MongoDB | HBase |
Differenza e storia di base | MongoDB è un programma di database NoSQL orientato ai documenti open source. Utilizza documenti JSON con schemi. Lo sviluppo di MongoDB è stato avviato nel 2007 dal software 10gen. È multipiattaforma e offre elevata disponibilità e scalabilità. Funziona sulla raccolta e sul concetto di documento. Utilizza principalmente un database, una raccolta e un documento. | HBase è anche un modello di database distribuito non relazionale open source. È stato sviluppato da Apache Foundation e funziona su Hadoop Distributed File System. Era iniziato dalla società Powerset in quanto richiedevano grandi quantità di dati. È simile al grande tavolo di Google e fornisce accesso a enormi quantità di dati. Fa parte dell'ecosistema Hadoop e il consumatore di dati può leggere e accedere ai dati utilizzando HBase. |
Installazione | 1) Puoi scaricare MongoDB da https://www.mongodb.org/downloads
Innanzitutto, devi assicurarti della versione di Windows. 2) Dopo aver scaricato è possibile estrarre la cartella mongodb-win32-i386- (versione) o mongodb-win32-x86_64- (versione). 3) Vai al prompt dei comandi ed esegui sotto il comando: C: \> move mongodb-win64- * mongodb 1 dir (s) spostato. Il percorso predefinito per questa cartella dovrebbe essere C: \ data \ db. 4) Ora vai alla cartella bin nella cartella di installazione di MongoDB e imposta il percorso come di seguito: C: \ Users \ XYZ> d: D: \> cd “imposta” D: \ imposta> cd mongodb D: \ set \ mongodb> cd bin D: \ set \ mongodb \ bin> mongod.exe –dbpath "d: \ set \ mongodb \ data" 5) Installa MongoDB e installalo usando: apt-get install mongodb-10gen = 2.2.3 e avvia MongoDB usando: inizio servizio sudo mongodb | Linux dovrebbe essere configurato prima di installare Hadoop. Quindi questo può essere fatto usando ssh. I passaggi coinvolti in un'installazione sono i seguenti:
1) Crea un utente usando i seguenti comandi: $ su Parola d'ordine: #useradd Hadoop #passwd Hadoop Nuovo passwd: Riscrivi il nuovo passwd 2) Il passaggio successivo prevede l'installazione di ssh e la generazione di chiavi. I seguenti comandi possono aiutarti a generare una coppia chiave-valore usando ssh. $ ssh-keygen –t rsa $ cat ~ /. ssh / id_rsa.pub >> ~ / .ssh / authorized_keys $ chmod 0600 ~ / .ssh / authorized_keys 3) L'installazione di JAVA include una versione Java di jdk-7u71-Linux-x64.tar.gz. Estrai questo e spostalo in / usr / local. Una volta fatto, impostare il percorso e le variabili JAVA_HOME nel profilo ~ / .bashrc. 4) Imposta l'ambiente Hadoop configurando tutti i file come hdfs-site.xml, yarn-site.xml, core-site.xml, mapred-site.xml 5) Installa Hbase in modalità standalone configurando i file hbase-nv.sh e hbase-site.xml. Puoi anche installarlo in modalità Pseudo configurando il file hbase-site.xml. |
Creazione di tabelle e raccolte | MongoDB utilizza database, raccolte e documenti per archiviare tutti i dati. Per creare una raccolta è necessario utilizzare il metodo createCollection ().
Sintassi: db.createCollection (nome, opzioni) Nome: nome della collezione che deve essere creata Opzioni: questo è un campo opzionale e specifica la dimensione della memoria e l'indicizzazione. Il campo opzionale può avere le seguenti opzioni: 1) Limite: consente la raccolta con limite che ha la capacità di sovrascrivere automaticamente la dimensione fissa e le voci precedenti una volta raggiunta una dimensione massima. 2) autoIndexId: crea automaticamente un indice 3) dimensione: specifica i byte massimi per la raccolta con limite. 4) Max: assicura un numero massimo di documenti consentiti. Esempio: > usa test passato al test db > db.createCollection ( “MyCollection”) ("Ok": 1) Questi possono essere controllati usando: > mostra raccolte la mia collezione system.indexes | HBase consente all'utente di creare tabelle usando il comando create. L'utente può specificare il nome e le colonne della tabella.
Sintassi: crea "nome tabella", "famiglia colonna" Esempio: hbase (principale): 002: 0> crea "emp", "dati personali", "dati professionali" Una tabella può anche essere creata utilizzando l'API JAVA. I passaggi per crearlo possono essere i seguenti: 1) Istanziare HBaseAdmin Ciò richiede la configurazione come parametro che istanzerà la rispettiva classe di configurazione e la passerà a HBaseAdmin. Configurazione conf = HBaseConfiguration.create (); HBaseAdmin admin = nuovo HBaseAdmin (conf); 2) Successivamente l'utente può creare TableDescriptor. HTableDescriptor è la classe che conterrà nomi di tabelle e famiglie di colonne. // creazione del descrittore di tabella HTableDescriptor newtable = new HTableDescriptor (toBytes ("Nome tabella"));
// creazione del descrittore di famiglia di colonne HColumnDescriptor newfamily = new HColumnDescriptor (toBytes ("famiglia di colonne"));
// aggiunta della famiglia di colonne a HTable table.addFamily (newfamily); 3) Eseguire tramite Admin: Usando il metodo createTable () possiamo eseguire il metodo presente in HBaseAdmin usando: admin.createTable (tabella); |
Tavolo e collezione cadenti | Il metodo per eliminare la raccolta è db.collection.drop che rilascia la raccolta nel database.
Sintassi: db.collection_name.drop () | Per eliminare la tabella in Hbase l'utente deve disabilitare la tabella. Questo può essere fatto come di seguito:
hbase (principale): 018: 0> disabilita 'emp' 0 righe in 1, 44580 secondi
Una volta disabilitata una tabella è possibile eliminare la tabella utilizzando i comandi seguenti: hbase (principale): 019: 0> rilascia 'emp' 0 righe in 0, 3060 secondi
Usando regex puoi anche eliminare più tabelle. |
Conclusione - MongoDB vs HBase
HBase può essere utilizzato quando i dati hanno la forma di una coppia chiave-valore e hanno un volume elevato di dati. MongoDB, d'altra parte, può essere usato dove l'utente vuole tracciare il comportamento dell'utente su un'applicazione online. HBase ha alte prestazioni e scalabilità mentre MongoDB ha una vasta gamma di applicazioni supportate. È l'utente che deve decidere se desiderano prestazioni migliori o supportare diverse applicazioni
Articolo raccomandato
Questa è stata una guida alle principali differenze tra MongoDB e HBase. Qui discutiamo anche le differenze chiave tra MongoDB e HBase con le infografiche e la tabella di confronto. Puoi anche leggere il seguente articolo HBase vs MongoDB per saperne di più -
- MongoDB vs Cassandra
- HBase vs Cassandra - Principali differenze
- MongoDB vs PostgreSQL
- HDFS vs HBase: qual è il migliore
- MongoDB vs DynamoDB: differenze
- MongoDB vs SQL: quali sono le DIFFerenze