HBase - Архитектура
В HBase таблицы разделены на регионы и обслуживаются региональными серверами. Регионы вертикально разделены по семействам столбцов на «Магазины». Магазины сохраняются как файлы в HDFS. Ниже показана архитектура HBase.
Note: Термин «магазин» используется для обозначения регионов для объяснения структуры хранения.
HBase состоит из трех основных компонентов: клиентской библиотеки, главного сервера и региональных серверов. Серверы регионов могут быть добавлены или удалены в соответствии с требованиями.
MasterServer
Мастер-сервер -
Назначает регионы региональным серверам и использует Apache ZooKeeper для этой задачи.
Выполняет балансировку нагрузки регионов по серверам регионов. Он разгружает загруженные серверы и перемещает регионы на менее занятые серверы.
Поддерживает состояние кластера, согласовывая балансировку нагрузки.
Отвечает за изменения схемы и другие операции с метаданными, такие как создание таблиц и семейств столбцов.
Регионы
Регионы - это не что иное, как таблицы, которые разделены и распределены по серверам регионов.
Сервер региона
Серверы регионов имеют регионы, которые -
- Общайтесь с клиентом и выполняйте операции, связанные с данными.
- Обрабатывать запросы на чтение и запись для всех регионов, находящихся под ним.
- Определите размер области, следуя пороговым значениям размера области.
Когда мы более подробно рассмотрим сервер регионов, он содержит регионы и магазины, как показано ниже:
Хранилище содержит хранилище памяти и HFiles. Memstore похож на кеш-память. Все, что вводится в HBase, изначально сохраняется здесь. Позже данные передаются и сохраняются в Hfiles в виде блоков, а хранилище памяти очищается.
Работник зоопарка
Zookeeper - это проект с открытым исходным кодом, который предоставляет такие услуги, как сохранение информации о конфигурации, присвоение имен, обеспечение распределенной синхронизации и т. Д.
Zookeeper имеет эфемерные узлы, представляющие серверы разных регионов. Главные серверы используют эти узлы для обнаружения доступных серверов.
Помимо доступности, узлы также используются для отслеживания отказов серверов или сетевых разделов.
Клиенты общаются с региональными серверами через zookeeper.
В псевдо и автономном режимах HBase сама позаботится о zookeeper.