Учебное пособие по HBase для начинающих: что такое HBase? Научитесь за 3 дня!

Краткое описание руководства по HBase

Hbase — это столбцово-ориентированная система управления базами данных, работающая поверх HDFS (распределённой файловой системы Hadoop). В этом руководстве по HBase для начинающих вы изучите основы и расширенные концепции Apache HBase. Этот курс HBase содержит все основы HBase: от введения, установки, архитектуры до продвинутых вещей.

Что такое HBase?

HBase — это распределенная система баз данных с открытым исходным кодом, ориентированная на столбцы. Hadoop среда. Изначально это был Google Big Table, затем он был переименован в HBase и в основном написан на Java.  Apache HBase необходим для приложений, работающих с большими данными в реальном времени.

HBase может хранить огромные объемы данных от терабайтов до петабайтов. Таблицы, представленные в HBase, состоят из миллиардов строк и миллионов столбцов. HBase создан для операций с низкой задержкой и имеет некоторые особенности по сравнению с традиционными реляционными моделями.

Программа обучения HBase

Вот что мы рассматриваем в этом руководстве по обучению Apache HBase.

👉 Lessна 1 Archiструктура HBase — HBase ArchiТекстура, компоненты и модель данных
👉 Lessна 2 Установка HBase — Установка HBase на Ubuntu
👉 Lessна 3 Команды оболочки HBase — Учитесь на примере
👉 Lessна 4 HBase Создать таблицу — Действия по созданию таблицы в HBase с использованием Java API
👉 Lessна 5 Вставка и получение данных в HBase — get(), put(), scan() Примеры
👉 Lessна 6 Узкие места производительности в HBase — Преимущество и ограничения HBase
👉 Lessна 7 Вопросы для собеседования Hbase - 30 лучших вопросов и ответов на собеседовании Hbase

Что вы узнаете из этого руководства по HBase для начинающих?

В этом руководстве по HBase для начинающих вы узнаете, что такое Apache HBase, Archiтектура HBase, Как установить HBase, Действия по созданию таблицы в HBase, Преимущества и ограничения HBase и т. д.

Почему стоит выбрать HBase?

Таблица популярного веб-приложения может состоять из миллиардов строк. Если мы хотим выполнить поиск определенной строки в таком огромном объеме данных, HBase — идеальный выбор, поскольку время выборки запроса меньше. Большинство приложений онлайн-аналитики используют HBase.

Традиционные модели реляционных данных не отвечают требованиям производительности очень больших баз данных. Эти ограничения производительности и обработки можно преодолеть с помощью Apache HBase.

Возможности Apache HBase

  • HBase создан для операций с низкой задержкой.
  • HBase широко используется для произвольных операций чтения и записи.
  • HBase хранит большой объем данных в виде таблиц.
  • Обеспечивает линейную и модульную масштабируемость в кластерной среде.
  • Строго согласованы операции чтения и записи.
  • Автоматическое и настраиваемое разделение таблиц
  • Поддержка автоматического переключения между региональными серверами
  • Удобные базовые классы для поддержки Hadoop MapReduce вакансии в таблицах HBase
  • Простота Java API для клиентского доступа
  • Кэш блоков и фильтры Блума для запросов в реальном времени
  • Предикат запроса проходит через серверные фильтры.

Важность баз данных NoSQL в Hadoop

В аналитике больших данных Hadoop играет жизненно важную роль в решении типичных бизнес-задач путем управления большими наборами данных и предлагает лучшие решения в области аналитики.

В экосистеме Hadoop каждый компонент играет свою уникальную роль для

  • Обработка данных
  • Валидация данных
  • Хранение данных

С точки зрения хранения неструктурированных, полуструктурированных данных, а также поиска таких данных реляционные базы данных менее полезны. Кроме того, получение результатов путем применения запроса к огромным наборам данных, хранящимся в хранилище Hadoop, является сложной задачей. Технологии хранения NoSQL предоставляют лучшее решение для более быстрого выполнения запросов к огромным наборам данных.

Другие базы данных типа хранения NoSQL

Некоторые из моделей NoSQL, представленных на рынке, Cassandra, MongoDBи CouchDB. Каждая из этих моделей имеет разные способы хранения.

Например, MongoDB — это документо-ориентированная база данных из генеалогического древа NoSQL. По сравнению с традиционными базами данных он обеспечивает лучшие функции с точки зрения производительности, доступности и масштабируемости. Это документально-ориентированная база данных с открытым исходным кодом, написанная на C++.

Cassandra это также распределенная база данных из программного обеспечения Apache с открытым исходным кодом, которая предназначена для обработки огромного объема данных, хранящихся на обычных серверах. Cassandra обеспечивает высокую доступность без единой точки отказа.

В то время как CouchDB представляет собой документо-ориентированную базу данных, в которой каждое поле документа хранится в картах «ключ-значение».

Чем HBase отличается от других моделей NoSQL

Модель хранения HBase отличается от других моделей NoSQL, рассмотренных выше. Это можно сформулировать следующим образом.

  • HBase хранит данные в виде пар ключ/значение в столбчатой ​​модели. В этой модели все столбцы сгруппированы в семейства столбцов.
  • HBase обеспечивает гибкую модель данных и доступ с низкой задержкой к небольшим объемам данных, хранящимся в больших наборах данных.
  • HBase поверх Hadoop увеличит пропускную способность и производительность распределенного кластера. В свою очередь, это обеспечивает более быстрые операции произвольного чтения и записи.

Какую базу данных NoSQL выбрать?

MongoDB, CouchDBи Cassandra — это базы данных типа NoSQL, которые имеют специфичные функции и используются в соответствии с потребностями бизнеса. Здесь мы перечислили различные базы данных NoSQL в соответствии с их вариантами использования.

Тип базы данных на основе функции Пример базы данных Вариант использования (когда использовать)
Ключ/значение Redis, MemcacheDB. Кэширование, организация очередей, распространение информации
Столбцово-ориентированный Cassandra, HBase Масштабирование, сохранение неструктурированности, энергонезависимость
Документ-ориентированный MongoDB, Коучбейс Вложенная информация, JavaДружественный к скриптам
на основе графов OrientDB, Neo4J Обработка сложной реляционной информации. Моделирование и обработка классификации.

HBase против. Улей

Особенности HBase Hive
Модель базы данных Магазин широкой колонки Реляционная СУБД
Схема данных Без схемы Со схемой
Поддержка SQL Нет Да, он использует HQL (язык запросов Hive).
Методы разделения Sharding Sharding
Уровень согласованности Мгновенная консистенция Конечная согласованность
Вторичные индексы Нет Да
Методы репликации Выбираемый коэффициент репликации Выбираемый коэффициент репликации

HBase против. СУБД

Сравнивая HBase с традиционными реляционными базами данных, мы должны принять во внимание три ключевых момента. Это модель данных, хранилище данных и разнообразие данных.

HBASE RDBMS
  • Без схемы в базе данных
  • Наличие фиксированной схемы в базе данных
  • Столбцовые базы данных
  • Строко-ориентированное хранилище данных
  • Предназначен для хранения денормализованных данных.
  • Предназначен для хранения нормализованных данных.
  • В HBase присутствуют широкие и малонаполненные таблицы.
  • Содержит тонкие таблицы в базе данных
  • Поддерживает автоматическое разделение
  • Не имеет встроенной поддержки разбиения на разделы.
  • Хорошо подходит для OLAP-систем.
  • Хорошо подходит для OLTP-систем.
  • Чтение только соответствующих данных из базы данных
  • Извлекайте по одной строке за раз и, следовательно, можете читать ненужные данные, если требуются только некоторые данные в строке.
  • Структурированные и полуструктурированные данные можно хранить и обрабатывать с помощью HBase.
  • Структурированные данные можно хранить и обрабатывать с помощью СУБД.
  • Позволяет агрегировать по множеству строк и столбцов.
  • Агрегация — дорогостоящая операция

Итого

HBase предоставляет уникальные функции и решает типичные случаи промышленного использования. Будучи хранилищем, ориентированным на столбцы, оно обеспечивает быстрый запрос, получение результатов и большой объем хранилища данных. Этот курс представляет собой полное пошаговое введение в HBase.