Введення в інструменти Hadoop

Інструменти Hadoop - це структура, яка використовується для обробки великої кількості даних. Ці дані поширюються на кластер і виконуються розподілені обчислення. Дані зберігаються у блоках розміром 128Mb і для обробки та досягнення результату використовується потужність зменшення карт. Традиційно Map та Reduce були написані на Java, але важко було перетнути майстерність ресурсів, що працюють у сховищах даних, оскільки вони не мали в цьому досвіду. SQL добре відомий і простий у використанні, тому, знайшовши спосіб написати SQL, як запит, який перетворюється на Map and Reduce, це було засновано Facebook і пізніше подаровано Apache, цей інструмент відомий як вулик. Yahoo також придумав інструмент під назвою Pig, який при виконанні перетворюється на зменшення карт. Аналогічно, у нас є Sqoop та flume для руху даних та інструментів для ін'єкцій. HBase - це інструмент системи управління базами даних.

Особливості інструментів Hadoop

  1. Вулик
  2. Свиня
  3. Sqoop
  4. HBase
  5. Зоопарк
  6. Флюм

Тепер ми побачимо функції з коротким поясненням.

1. Вулик

Вулик Apache був заснований Facebook, а згодом пожертвований фондом Apache, який є інфраструктурою сховища даних, він полегшує написання SQL, як Query під назвою HQL або HiveQL. Ці запити внутрішньо перетворюються на завдання зменшення карт, а обробка виконується з використанням розподілених обчислень Hadoop. Він може обробляти дані, які перебувають у форматі HDFS, S3 та всі сховища, сумісні з Hadoop. Ми можемо використовувати засоби, які надає Map Reduce, коли нам щось важко реалізувати у вулику, використовуючи функції, визначені користувачем. Це дозволяє користувачеві зареєструвати UDF та використовувати його у робочих місцях.

Особливості вулика

  • Hive може обробляти багато типів форматів файлів, таких як файл послідовності, файл ORC, TextFile тощо.
  • Для швидшого виконання доступні розділення, розбиття та індексація.
  • Стислі дані також можна завантажувати в таблицю вуликів.
  • Керовані або Внутрішні таблиці та зовнішні таблиці - важливі особливості вулика.

2. Свиня

Yahoo розробив свиню Apache, щоб мати додатковий інструмент для зміцнення Hadoop, використовуючи спеціальний спосіб впровадження зменшення карт. У Pig є двигун під назвою Pig Engine, який перетворює сценарії в зменшення карти. Pig - це сценарна мова, сценарії, написані для Pig, знаходяться в PigLatin, подібно до Hive тут, також ми можемо мати UDF для підвищення функціональності. Завдання в Pig оптимізуються автоматично, тому програмістам не потрібно про це турбуватися. Свиня обробляє як структуровані, так і неструктуровані дані.

Особливості Свині

  • Користувачі можуть мати власні функції робити спеціальний тип обробки даних.
  • Писати коди в Pig легко порівняно, також довжина коду менше.
  • Система може автоматично оптимізувати виконання.

3. Sqoop

Sqoop використовується для передачі даних з HDFS в RDBMS і навпаки. Ми можемо перетягувати дані до HDFS з RDBMS, Hive тощо. Ми можемо обробляти та експортувати їх у RDBMS. Ми можемо додавати дані багато разів у таблицю, також ми можемо створити завдання Sqoop та виконати його «n» кількість разів.

Особливості Sqoop

  • Sqoop може імпортувати всі таблиці одразу в HDFS.
  • Ми можемо вбудувати SQL-запити, а також умови імпорту даних.
  • Ми можемо імпортувати дані у вулик, якщо в таблиці є HDFS.
  • Кількість відображувачів можна керувати, тобто паралельне виконання може бути кероване, вказавши кількість відображувачів.

4. HBase

Система управління базами даних поверх HDFS називається HBase. HBase - це база даних NoSQL, розроблена поверх HDFS. HBase не є реляційною базою даних, вона не підтримує структуровані мови запитів. HBase використовує розподілену обробку HDFS. У ньому можуть бути великі таблиці з мільйонами і мільйонами записів.

Особливості HBase

  • HBase забезпечує масштабованість як лінійної, так і модульної.
  • API в JAVA можна використовувати для доступу клієнта.
  • HBase забезпечує оболонку для виконання запитів.

5. Зоопарк

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

Особливості Zookeeper

  • Продуктивність може бути збільшена шляхом розподілу завдань, які досягаються додаванням більшої кількості машин.
  • Він приховує складність розподілу і зображує себе як єдину машину.
  • Збій декількох систем не впливає на всю систему, але недолік цього може призвести до часткової втрати даних.
  • Це забезпечує атомність, тобто транзакція є успішною або невдалою, але не в недосконалому стані.

6. Флюм

Apache Flume - це інструмент, який забезпечує прийом даних, який може збирати, агрегувати та транспортувати величезну кількість даних з різних джерел до HDFS, HBase тощо. Flume дуже надійний і може бути налаштований. Він був розроблений для передачі потокових даних з веб-сервера або даних про події в HDFS, наприклад, він може передавати дані Twitter з HDFS. Flume може зберігати дані в будь-якому з централізованих сховищ даних, таких як HBase / HDFS. Якщо виникла ситуація, коли дані виробляються з більшою швидкістю порівняно зі швидкістю, яку можна записати, тоді флюм виступає посередником і забезпечує стабільний потік даних.

Особливості Flume

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

Висновок - Інструменти Hadoop

Тут у цій статті ми дізналися про декілька інструментів Hadoop та про те, наскільки вони корисні у світі даних. Ми бачили вулик та свиню, які використовуються для запиту та аналізу даних, зсуву для переміщення даних та руху для передачі потокових даних у HDFS.

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

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

  1. Альтернативи Hadoop
  2. База даних Hadoop
  3. Функції струнних SQL
  4. Що таке великі дані

Категорія: