Вступ до архітектури HBase
HBase - це система зберігання даних з відкритим кодом, розподілена ключовими значеннями та база даних, орієнтована на стовпці, з високим вихідним рівнем запису та низькою затримкою випадкової продуктивності читання. За допомогою HBase ми можемо виконувати онлайн-аналітику в режимі реального часу. HBase архітектура має сильну випадкову читабельність. У HBase дані фізично розподіляються на ті, які називають регіонами. Кожен регіон розміщується одним сервером регіону, і один або більше регіонів відповідають за кожен сервер регіонів. Архітектура HBase складається з серверів master-slave. Кластер HBase має один головний вузол під назвою HMaster та кілька серверів регіону під назвою сервер HRegion (сервер HRegion). У кожному регіональному сервері є кілька регіонів - регіонів.
Механізм зберігання HDFS
У HDFS дані зберігаються в таблиці, як показано вище.
У кожному рядку є ключ.
Стовпець: Це набір даних, який належить до однієї сімейства стовпців, і він міститься всередині рядка.
Сімейство стовпців: Кожна сім'я стовпців складається з одного або декількох стовпців.
Кожна таблиця містить колекцію родин стовпців. Ці стовпці не є частиною схеми.
HBase має динамічні стовпці. Різні комірки можуть мати різні стовпці, оскільки назви стовпців закодовані всередині комірок
Кваліфікатор стовпця: Назва стовпця відома як класифікатор стовпця.
Компоненти архітектури HBase
У архітектурі HBase є основні елементи: HMaster та Region Server. Регіональне збереження даних HBase.
1. HMaster
Вузол HMaster легкий і використовується для присвоєння області серверній області.
Є кілька основних обов'язків компанії Hmaster, які:
- Виконання деяких завдань адміністрування, включаючи завантаження, балансування, створення даних, оновлення, видалення тощо.
Відповідає за зміни схеми або модифікації даних META відповідно до вказівки клієнтської програми
- Багато DDL-роботи над таблицями HBase здійснює HMaster.
Деякі з методів, які піддається інтерфейсу HMaster, - це в основному. Методи, орієнтовані на дані META.
- Таблиця (створення, видалення, включення, відключення, видалення таблиці)
- ColumnFamily (додайте стовпчик, змініть стовпчик)
- Регіон (переміщення, призначення)
Клієнт спілкується з HMaster та ZooKeeper двосторонньо. Він контактує з серверами HRegion безпосередньо для читання та запису операцій. HMaster призначає регіони серверам у регіоні і, у свою чергу, перевіряє стан здоров'я регіональних серверів.
2. Сервер регіону
Ми можемо отримати приблизне уявлення про сервер регіону за схемою, наведеною нижче.
Сервери регіону - це робочі вузли, які обробляють запити клієнтів на читання, запис, оновлення та видалення. Сервер регіону невеликий, він працює у всіх вузлах кластера Hadoop. Основне завдання регіонального сервера - збереження даних у районах та виконання запитів клієнтів. Іншим важливим завданням сервера регіону HBase є використання методу автоматичного натягування для виконання балансування навантаження шляхом динамічного розподілу таблиці HBase, коли вона стає занадто великою після вставки даних.
HMaster може зв’язатися з декількома серверами HRegion та виконати наступні функції:
- Управління та регіональні хостинги
- Автоматично розділені регіони
- Обробка запитів для читання та письма
- Пряме спілкування з клієнтом
3. HDFS
HDFS розшифровується як система розподіленої файлу Hadoop. Він зберігає кожен файл у декількох блоках і копіює блоки через кластер Hadoop для підтримки відмовостійкості. HDFS забезпечує високу стійкість до відмов і працює з недорогими матеріалами. Використання дешевого товарного обладнання для додавання вузлів у кластер та обробка та збереження дасть клієнту кращі результати, ніж існуюче обладнання. HDFS контактує з компонентами HBase і зберігає багато даних розподіленим способом.
4. Зоопарк
Zookeeper - проект з відкритим кодом. HMaster та HRegionServers зареєструються в ZooKeeper.
Він надає різні сервіси, такі як підтримка інформації про конфігурацію, іменування, забезпечення розподіленої синхронізації тощо. Розподілена синхронізація - це процес надання координаційних послуг між вузлами для доступу до запущених програм. Він має ефемерні вузли, які представляють сервери регіону. Основні сервери використовують ці вузли для пошуку доступних серверів.
Ці вузли також використовуються для відстеження мережевих розділів та збоїв на сервері. Zookeeper - це взаємодіюче середовище між сервером регіону клієнта. Якщо клієнт хоче спілкуватися з регіональним сервером, то зоокеер - це середовище зв'язку між ними.
Як ініціалізується пошук в архітектурі HBase
Як відомо, розташування таблиці META зберігається Zookeeper. Щоразу, коли клієнт звертається або запитує запити на HBase, процедура полягає в наступному.
Замовник дізнається у ZooKeeper, як розмістити їх у таблиці META. Потім клієнт вимагає відповідного ключа рядка з них таблиці META для доступу до місцеположення на сервері регіону. Завдяки розташуванню таблиці META замовник кешує цю інформацію. Клієнт не повинен посилатися на них таблицю META до тих пір, і якщо область не буде переміщена або зміщена. Тоді знову буде запрошено сервер META і кеш буде оновлено. Як завжди, клієнти не витрачають час на пошук регіонального сервера на сервері META, тому це економить час і прискорює процес пошуку.
Особливості
Їх легко інтегрувати з джерела, а також пункту призначення за допомогою Hadoop.
Підтримується розподілене сховище, як HDFS.
Він має функцію випадкового доступу, використовуючи внутрішню таблицю хешу для зберігання даних для більш швидкого пошуку у файлах HDFS.
Переваги архітектури HBase
- Вони можуть зберігати великі набори даних
- Ми можемо поділитися базою даних
- Гігабайти до петабайт економічно вигідні
- Висока доступність через реплікацію та збій
Недоліки архітектури HBase
- Структура SQL не підтримує
- Не підтримує транзакцію
- Тільки з відсортованими ключовими
- Проблеми кластерної пам'яті
Висновок
HBase - одна з розподілених баз даних, орієнтованих на колонки NonSql, в апачі. Порівнюючи з Hadoop або Hive, HBase краще для отримання меншої кількості записів. Отже, у цій статті ми обговорили архітектуру HBase та її важливі компоненти.
Рекомендовані статті
Це було керівництвом щодо архітектури HBase. Тут ми обговорили концепцію, компоненти, особливості, переваги та недоліки. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -
- Що таке технології великих даних?
- HDFS проти HBase, який краще
- Що таке мова складання?
- Вступ до HTML