Вступ до запитань та відповідей з інтерв'ю

У новій ері даних Hive - це пакет інструментів інфраструктури з відкритим кодом з петабайтними масштабами з відкритим кодом для зберігання структурованих та неструктурованих даних на основі розподіленої файлової системи (HDFS)
для аналізу, запитів та видобутку величезних наборів даних з великим обсягом шляхом включення SQL-подібної мови під назвою HiveQL (HQL) та простого виконання запитів шляхом планування Hadoop MapReduce.

Вулик побудований на вершині Hadoop для обробки та аналізу великих даних та спрощує запит.
Спочатку вулик був створений Facebook, пізніше його вдосконалили та розробили як відкритий джерело Apache Software Foundation і назвали його Apache Hive. Зараз існує багато компаній, які використовують Apache Hive для своїх рішень Big Data.

Якщо ви шукаєте роботу, пов’язану з вуликом, вам потрібно підготуватися до запитань щодо співбесіди у 2018 році. Незважаючи на те, що кожне інтерв'ю різне, а сфера роботи також різна, ми можемо допомогти вам у вирішенні найпопулярніших запитань та відповідей на опитування у 2018 році, які допоможуть вам скокнути та досягти успіху в інтерв'ю.

Нижче наведено верхній список питань щодо інтерв'ю у вуликах, які в основному задаються в інтерв'ю. Ці питання розділені на дві частини:

Частина 1 - Питання щодо інтерв'ю з вуликом (основні)

Ця перша частина охоплює основні запитання та відповіді на опитування вуликів.

1. Перерахуйте різні компоненти архітектури вуликів?

Відповідь:
Нижче перелічено п'ять основних компонентів в архітектурі вуликів:
• Інтерфейс користувача (UI): Він виконує функцію комунікатора між користувачами та драйверами, коли користувач записує запити, користувальницький інтерфейс приймає його та запускає його на драйвері. Є два типи інтерфейсу: командний рядок та інтерфейс GUI.
• Драйвер: він підтримує життєвий цикл запиту HiveQL. Він отримує запити від інтерфейсу користувача та створює сеанс для обробки запиту.
• Компілятор: він отримує плани запитів від драйвера та отримує необхідну інформацію від Metastore для виконання плану.
• Metastore: він зберігає інформацію про дані, як таблиця; це може бути внутрішня чи зовнішня таблиця. Він надсилає інформацію метаданих компілятору для виконання запиту.
• Виконати двигун: служба Hive виконає результат у виконанні двигуна; він виконує запит у MapReduce для обробки даних. Він відповідає за контроль кожного етапу всіх цих компонентів.

2. Які існують різні типи режимів роботи Hive?

Відповідь:
Це звичайні запитання щодо опитування вуликів, задані в інтерв'ю. Вулик може працювати в двох режимах залежно від розміру даних,
Це такі режими:
• Режим зменшення карт
• Локальний режим

3. Які сценарії, в яких Hive можна використовувати, а їх не можна використовувати?

Відповідь :
Коли ви створюєте додатки для зберігання даних, коли ваші дані є статичними, коли вашій програмі не потрібен великий час відгуку, коли об'єм даних величезний, коли дані не змінюються швидко і коли ви використовуєте запити замість сценаріїв. Hive підтримує лише транзакції OLAP, вона не підходить для транзакцій OLTP.

Перейдемо до наступних запитань щодо інтерв'ю з вуликом.

4. Які формати файлів підтримує Hive? Перерахуйте тип програм, які підтримуються HIVE?

Відповідь:
За замовчуванням Hive підтримує формат текстового файлу, а також підтримує формат бінарних файлів, таких як файл послідовності, файли ORC, паркетні файли, файли даних Avro.
• Послідовність файлів: це, як правило, файл двійкового формату, який можна стискати та розділяти.
• Файл ORC: Оптимізований файл рядків стовпців записує файл на основі стовпців і файл, орієнтований на стовпчик.
• Паркетний файл: це бінарний файл, орієнтований на стовпчик, він дуже ефективний для масштабних запитів.
• Файл даних Avro: це той самий формат файлу послідовності, який є розділеним, стисливим та орієнтованим на рядки файлом.
Максимальний розмір рядкового типу даних, дозволений у вулику, становить 2 Гб.

Hive - структура сховища даних, яка підходить для тих програм, які написані на Java, C ++, PHP, Python або Ruby.

5. Які різні типи столів доступні в вулику?

Відповідь:
У додатку Hive є два типи таблиці, це:
• Керовані таблиці: Дані та схема контролюються вуликом.
• Зовнішні таблиці: Тільки схема управляє вуликом.

Частина 2 - Питання щодо інтерв'ю з вуликом (розширено)

Давайте тепер подивимось на розширені запитання щодо інтерв'ю з вуликом.

6. Що таке Metastore у вулику? Перерахуйте та поясніть різні типи конфігурації Hive Metastores?

Відповідь:
Metastore в вулику використовується для зберігання інформації метаданих, це центральне сховище у вулику. Це дозволяє зберігати інформацію метаданих у зовнішній базі даних. За замовчуванням Hive зберігає інформацію метаданих у базі даних Derby, але вона також може зберігатися в інших базах даних, таких як Oracle, MySql тощо.
Існує три типи конфігурації Metastore, це:
• Вбудована метасторія: це режим за замовчуванням; він може отримати локальний доступ до бібліотеки вулика, всі операції командного рядка виконуються у вбудованому режимі. Послуга Hive, служба метастара і база даних працюють в одному JVM.
• Локальна метасторія: Він зберігає дані у зовнішній базі даних, такі як MySql або Oracle. Послуга Hive та металомагазин працює у тому ж JVM, він підключається до бази даних, яка працює в окремому JVM.
• Віддалене зберігання металосервісу: Він використовує віддалений режим для запуску запитів, тут служба metastore і послуга вулика працює в окремому JVM. Ви можете мати декілька серверів мета-магазину для збільшення доступності.

7. Що таке процесор запиту вуликів? Які різні компоненти процесора запитів вуликів?

Відповідь:
Це найчастіші запитання щодо інтерв'ю Hive в інтерв'ю. Hive Query Processor використовується для перетворення SQL в завдання MapReduce. На основі порядку залежностей виконуються завдання.
Компоненти процесора запитів вуликів перераховані нижче:
• Семантичний аналізатор
• АДС та УДАФ
• Оптимізатор
• Оператор
• Парсер
• двигун виконання
• Перевірка типу
• Формування логічного плану
• Формування фізичного плану

8. Яка функціональність об'єкта-інспектора у вулику?

Відповідь:
Він складається з вулика, який використовується для ідентифікації структури окремих стовпців та внутрішньої структури об’єктів рядків. До складних об'єктів, які зберігаються у декількох форматах, можна отримати доступ за допомогою Object-Inspector у вулику.
Об'єкт-інспектор визначить структуру об'єкта та способи доступу до внутрішніх полів всередині об'єкта.

Перейдемо до наступних запитань щодо інтерв'ю з вуликом.

9. Які існують способи підключення програм до сервера Hive?

Відповідь:
Існує три способи підключення програм до сервера Hive, це:
• Ощадливий клієнт: використовується для запуску всіх команд вулика з використанням іншої мови програмування, наприклад Java, C ++, PHP, Python або Ruby.
• Драйвер ODBC: Це підтримує протокол ODBC
• Драйвер JDBC: Це підтримує протокол JDBC

10. Що таке класи для читання та запису у вулику за замовчуванням?

Відповідь:
Нижче представлені класи читання та запису, доступні в вулику:
• TextInputFormat - Цей клас використовується для читання даних у простому текстовому форматі.
• HiveIgnoreKeyTextOutputFormat - Цей клас використовується для запису даних у простому текстовому форматі.
• SequenceFileInputFormat - Цей клас використовується для зчитування даних у форматі файлів Hadoop Sequence.
• SequenceFileOutputFormat - Цей клас використовується для запису даних у форматі файлів Hadoop Sequence.

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

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

  1. 5 найкращих запитань та відповідей щодо інтерв'ю DBA
  2. 12 найбільш дивовижних запитань та відповідей щодо інтерв'ю GitHub
  3. 15 найважливіших запитань і відповідей щодо Ruby
  4. Топ-10 найкорисніших запитань щодо інтерв'ю HBase