HBase Архитектура - Концепция и компоненты - Особенности и преимущества

Содержание:

Anonim

Введение в архитектуру HBase

HBase - это система с открытым исходным кодом, распределенная система хранения данных с ключом-значением и ориентированная на столбцы база данных с высокой скоростью записи и низкой скоростью произвольного чтения. Используя HBase, мы можем проводить онлайн аналитику в реальном времени. Архитектура HBase обладает сильной случайной читабельностью. В HBase данные физически переносятся в так называемые регионы. Каждый регион размещается на одном сервере региона, и один или несколько регионов отвечают за каждый сервер региона. Архитектура HBase состоит из главных и подчиненных серверов. Кластер HBase имеет один главный узел, называемый HMaster, и несколько серверов регионов, называемых HRegion Server (HRegion Server). Существует несколько регионов - регионов на каждом региональном сервере.

Механизм хранения HDFS

В HDFS данные хранятся в таблице, как показано выше.

У каждого ряда есть ключ.

Столбец: это набор данных, принадлежащий одному семейству столбцов, который включен в строку.

Семейство столбцов. Каждое семейство столбцов состоит из одного или нескольких столбцов.

Каждая таблица содержит коллекцию семей столбцов. Эти столбцы не являются частью схемы.

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

Спецификатор столбца: имя столбца называется классификатором столбца.

Компоненты архитектуры HBase

В архитектуре HBase есть основные элементы: HMaster и Region Server. Региональные данные по HBase.

1. HMaster

Узел HMaster является легковесным и используется для назначения региона региону сервера.

Есть несколько основных обязанностей Hmaster:

  • Выполнение некоторых задач администрирования, включая загрузку, балансировку, создание данных, обновление, удаление и т. Д.

Отвечает за изменения в схеме или изменения в данных META в соответствии с указаниями клиентского приложения.

  • Большая часть работы DDL над таблицами HBase выполняется HMaster.

Некоторые из методов, которые предоставляет HMaster Interface, в основном. Метаданные ориентированные на данные методы.

  • Таблица (создание, удаление, включение, отключение, удаление таблицы)
  • Семейство столбцов (добавить столбец, изменить столбец)
  • Регион (переместить, назначить)

Клиент общается с HMaster и ZooKeeper в двух направлениях. Он связывается с серверами HRegion напрямую для чтения и записи. HMaster назначает регионы серверам в регионе и, в свою очередь, проверяет состояние работоспособности региональных серверов.

2. Регион Сервер

Мы можем получить общее представление о сервере региона с помощью диаграммы, приведенной ниже.

Региональные серверы - это рабочие узлы, которые обрабатывают запросы клиентов на чтение, запись, обновление и удаление. Регион-сервер является легковесным, он работает на всех узлах кластера Hadoop. Основная задача сервера региона - сохранять данные по областям и выполнять запросы клиентов. Другой важной задачей HBase Region Server является использование метода Auto-Sharding для балансировки нагрузки путем динамического распределения таблицы HBase, когда она становится слишком большой после вставки данных.

HMaster может связываться с несколькими серверами HRegion и выполнять следующие функции:

  • Управление и регионы хостинга
  • Автоматически разделить регионы
  • Обработка запросов на чтение и запись
  • Прямое общение с клиентами

3. HDFS

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

4. Зоопарк

Zookeeper - проект с открытым исходным кодом. HMaster и HRegionServers регистрируются в ZooKeeper.
Он предоставляет различные услуги, такие как поддержание информации о конфигурации, присвоение имен, обеспечение распределенной синхронизации и т. Д. Распределенная синхронизация - это процесс предоставления услуг координации между узлами для доступа к работающим приложениям. Он имеет эфемерные узлы, которые представляют региональные серверы. Главные серверы используют эти узлы для поиска доступных серверов.

Эти узлы также используются для отслеживания сетевых разделов и сбоев сервера. Zookeeper является взаимодействующей средой между сервером региона клиента. Если клиент хочет установить связь с сервером региона, zookeeper является средством связи между ними.

Как поиск инициализируется в архитектуре HBase

Как вы знаете, местоположение таблицы META сохраняется Zookeeper. Всякий раз, когда клиент подходит или пишет запросы на HBase, процедура выглядит следующим образом.

Клиент узнает из ZooKeeper, как разместить их в таблице META. Затем клиент запрашивает соответствующий ключ строки из своей таблицы META для доступа к расположению сервера региона. С расположением таблицы META клиент кэширует эту информацию. Заказчик не должен ссылаться на свою таблицу META до тех пор, пока область не будет перемещена или сдвинута. Затем сервер META будет запрошен снова, и кэш будет обновлен. Как всегда, клиенты не тратят время на поиск местоположения Сервера региона на META Server, поэтому это экономит время и ускоряет процесс поиска.

Характеристики

С Hadoop легко интегрироваться как из источника, так и из пункта назначения.

Распределенное хранилище как HDFS поддерживается.

Он имеет функцию произвольного доступа благодаря использованию внутренней хэш-таблицы для хранения данных для более быстрого поиска в файлах HDFS.

Преимущества архитектуры HBase

  • Они могут хранить большие наборы данных
  • Мы можем поделиться базой данных
  • Гигабайт в петабайт экономически эффективным
  • Высокая доступность благодаря репликации и сбоям

Недостатки архитектуры HBase

  • Структура SQL не поддерживает
  • Не поддерживает транзакцию
  • Только с ключом отсортировано
  • Проблемы с памятью кластера

Вывод

HBase - это одна из ориентированных на столбцы распределенных баз данных NonSql в apache. По сравнению с Hadoop или Hive, HBase работает лучше для получения меньшего количества записей. Итак, в этой статье мы обсудили архитектуру HBase и ее важные компоненты.

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

Это было руководство по архитектуре HBase. Здесь мы обсудили концепцию, компоненты, особенности, преимущества и недостатки. Вы также можете просмотреть наши другие Предлагаемые статьи, чтобы узнать больше -

  1. Что такое технология больших данных?
  2. HDFS против HBase, который лучше
  3. Что такое язык ассемблера?
  4. Введение в HTML