Вступ до екосистеми Hadoop

Apache Hadoop - це система з відкритим кодом, щоб надійно зберігати та обробляти багато інформації на багатьох товарних комп'ютерах. Hadoop вперше був написаний у статті та опублікований у жовтні 2013 року як «Файлова система Google». Даг Різ, який працював у Yahoo у той час, представив ім'я як Екосистема Hadoop на основі імені іграшкового слона свого сина. Якщо ми розглянемо основне ядро ​​Apache Hadoop, то, по-перше, воно може розглядати частину зберігання, яка відома як Hadoop Distributed File System (HDFS), а по-друге, оброблювальну частину, відому як модуль програмування зменшення карт. Hadoop насправді розбиває один величезний файл і зберігає їх у декілька вузлів по кластеру.

Поняття екосистеми Hadoop

Рамка Apache Hadoop в основному тримається під модулями:

  1. Hadoop Common: містить усі бібліотеки та утиліти, необхідні для використання модуля Hadoop.
  2. Розподілена файлова система Hadoop (HDFS): це одна з розподілених файлових систем, яка допомагає зберігати величезні дані в декількох або товарних машинах. Крім того, надайте велику корисність у випадку пропускної здатності, вона зазвичай забезпечує дуже високу пропускну здатність у вигляді агрегату на кластері.
  3. Пряжа Hadoop: Вона була представлена ​​в 2012 році. В основному вона застосовується для управління ресурсами по всій товарній системі навіть у кластері. Виходячи з можливостей ресурсів, він розподіляв або планував програму користувача відповідно до вимог.
  4. Hadoop MapReduce: Він в основному допомагає обробляти великомасштабні дані за допомогою методології програмування зменшення карт.

Apache Hadoop завжди допомагає знизити витрати на ІТ з точки зору обробки та зберігання величезних даних. Оскільки Apache Hadoop є відкритим кодом, а обладнання дуже часто доступне, воно завжди допомагає нам в належному зниженні витрат на ІТ.

Програмне забезпечення з відкритим кодом + Товарне обладнання = Зниження витрат на ІТ

Наприклад, якщо ми плануємо щодня отримувати 942787 файлів і каталогів, для яких потрібно 4077936 блоків, загалом 5020723 блоків. Отже, якщо ми налаштували принаймні 1, 46 PB, то для обробки вище навантаження розподілена файлова система використовуватиме 1, 09 PB, це означає майже 74, 85% від загальної налаштованої ємності, тоді як ми враховуємо 178 живих вузлів та 24 мертвих вузла.

Екосистема Hadoop в основному призначена для зберігання та обробки великих даних, які зазвичай мають деякі ключові характеристики, як показано нижче:

  • Обсяг

Обсяг означає розмір даних, які фактично зберігаються та створюються. Залежить від розміру даних, який було визначено, набір даних є великими чи ні.

  • Різноманітність

Різноманітність означає характер, структуру та тип даних, які використовуються.

  • Швидкість

Швидкість означає швидкість даних, що зберігаються і генеруються в певному потоці процесу розвитку.

  • Правда

Вірогідність означає якість захоплених даних, а також допомагає аналізу даних досягти наміченої мети.

HDFS в основному призначений для зберігання дуже великої кількості інформації (терабайт або петабайт) на великій кількості машин у кластері. Завжди підтримуючи деякі загальні характеристики, такі як надійність даних, працює на товарному обладнання, використовуючи блоки для зберігання файлу або частини цього файлу, використовуючи модель "написати один раз прочитане багато".

Наступна нижче архітектура HDFS з концепцією вузла імен та вузла даних.

Відповідальність вузла імен (головного):

- керує простором імен файлової системи

- підтримує конфігурацію кластера

- Відповідальний за управління реплікацією

Відповідальність вузла даних (Slaves):

- Зберігання даних у локальній файловій системі

- Періодично повідомляти про вузол імені за допомогою серцебиття

Операція запису HDFS:

Hadoop виконує наступні кроки для написання будь-якого великого файлу:

  1. Створіть файл та оновіть FS-зображення після отримання одного запиту на запис файлу від будь-якого клієнта HDFS.
  2. Отримайте інформацію про місцезнаходження блоку чи вузла даних з вузла імені.
  3. Запишіть пакет в окремі вузли даних паралельно.
  4. Підтвердити завершення або прийняття написання пакету та надіслати інформацію клієнту Hadoop.

Трубопровід реплікації блоку HDFS:

  1. Клієнт отримує список датанодів з Namenode, який розмістить репліку цього блоку
  2. Потім клієнт передає блок даних на перший Датанод
  3. Перший Датанод отримує блок, записує його і передає його в наступний вузол даних на конвеєрі
  4. Коли всі репліки написані, Клієнт переходить до наступного блоку у файлі

Толерантність помилок HDFS:

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

Якщо вузол імені виявляє один новий вузол даних, доступний у кластері, він негайно перебалансовує всі блоки, включаючи доданий вузол даних.

Тепер якимось чином втрачається чи не вдалося назвати вузол, і в цьому випадку також резервний вузол, що містить одне FS-зображення вузла імені, негайно відтворює всі операції FS та піднімає вузол імені відповідно до вимоги. Але в цьому випадку потрібно вручну втручання, і вся структура екосистеми Hadoop пару разів буде знищена, щоб знову створити новий вузол імені. Таким чином, у цьому випадку вузол імені може бути одним з точок відмови, щоб уникнути цього сценарію Федерація HDFS, вводячи кілька кластерів, встановлених вузлом імен, і ZooKeeper може керувати негайно одним альтернативним вузлом імені відповідно до вимоги.

Приклади екосистеми Hadoop

Повний приклад екосистеми Hadoop можна правильно пояснити на малюнку нижче:

Дані можуть надходити з будь-якого джерела, наприклад, сховища даних, керованого сховища документів, спільних файлів, звичайних баз даних RDMS або хмарних чи зовнішніх джерел. Усі ці дані надходили до HDFS за структурою або неструктурою або напівструктуром. HDFS зберігає всі ці дані як розподілений спосіб, означає зберігання в розподіленій товарній системі дуже розумно.

Висновок

Екосистема Hadoop головним чином розроблена для зберігання та обробки величезних даних, які мали б представити будь-який із двох факторів між об'ємом, швидкістю та різноманітністю. Він зберігає дані в розподіленій системі обробки, яка працює на товарному обладнання. Враховуючи повний процес екосистеми Hadoop, HDFS поширює блоки даних, а Map Reduce забезпечує програмування для зчитування даних з файлу, що зберігається у HDFS.

Рекомендовані статті:

Це було керівництвом екосистеми Hadoop. Тут ми обговорили основну концепцію екосистеми Hadoop, її архітектуру, операції HDFS, приклади, відмову від HDFS тощо. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. Використання Hadoop в реальному світі
  2. Хадоп проти Сплунка
  3. Кар'єра в Hadoop
  4. Продуктивність Hadoop проти SQL

Категорія: