Топ-60 запитань і відповідей на інтерв’ю Hadoop (2025)
Ось питання та відповіді на співбесіду Hadoop MapReduce для нових і досвідчених кандидатів, щоб отримати роботу своєї мрії.
Питання для співбесіди Hadoop MapReduce
1) Що таке Hadoop Map Reduce?
Для паралельної обробки великих наборів даних у кластері Hadoop використовується структура Hadoop MapReduce. Аналіз даних використовує двоетапну карту та процес скорочення.
2) Як працює Hadoop MapReduce?
У MapReduce під час фази карти він підраховує слова в кожному документі, тоді як на фазі зменшення він агрегує дані відповідно до документа, що охоплює всю колекцію. Під час фази відображення вхідні дані поділяються на частини для аналізу завданнями відображення, що виконуються паралельно в середовищі Hadoop.
👉 Безкоштовне завантаження PDF: Hadoop & MapReduce Interview Questions & Answers
3) Поясніть, що таке перетасування в MapReduce?
Процес, за допомогою якого система виконує сортування та передає вихідні дані карти в редуктор як вхідні дані, відомий як перемішування
4) Поясніть, що таке розподілений кеш у MapReduce Framework?
Розподілений кеш — це важлива функція, яка надається фреймворком MapReduce. Коли ви хочете поділитися деякими файлами між усіма вузлами в Hadoop Cluster, Використовується розподілений кеш. Файли можуть бути виконуваними файлами jar або простими файлами властивостей.

5) Поясніть, що таке NameNode у Hadoop?
NameNode у Hadoop — це вузол, де Hadoop зберігає всю інформацію про розташування файлів HDFS (розподілена файлова система Hadoop). Іншими словами, NameNode є центральною частиною файлової системи HDFS. Він зберігає записи про всі файли у файловій системі та відстежує дані файлів у кластері або кількох машинах
6) Поясніть, що таке JobTracker у Hadoop? Які дії виконує Hadoop?
In Hadoop для надсилання та відстеження завдань MapReduce використовується JobTracker. Відстеження завдань працює на власному процесі JVM
Job Tracker виконує такі дії в Hadoop
- Клієнтська програма надсилає завдання до системи відстеження вакансій
- JobTracker зв’язується з режимом імені, щоб визначити розташування даних
- Поруч із даними або з доступними слотами JobTracker знаходить вузли TaskTracker
- На вибраних вузлах TaskTracker він надсилає роботу
- Коли завдання не виконується, Job Tracker повідомляє про це та вирішує, що робити.
- Вузли TaskTracker контролюються JobTracker
7) Поясніть, що таке серцебиття в HDFS?
Heartbeat відноситься до сигналу, який використовується між вузлом даних і вузлом Name, а також між пристроєм відстеження завдань і пристроєм відстеження завдань. Якщо вузол відстеження імен або відстеження завдань не реагує на сигнал, то вважається, що з вузлом даних або завданням виникли певні проблеми трекер
8) Поясніть, що таке об’єднувачі та коли слід використовувати об’єднувачі в завданнях MapReduce?
Для підвищення ефективності Програма MapReduce, Використовуються комбайни. Обсяг даних можна зменшити за допомогою суматорів, які потрібно передати на редуктори. Якщо виконана операція є комутативною та асоціативною, ви можете використовувати свій код-редуцент як об’єднувач. Виконання комбінатора в Hadoop не гарантується
9) Що відбувається, коли вузол даних виходить з ладу?
Коли вузол даних виходить з ладу
- Jobtracker і namenode виявляють помилку
- На невдалому вузлі всі завдання переплановано
- Namenode копіює дані користувача на інший вузол
10) Поясніть, що таке спекулятивне виконання?
У Hadoop під час Speculative Execution запускається певна кількість дублюючих завдань. На іншому підлеглому вузлі можна виконати кілька копій одного завдання зіставлення або скорочення за допомогою спекулятивного виконання. Простіше кажучи, якщо певному диску потрібно багато часу для виконання завдання, Hadoop створить дублікат завдання на іншому диску. Диск, який першим завершив завдання, зберігається, а диски, які не завершили першим, знищуються.
11) Поясніть, які основні параметри Mapper?
Основними параметрами Mapper є
- Довгий запис і текст
- Текст і IntWritable
12) Поясніть, що таке функція розділювача MapReduce?
Функція секції MapReduce полягає в тому, щоб переконатися, що всі значення одного ключа надходять до того самого редуктора, що зрештою сприяє рівномірному розподілу виводу карти між редукторами
13) Поясніть, яка різниця між Input Split і HDFS Block?
Логічний поділ даних відомий як Split, тоді як фізичний поділ даних відомий як HDFS Block
14) Поясніть, що відбувається в текстовому форматі?
У форматі введення тексту кожен рядок у текстовому файлі є записом. Значення — це вміст рядка, а ключ — зміщення рядка в байтах. Наприклад, Ключ: longWritable, Значення: текст
15) Згадайте, які основні параметри конфігурації користувач має вказати, щоб запустити MapReduce Job?
Необхідно вказати користувача фреймворку MapReduce
- Розташування вхідних даних завдання в розподіленій файловій системі
- Місце виводу завдання в розподіленій файловій системі
- Формат введення
- Формат виводу
- Клас, що містить функцію map
- Клас, що містить функцію зменшення
- Файл JAR, що містить класи картографа, редуктора та драйвера
16) Поясніть, що таке WebDAV у Hadoop?
Для підтримки редагування та оновлення файлів WebDAV — це набір розширень HTTP. У більшості операційних систем спільні ресурси WebDAV можна монтувати як файлові системи, тому можна отримати доступ до HDFS як стандартної файлової системи, відкривши HDFS через WebDAV.
17) Поясніть, що таке Sqoop у Hadoop?
Для передачі даних між Управління реляційними базами даних (RDBMS) та Hadoop HDFS використовується інструмент, відомий як Sqoop. За допомогою Sqoop дані можна передавати з RDMS, наприклад MySQL or Oracle у HDFS, а також експортувати дані з файлу HDFS до RDBMS
18) Поясніть, як JobTracker планує завдання?
Засіб відстеження завдань надсилає повідомлення Jobtracker як правило кожні кілька хвилин, щоб переконатися, що JobTracker активний і функціонує. Повідомлення також інформує JobTracker про кількість доступних слотів, тому JobTracker може залишатися в курсі, де можна делегувати роботу кластера
19) Поясніть, що таке Sequencefileinputformat?
Sequencefileinputformat використовується для послідовного читання файлів. Це спеціальний формат стисненого двійкового файлу, оптимізований для передачі даних між виходом одного завдання MapReduce і входом іншого завдання MapReduce.
20) Поясніть, що робить клас conf.setMapper?
Conf.setMapperclass встановлює клас картографа та всі речі, пов’язані із завданням картографування, такі як читання даних і генерування пари ключ-значення з картографа
21) Поясніть, що таке Hadoop?
Це платформа програмного забезпечення з відкритим вихідним кодом для зберігання даних і запуску програм на кластерах звичайного обладнання. Він забезпечує величезну потужність обробки та масивне сховище для будь-яких типів даних.
22) Згадайте, яка різниця між RDBMS і Hadoop?
СУБД | Hadoop |
---|---|
РСУБД — це реляційна система керування базами даних | Hadoop — це плоска структура на основі вузлів |
Він використовувався для обробки OLTP, тоді як Hadoop | В даний час він використовується для аналітичної обробки та обробки BIG DATA |
У RDBMS кластер бази даних використовує ті самі файли даних, що зберігаються в спільному сховищі | У Hadoop дані зберігання можуть зберігатися незалежно в кожному вузлі обробки. |
Вам потрібно попередньо обробити дані перед їх збереженням | вам не потрібно попередньо обробляти дані перед їх збереженням |
23) Згадайте основні компоненти Hadoop?
Основні компоненти Hadoop включають:
- HDFS
- MapReduce
24) Що таке NameNode у Hadoop?
NameNode у Hadoop — це місце, де Hadoop зберігає всю інформацію про розташування файлів у HDFS. Це головний вузол, на якому запускається засіб відстеження завдань і складається з метаданих.
25) Згадайте, які компоненти даних використовує Hadoop?
Компоненти даних, які використовує Hadoop
26) Згадайте, який компонент зберігання даних використовує Hadoop?
Компонент зберігання даних, який використовує Hadoop, — це HBase.
27) Згадайте, які найпоширеніші формати введення визначені в Hadoop?
Найпоширеніші формати введення, визначені в Hadoop:
- TextInputFormat
- KeyValueInputFormat
- SequenceFileInputFormat
28) Що таке InputSplit у Hadoop?
Він розбиває вхідні файли на частини та призначає кожне розділення картографу для обробки.
29) Як ви будете писати спеціальний секціонер для роботи в Hadoop?
Ви пишете настроюваний секціонер для завдання Hadoop і йдете наступним шляхом
- Створіть новий клас, який розширює клас Partitioner
- Перевизначити метод getPartition
- В обгортці, яка запускає MapReduce
- Додайте спеціальний інструмент розділення до завдання за допомогою набору методів Partitioner Class або – додайте спеціальний інструмент розділення до завдання як файл конфігурації
30) Чи можна змінити кількість створюваних картографів для роботи в Hadoop?
Ні, неможливо змінити кількість створюваних картографів. Кількість картографів визначається кількістю вхідних поділів.
31) Поясніть, що таке файл послідовності в Hadoop?
Для зберігання двійкових пар ключ/значення використовується файл послідовності. На відміну від звичайного стисненого файлу, послідовний файл підтримує розділення, навіть якщо дані всередині файлу стиснуті.
32) Коли Namenode не працює, що відбувається з відстеженням завдань?
Namenode є єдиною точкою збою в HDFS, тому, коли Namenode не працює, ваш кластер запускається.
33) Поясніть, як виконується індексація в HDFS?
Hadoop має унікальний спосіб індексування. Після того, як дані зберігаються відповідно до розміру блоку, HDFS продовжить зберігати останню частину даних, яка вказує, де буде наступна частина даних.
34) Поясніть, чи можна шукати файли за допомогою символів підстановки?
Так, можна шукати файли за допомогою символів підстановки.
35) Перелічіть три файли конфігурації Hadoop?
Три файли конфігурації є
- core-site.xml
- mapred-site.xml
- hdfs-site.xml
36) Поясніть, як можна перевірити, чи працює Namenode за допомогою команди jps?
Окрім використання команди jps, щоб перевірити, чи працює Namenode, ви також можете скористатися
/etc/init.d/hadoop-0.20-namenode status.
37) Поясніть, що таке «map» і що таке «reducer» у Hadoop?
У Hadoop карта є етапом вирішення запитів HDFS. Карта зчитує дані з місця введення та виводить пару ключ-значення відповідно до типу введення.
У Hadoop редуктор збирає вихідні дані, згенеровані картографом, обробляє їх і створює власний остаточний результат.
38) Який файл у Hadoop керує звітністю в Hadoop?
У Hadoop звітами керує файл hadoop-metrics.properties.
39) Перелічіть вимоги до мережі для використання Hadoop?
Для використання Hadoop список вимог до мережі:
- З’єднання SSH без пароля
- Secure Shell (SSH) для запуску серверних процесів
40) Згадайте, що таке усвідомлення стійки?
Обізнаність про стійку — це спосіб, у який namenode визначає, як розмістити блоки на основі визначень стійки.
41) Поясніть, що таке засіб відстеження завдань у Hadoop?
Відстеження завдань у Hadoop — це демон підлеглого вузла в кластері, який приймає завдання від JobTracker. Він також кожні кілька хвилин надсилає повідомлення про серцебиття JobTracker, щоб підтвердити, що JobTracker все ще живий.
42) Згадайте, які демони працюють на головному та підлеглих вузлах?
- Демони, що працюють на головному вузлі, це «NameNode»
- Демони, що працюють на кожному підлеглому вузлі, це «Відстеження завдань» і «Дані».
43) Поясніть, як можна налагодити код Hadoop?
Популярні методи налагодження коду Hadoop:
- За допомогою веб-інтерфейсу, наданого структурою Hadoop
- За допомогою лічильників
44) Поясніть, що таке сховище та обчислювальні вузли?
- Вузол зберігання — це машина або комп’ютер, де знаходиться ваша файлова система для зберігання даних обробки
- Обчислювальний вузол — це комп’ютер або машина, де буде виконуватися ваша фактична бізнес-логіка.
45) Згадайте, для чого корисний об’єкт контексту?
Об’єкт Context дає змогу картографу взаємодіяти з рештою Hadoop
система. Він містить конфігураційні дані для завдання, а також інтерфейси, які дозволяють видавати вихідні дані.
46) Згадайте, що буде наступним кроком після Mapper або MapTask?
Наступним кроком після Mapper або MapTask є сортування вихідних даних Mapper і створення розділів для виводу.
47) Згадайте, який номер розділювача за замовчуванням у Hadoop?
У Hadoop типовим секціонером є «Hash» Partitioner.
48) Поясніть, яке призначення RecordReader у Hadoop?
У Hadoop RecordReader завантажує дані з джерела та перетворює їх у пари (ключ, значення), придатні для читання Mapper.
49) Поясніть, як розділяються дані перед надсиланням до редуктора, якщо в Hadoop не визначено спеціальний інструмент розділення?
Якщо в Hadoop не визначено спеціальний секціонер, тоді секціонер за замовчуванням обчислює хеш-значення для ключа та призначає розділ на основі результату.
50) Поясніть, що відбувається, коли Hadoop створив 50 завдань для завдання, і одне із завдань не вдалося виконати?
Він перезапустить завдання знову на якомусь іншому TaskTracker, якщо завдання перевищить визначений ліміт.
51) Згадайте, який найкращий спосіб копіювати файли між кластерами HDFS?
Найкращий спосіб копіювати файли між кластерами HDFS — використовувати кілька вузлів і команду distcp, тому робоче навантаження розподіляється.
52) Згадайте, яка різниця між HDFS і NAS?
Блоки даних HDFS розподіляються між локальними дисками всіх машин у кластері, а дані NAS зберігаються на спеціальному обладнанні.
53) Згадайте, чим Hadoop відрізняється від інших інструментів обробки даних?
У Hadoop ви можете збільшити або зменшити кількість картографів, не турбуючись про обсяг даних, які потрібно обробити.
54) Згадайте, яку роботу виконує клас conf?
Клас конфігурації завдань розділяє різні завдання, що виконуються в одному кластері. Він виконує параметри рівня роботи, такі як оголошення про роботу в реальному середовищі.
55) Згадайте, що таке договір Hadoop MapReduce API для класу ключів і значень?
Для класу ключа та значення існує два контракти Hadoop MapReduce API
- Значення має визначати інтерфейс org.apache.hadoop.io.Writable
- Ключ має визначати інтерфейс org.apache.hadoop.io.WritableComparable
56) Згадайте, у яких трьох режимах можна запускати Hadoop?
Існує три режими, в яких можна запускати Hadoop
- Псевдорозподілений режим
- Автономний (локальний) режим
- Повністю розподілений режим
57) Згадайте, що робить формат введення тексту?
Формат введення тексту створить рядковий об’єкт, який є шістнадцятковим числом. Значення розглядається як цілий рядковий текст, тоді як ключ розглядається як рядковий об’єкт. Програма відображення отримає значення як параметр «text», а ключ — як параметр «longwriteable».
58) Згадайте, скільки InputSplit робить Hadoop Framework?
Hadoop зробить 5 поділів
- 1 розбиття для 64K файлів
- 2 split для файлів розміром 65 Мб
- 2 розбиття для файлів по 127 Мб
59) Згадайте, що таке розподілений кеш у Hadoop?
Розподілений кеш у Hadoop — це функція, яка надається фреймворком MapReduce. Під час виконання завдання він використовується для кешування файлу. Framework копіює необхідні файли на підлеглий вузол перед виконанням будь-якого завдання на цьому вузлі.
60) Поясніть, як Hadoop Classpath відіграє важливу роль у зупинці або запуску демонов Hadoop?
Classpath складатиметься зі списку каталогів, що містять файли jar для зупинки або запуску демонов.
Ці запитання для співбесіди також допоможуть вам у життєдіяльності (усному)