Отличия MongoDB от HBase

Базы данных играют жизненно важную роль во всех организациях и отраслях. Альтернативы этому быстро растут и требуют более быстрых результатов. Для удовлетворения этих новых требований отрасли используют не табличные базы данных, у нас есть MongoDB против HBase. MongoDB - это нереляционная база данных с открытым исходным кодом. Вся связанная информация хранится вместе для быстрого доступа к данным. HBase, с другой стороны, написан на Java и работает на платформе Hadoop. Он использует пару ключ-значение для доступа к генерируемым случайным образцам.

Сравнение лицом к лицу между MongoDB и HBase (инфографика)

Ниже приведены 4 лучших сравнения между MongoDB и HBase

Ключевые различия между MongoDB и HBase

Оба MongoDB против HBase являются популярным выбором на рынке; Давайте обсудим некоторые основные различия между MongoDB и HBase:

HBase vs MongoDB, поскольку базы данных SQL отсутствуют, имеют существенные различия. Модель запросов MongoDB предоставляет различные виды проекций, фильтрации и агрегирования функций. Hbase, с другой стороны, имеет пару ключ-значение для данных.

Для текстового поиска MongoDB предоставляет встроенную функцию для текстовых индексов, а в HBase данные реплицируются для поисковой системы. MongoDB предоставляет три узла, а именно основной и дополнительный, и один для репликации. HBase имеет 10 узлов для мастеров, региональных серверов, резервных узлов имен, узлов данных и zookeeper.

В MongoDB разбиение может быть выполнено с использованием хэша, диапазона и разделения зоны, в то время как HBase предоставляет только технику хэширования.

Что касается резервного копирования и восстановления, MongoDB имеет согласованный диспетчер операций и Atlas, который обеспечивает своевременное резервное копирование и сегментированные кластеры. HBase делает снимки данных каждые 60 секунд на каждом узле кластера.

Группирование в MongoDB выполняется с использованием конвейера агрегации, а в HBase используется традиционное преобразование карты Hadoop.

Сравнительная таблица MongoDB против HBase

Ниже приводится сравнительная таблица между MongoDB и HBase.

Основа сравнения MongoDB с HBase MongoDB HBase
Основная разница и историяMongoDB - ориентированная на документы программа базы данных NoSQL с открытым исходным кодом. Он использует документы JSON со схемами. Разработка MongoDB была начата в 2007 году с помощью программного обеспечения 10gen. Он кроссплатформенный и обеспечивает высокую доступность и масштабируемость. Работает над концепцией сбора и документирования. Он в основном использует базу данных, коллекцию и документ.HBase - это также модель нереляционной распределенной базы данных с открытым исходным кодом. Он был разработан Apache Foundation и работает в распределенной файловой системе Hadoop. Это началось компанией Powerset, поскольку им требовались большие объемы данных. Он похож на большую таблицу Google и обеспечивает доступ к огромным объемам данных. Он является частью экосистемы Hadoop, и потребитель данных может читать данные и получать к ним доступ, используя HBase.
Установка1) Вы можете скачать MongoDB с https://www.mongodb.org/downloads

Во-первых, вы должны убедиться, что у вас версия для Windows.

2) После загрузки вы можете извлечь папку mongodb-win32-i386- (версия) или mongodb-win32-x86_64- (версия).

3) Перейдите в командную строку и выполните следующую команду:

C: \> переместить mongodb-win64- * mongodb 1 dir (s) перемещено. Расположение по умолчанию для этой папки должно быть C: \ data \ db.

4) Теперь перейдите в каталог bin в папке установки MongoDB и установите путь, как показано ниже:

C: \ Users \ XYZ> d:

D: \> CD «настроить»

D: \ setup> cd mongodb

D: \ setup \ mongodb> CD bin

D: \ set up \ mongodb \ bin> mongod.exe –dbpath «d: \ set up \ mongodb \ data»

5) Установите MongoDB и установите его, используя:

apt-get установите mongodb-10gen = 2.2.3 и запустите MongoDB, используя:

sudo service mongodb start

Linux должен быть настроен перед установкой Hadoop. Следовательно, это можно сделать с помощью ssh. Шаги, вовлеченные в установку, являются следующими:

1) Создайте пользователя с помощью следующих команд:

$ су

Пароль:

#useradd Hadoop

#passwd Hadoop

Новый пароль:

Повторите новый пароль

2) Следующий шаг включает настройку ssh и генерацию ключей. Следующие команды могут помочь вам сгенерировать пару ключ-значение, используя ssh.

$ ssh-keygen –t rsa

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

$ chmod 0600 ~ / .ssh / authorized_keys

3) Установка JAVA включает в себя Java-версию jdk-7u71-Linux-x64.tar.gz. Распакуйте его и переместите в / usr / local. Как только это будет сделано, установите переменную path и JAVA_HOME в профиле ~ / .bashrc.

4) Настройте среду Hadoop, настроив все файлы, такие как hdfs-site.xml, yarn-site.xml, core-site.xml, mapred-site.xml

5) Настройте Hbase в автономном режиме, настроив файлы hbase-nv.sh и hbase-site.xml. Вы также можете установить его в псевдо режиме, настроив файл hbase-site.xml.

Создание таблиц и коллекцийMongoDB использует базы данных, коллекции и документы для хранения всех данных. Для создания коллекции необходимо использовать метод createCollection ().

Синтаксис:

db.createCollection (имя, параметры)

Имя: название коллекции, которую нужно создать.

Опции: Это необязательное поле, в котором указывается объем памяти и индексирование.

Необязательное поле может иметь следующие параметры:

1) Ограниченный: он включает ограниченный набор, который имеет возможность автоматически перезаписывать фиксированный размер и старые записи при достижении максимального размера.

2) autoIndexId: автоматически создает индекс

3) размер: определяет максимальные байты для ограниченного сбора.

4) Макс: обеспечивает максимально допустимое количество документов.

Пример:

> использовать тест

перешел на дб тест

> db.createCollection ( «MyCollection»)

(«Хорошо»: 1)

Это можно проверить с помощью:

> показать коллекции

моя коллекция

system.indexes

HBase позволяет пользователю создавать таблицы с помощью команды create. Пользователь может указать имя таблицы и столбцы.

Синтаксис:

создать «имя таблицы», «семейство столбцов»

Пример:

hbase (main): 002: 0> создать «emp», «личные данные», «профессиональные данные»

Таблица также может быть создана с использованием JAVA API. Шаги для его создания могут быть следующими:

1) Создание HBaseAdmin

Для этого требуется настройка в качестве параметра, который будет создавать экземпляр соответствующего класса конфигурации и передавать его в HBaseAdmin.

Конфигурация conf = HBaseConfiguration.create ();

HBaseAdmin admin = новый HBaseAdmin (conf);

2) Далее пользователь может создать TableDescriptor. HTableDescriptor - это класс, который будет содержать имена таблиц и семейства столбцов.

// создаем дескриптор таблицы

HTableDescriptor newtable = new HTableDescriptor (toBytes («Имя таблицы»));

// создаем дескриптор семейства столбцов

HColumnDescriptor newfamily = новый HColumnDescriptor (toBytes («семейство столбцов»));

// добавление семейства столбцов в HTable

table.addFamily (newfamily);

3) Выполнить через Admin: используя метод createTable (), мы можем выполнить метод, представленный в HBaseAdmin, используя:

admin.createTable (таблица);

Сбрасывающий стол и коллекцияМетод удаления коллекции - db.collection.drop, который удаляет коллекцию в базе данных.

Синтаксис:

db.collection_name.drop ()

Для удаления таблицы в Hbase пользователь должен отключить таблицу. Это можно сделать, как показано ниже:

hbase (main): 018: 0> отключить emp

0 ряд (ов) за 1.4580 секунд

После того, как таблица отключена, вы можете удалить таблицу с помощью следующих команд:

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

0 строк в 0.3060 секунд

Используя регулярные выражения, вы также можете удалить несколько таблиц.

Вывод - MongoDB против HBase

HBase может использоваться, когда данные представлены в форме пары ключ-значение и имеют большой объем данных. MongoDB, с другой стороны, может использоваться там, где пользователь хочет отслеживать поведение пользователя в онлайн-приложении. HBase обладает высокой производительностью и масштабируемостью, а MongoDB имеет широкий спектр поддерживаемых приложений. Именно пользователь должен решить, хотят ли они более высокой производительности или хотят поддерживать различные приложения

Рекомендуемая статья

Это было руководство к основным различиям между MongoDB против HBase. Здесь мы также обсудим ключевые отличия MongoDB от HBase с инфографикой и таблицей сравнения. Вы также можете посмотреть следующую статью HBase vs MongoDB, чтобы узнать больше:

  1. MongoDB против Кассандры
  2. HBase vs Cassandra - главные отличия
  3. MongoDB против PostgreSQL
  4. HDFS против HBase - какой из них лучше
  5. MongoDB против DynamoDB: различия
  6. MongoDB против SQL: каковы различия