Введение в Sqoop Интервью Вопросы и ответы

Sqoop - это инструмент передачи данных с открытым исходным кодом, инструмент Sqoop для передачи данных между Hadoop Ecosystem и серверами реляционных баз данных (RDBMS). Он импортирует данные в файловую систему Hadoop (HDFS), из реляционных баз данных, таких как Oracle, MySQL и т. Д., А также экспортирует данные из файловой системы Hadoop в RDMS.

Ниже приведены 15 важных вопросов и ответов Sqoop в 2019 году:

Итак, вы, наконец, нашли работу своей мечты в Sqoop, но задаетесь вопросом, как взломать интервью Sqoop и какие могут быть вероятные вопросы об интервью Sqoop в 2019 году. Каждое собеседование отличается и объем работы также отличается. Помня об этом, мы разработали самые распространенные вопросы и ответы Sqoop для интервью, чтобы помочь вам добиться успеха на собеседовании.

Эти вопросы делятся на две части:

Часть 1 - Sqoop Интервью Вопросы (Основной)

Эта первая часть охватывает основные вопросы и ответы Sqoop Interview.

1. Определите Sqoop и почему мы используем Sqoop?

Ответ:
Sqoop - это инструмент передачи данных с открытым исходным кодом, предназначенный для передачи данных между Hadoop Ecosystem и серверами реляционных баз данных (RDBMS). Sqoop используется для импорта данных из реляционных баз данных, таких как Oracle, MySQL и т. Д., В файловую систему Hadoop (HDFS), а также для экспорта данных из файловой системы Hadoop в реляционные базы данных.

2. Каковы различные особенности Sqoop?

Ответ:
Ниже приведены различные функции, поддерживаемые Sqoop -

  1. Грузоподъемность
  2. Полная загрузка и добавочная загрузка
  3. Методы сжатия данных
  4. Импорт результатов SQL-запросов
  5. Соединители данных для всех основных баз данных
  6. Поддержка прямой загрузки данных в файловые системы Hadoop
  7. Конфигурации безопасности, такие как Kerberos
  8. Функции одновременного импорта или экспорта

Давайте перейдем к следующим Вопросам Интервью Sqoop.

3. Назовите реляционные базы данных и источники экосистемы Hadoop, поддерживаемые в Sqoop?

Ответ:
В настоящее время Sqoop поддерживает MySQL, PostgreSQL, Oracle, MSSQL, Teradata и IBM Netezza как часть реляционных баз данных.

В настоящее время поддерживаемые службы назначения Hadoop Eco-system включают HDFC, Hive, HBase, H Catalog и Accumulo.

Sqoop использует MySQL в качестве базы данных по умолчанию.

4. Как работает Sqoop?

Ответ:
Это общие вопросы интервью Sqoop, задаваемые в интервью. Для выполнения передачи данных Sqoop использует команды экспорта и импорта. Программа Map Reduce будет использоваться в Sqoop для хранения набора данных в HDFS. Команды будут связаны с задачами Map для извлечения данных из реляционных баз данных; Задача Reduce возьмет на себя ответственность за размещение полученных данных в места назначения (HDFS / HBase / Hive)

Sqoop также использует различные API-коннекторы для соединения с несколькими базами данных. Sqoop также предоставляет возможность создания пользовательских соединителей для удовлетворения определенных требований.

Давайте рассмотрим примеры команд ниже для импорта и экспорта

Команда для подключения к базе данных MySQL для импорта данных из таблицы 'Log'

sqoop import –connect jdbc: mysql: // localhost / –username –password –table –m 1
sqoop import –connect jdbc: mysql: // localhost / mytestdb – root пользователя –password admin123 –table log –m 1

Команда для экспорта данных из HDFS в реляционную базу данных

sqoop export –connect jdbc: mysql: // localhost / sqoop_export –table export-dir / sqoop / emp_last / part-m-00000 –update-id ключа
sqoop export –connect jdbc: mysql: // localhost / sqoop_export –table log_table – export-dir / sqoop / data / foler1 / part-m-00000

5. Что такое Sqoop Metastore? Объясни это?

Ответ:
Sqoop Metastore - это инструмент, доступный в Sqoop, который будет использоваться для настройки приложения Sqoop для включения хостинга общего репозитория в форме метаданных. Этот Metastore можно использовать для выполнения заданий и управления количеством пользователей на основе пользовательских ролей и действий. Все несколько пользователей могут выполнять несколько задач или операций одновременно для эффективного выполнения задач. По умолчанию Sqoop Metastore будет реализован в виде представления в памяти. Когда задание создается в Sqoop, определение задания сохраняется в Metastore и будет при необходимости отображаться в списке заданий Sqoop.

6. Какие форматы файлов поддерживает Sqoop при импорте данных?

Ответ:
Sqoop использует два формата файлов для импорта данных. Это: - Формат файла с разделителями теста и Формат файла последовательности.

Формат текстового файла с разделителями: текстовый формат с разделителями - это формат файла по умолчанию для импорта. Мы все еще можем явно указать, используя аргумент –as-textile. Аналогично, передача аргумента установит символы разделителя между строками и столбцами.

Формат файла последовательности : этот формат файла, мы можем сказать, что это двоичный формат файла. Этот тип записей файла формата хранится в пользовательских типах данных, определенных как классы Java.

Давайте перейдем к следующим Вопросам Интервью Sqoop.

7. Можем ли мы контролировать количество картографов в sqoop? Если да, то как?

Ответ:
Да, мы можем контролировать количество отображений в Sqoop, указав параметр «-num-mappers» в команде sqoop. Этот параметр может управлять количеством задач на карте, то есть только степенью параллелизма будет использоваться sqoop. Количество будет определяться в зависимости от требования.

Синтаксис: Используйте эти флаги для управления количеством картографов: m, -num- mappers

Часть 2 - Sqoop Интервью Вопросы (Advanced)

Давайте теперь посмотрим на расширенные вопросы интервью Sqoop.

8. Что такое Sqoop-merge и объясните его использование?

Ответ:
Sqoop merge - это инструмент, который объединяет два разных набора данных, которые поддерживают единственную версию, перезаписывая записи в более старой версии набора данных новыми файлами, чтобы сделать его набором данных последней версии. Происходит процесс выравнивания при объединении двух разных наборов данных, который сохраняет данные без потерь, а также с эффективностью и безопасностью. Для выполнения этой операции будет использоваться команда слияния, например «–merge-key»

9. Каковы различия между Sqoop, flume и distcp?

Ответ:
Оба Distcp и Sqoop используются для передачи данных. Sqoop используется для передачи данных любого типа из одного кластера Hadoop в другой кластер, тогда как Sqoop передает данные между реляционными базами данных и экосистемой Hadoop, такими как Hive, HDFS и HBase, и т. Д. Но оба метода используют один и тот же подход для копирования данных, который является тяга / передача.

Flume распространил инструмент, основанный на агентной архитектуре, для потоковой передачи журналов в экосистему Hadoop. В то время как Sqoop является архитектурой, основанной на соединителях.

Flume собирает и объединяет огромное количество данных журнала. Flume может собирать данные из ресурсов другого типа; он не учитывает схему или структурированные / неструктурированные данные. Flume может вытащить любой тип данных. Принимая во внимание, что Sqoop может импортировать только данные реляционной базы данных, поэтому схема является обязательной для обработки sqoop. Как правило, для перемещения объемных рабочих нагрузок лучше всего использовать желоб.

Давайте перейдем к следующим Вопросам Интервью Sqoop.

10. Какие источники данных поддерживаются Apache Sqoop?

Ответ:
Различные источники данных из различных приложений, поддерживаемых Apache Sqoop, перечислены ниже:

  1. улей
  2. HBase
  3. Распределенная файловая система Hadoop (HDFS)
  4. HCatalog
  5. Accumulo

11. Какие команды / функции наиболее часто используются в Sqoop?

Ответ:

Это расширенные вопросы интервью Sqoop, заданные в интервью. Список основных команд, используемых в Sqoop:

Codegen -Codegen используется для генерации кода для связи с записями базы данных.

Eval -Sqoop Eval помогает запускать примеры SQL-запросов к базам данных и предоставляет результаты на консоли.

Помощь -Помощь список доступных команд

Import -Import импортирует таблицу в экосистему Hadoop

Export -Export используется для экспорта данных HDFS в реляционные базы данных.

Create-hive-table -Эта команда полезна для импорта определения таблицы в Hive.

Import-all-tables -Import-all-tables импортирует таблицы для формирования реляционных баз данных в HDFS.

Список баз данных - он перечислит все базы данных, присутствующие на сервере.

List-tables -It перечислит все таблицы, присутствующие в базе данных.

Версии -Отобразит информацию о версии.

Функции -Параллельный импорт / экспорт, Полная загрузка, Инкрементная загрузка, Полная загрузка, Сравнение, Соединители для баз данных RDBMS, Интеграция безопасности Kerberos, Загрузка данных непосредственно в HDFS (Hive / HBase)

12. Объясните лучшие практики при импорте таблиц из MySQL или любых других баз данных, используя Sqoop?

Ответ:
При импорте таблиц из MySQL мы должны убедиться в некоторых вещах, таких как аутентификация и авторизация на целевом сервере и в базах данных. Нам нужно убедиться, что мы предоставили необходимые привилегии для баз данных, к которым необходимо получить доступ, а также убедиться в разрешении имени хоста при подключении к имени хоста источника и назначения. Если у нас нет необходимых разрешений, мы получим исключение при сбое подключения при подключении к базе данных.

13. Как вы обновляете уже экспортированные данные или строки?

Ответ:
Чтобы обновить строки, которые уже экспортированы в место назначения, мы можем использовать параметр «–update-key». При этом используется список столбцов, разделенных запятыми, который уникально идентифицирует строку, и все эти столбцы используются в предложении WHERE сгенерированного запроса UPDATE. Часть запроса SET позаботится обо всех остальных столбцах таблицы.

Давайте перейдем к следующим Вопросам Интервью Sqoop.

14. Как настроить и установить драйвер JDBC в Apache Sqoop?

Ответ:
Драйверы JDB в Apache Sqoop могут быть настроены на основе поставщика Hadoop, такого как Cloudera или Hortonworks, где он немного отличается в своей конфигурации на основе поставщика Hadoop. JDBC в Cloudera можно настроить, создав папку библиотеки, например / var / lib /. Это можно сделать для любой сторонней библиотеки, которая должна быть настроена в соответствии с требованиями. Таким образом, любой тип базы данных может быть настроен с использованием его драйвера JDBC. Помимо драйвера JDBC, для Apache Sqoop требуется соединитель для установления соединения между различными реляционными базами данных. Основные компоненты, необходимые для установления соединения с базами данных, через драйвер и соединитель конкретного поставщика базы данных.

15. Что такое разделенное предложение и когда мы его используем?

Ответ:
Параметр split-by предназначен для разделения данных, которые будут импортированы в несколько параллельных задач. Используя этот параметр, мы можем указать имена столбцов, это имена столбцов, на основе которых sqoop будет делить импортируемые данные на несколько кусков, и они будут работать в параллельном режиме. Это один из приемов настройки производительности в Sqoop.

Рекомендуемые статьи

Это было руководство к списку вопросов и ответов об интервью Sqoop, чтобы кандидат мог легко разобрать эти вопросы об интервью Sqoop. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Hadoop vs Teradata - что выгодно
  2. 13 удивительных вопросов интервьюирования базы данных
  3. Топ 10 самых полезных вопросов для интервью на HBase
  4. 10 самых удивительных вопросов об интервью PHP для опытных
  5. Знайте Топ 5 полезных вопросов интервью DBA