Архитектура и работа улья
Опубликовано: 30 Ноября, 2021
Предварительное условие - Введение в Hadoop, Apache Hive
Основные компоненты Hive и его взаимодействие с Hadoop показаны на рисунке ниже, а все компоненты описаны ниже:
- Пользовательский интерфейс (UI) -
Как следует из названия, пользовательский интерфейс обеспечивает интерфейс между пользователем и ульем. Это позволяет пользователю отправлять запросы и другие операции в систему. Пользовательский интерфейс поддерживает веб-интерфейс Hive, командную строку Hive и Hive HD Insight (на сервере Windows). - Водитель -
Запросы пользователя после интерфейса принимаются драйвером в Hive. Концепция дескрипторов сеанса реализуется драйвером. Выполнение и выборка API, смоделированных на интерфейсах JDBC / ODBC, обеспечивается пользователем. - Компилятор -
Запросы - это синтаксический анализ, семантический анализ различных блоков запроса и выражения запроса выполняется компилятором. План выполнения с помощью таблицы в базе данных и метаданных раздела, наблюдаемых из хранилища метаданных, в конечном итоге генерируется компилятором. - Метастор -
Все структурированные данные или информация о различных таблицах и разделах в хранилище, содержащие атрибуты и информацию об уровне атрибутов, хранятся в хранилище метаданных. Последовательности или де-последовательности, необходимые для чтения и записи данных и соответствующих файлов HDFS, в которых хранятся данные. Hive выбирает соответствующие серверы баз данных для хранения схемы или метаданных баз данных, таблиц, атрибутов в таблице, типов данных баз данных и сопоставления HDFS. - Механизм исполнения -
Выполнение плана выполнения, составленного компилятором, выполняется в механизме выполнения. План представляет собой DAG этапов. Механизм выполнения управляет зависимостями в рамках различных этапов плана, а также выполняет эти этапы на подходящих системных компонентах.
На приведенной выше диаграмме вместе с архитектурой процесс выполнения задания в Hive с Hadoop демонстрируется шаг за шагом .
- Шаг 1: Выполнить запрос -
Интерфейс Hive, такой как командная строка или пользовательский веб-интерфейс, доставляет запрос драйверу для выполнения. В этом случае пользовательский интерфейс вызывает интерфейс выполнения для драйвера, такого как ODBC или JDBC. - Шаг 2. Получите план -
Драйвер создает дескриптор сеанса для запроса и передает запрос компилятору, чтобы составить план выполнения. Другими словами, драйвер взаимодействует с компилятором. - Шаг 3. Получите метаданные -
При этом компилятор передает запрос метаданных в любую базу данных, а компилятор получает необходимые метаданные из хранилища метаданных. - Шаг 4. Отправьте метаданные -
Хранилище метаданных передает метаданные в качестве подтверждения компилятору. - Шаг 5. Отправьте план -
Компилятор взаимодействует с драйвером с планом выполнения, созданным компилятором для выполнения запроса. - Шаг 6: Выполнить план -
План выполнения отправляется драйвером механизму выполнения.- Выполнить задание
- Работа сделана
- Операция dfs (операция метаданных)
- Шаг 7: Получите результаты -
Получение результатов от драйвера в пользовательский интерфейс (UI). - Шаг 8: отправьте результаты -
Результат передается механизму исполнения от драйвера. Отправка результатов в Execution Engine. Когда результат извлекается из узлов данных в механизм выполнения, он возвращает результат драйверу и пользовательскому интерфейсу (UI).