Посібник 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 робочих місць у таблицях 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 Вулик
Модель бази даних Магазин Wide Column Реляційна СУБД
Схема даних Схема - безкоштовно Зі схемою
Підтримка SQL Немає Так, він використовує HQL (мова запитів Hive)
Методи розбиття Sharding Sharding
Рівень узгодженості Миттєва консистенція Кінцева послідовність
Вторинні індекси Немає Так
Методи реплікації Вибір фактора реплікації Вибір фактора реплікації

HBase проти РСУБД

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

HBASE СУБД
  • Без схеми в базі даних
  • Наявність фіксованої схеми в базі даних
  • Колонково-орієнтовані бази даних
  • Рядково-орієнтоване сховище даних
  • Призначений для зберігання денормалізованих даних
  • Призначений для зберігання нормалізованих даних
  • Широкі та рідко заповнені таблиці в HBase
  • Містить тонкі таблиці в базі даних
  • Підтримує автоматичне розбиття
  • Не має вбудованої підтримки для розділення
  • Добре підходить для систем OLAP
  • Добре підходить для систем OLTP
  • Читати лише релевантні дані з бази даних
  • Отримувати один рядок за раз і, отже, міг читати непотрібні дані, якщо потрібні лише деякі дані в рядку
  • Структуровані та напівструктуровані дані можна зберігати та обробляти за допомогою HBase
  • Структуровані дані можна зберігати та обробляти за допомогою RDBMS
  • Вмикає агрегацію для багатьох рядків і стовпців
  • Агрегація є дорогою операцією

Підсумки

HBase надає унікальні функції та вирішить типові випадки промислового використання. Як сховище, орієнтоване на стовпці, воно забезпечує швидке надсилання запитів, отримання результатів і великий обсяг зберігання даних. Цей курс є повним покроковим вступом до HBase.