Hive - это база данных, построенная на основе Hadoop, которая упрощает обобщение данных, специальные запросы и анализ больших наборов данных, хранящихся в распределенной файловой системе, совместимой с Hadoop. Hive предоставляет механизм для проецирования структуры на эти данные и запроса данных с использованием SQL-подобного языка, называемого HiveQL.

Apache Hive - это база данных, построенная на основе Hadoop, которая предоставляет следующие возможности:

  • Инструменты для упрощения суммирования данных (ETL)
  • Специальные запросы и анализ данных больших наборов данных, хранящихся в файловой системе Hadoop (HDFS)
  • Механизм для структурирования этих данных
  • Простой язык запросов под названием Hive QL, основанный на SQL и позволяющий пользователям, знакомым с SQL, запрашивать эти данные.

В то же время этот язык также позволяет традиционным программистам map/reduce подключать свои настраиваемые преобразователи и редукторы для более сложного анализа, который может не поддерживаться встроенными возможностями языка.

Поскольку Hive основан на Hadoop, он не обеспечивает и не может гарантировать низкие задержки при выполнении запросов. Парадигма здесь строго заключается в отправке заданий и получении уведомлений о завершении заданий, в отличие от запросов в реальном времени. В отличие от таких систем, как Oracle, где анализ выполняется на значительно меньшем объеме данных, но анализ выполняется гораздо более итеративно, при этом время ответа между итерациями составляет менее нескольких минут, Hive запрашивает время ответа даже для самых маленьких заданий. быть порядка нескольких минут. Однако для более крупных заданий (например, заданий, обрабатывающих терабайты данных) в целом они могут занять часы.

Подводя итог, можно сказать, что, хотя производительность с низкой задержкой не является главным приоритетом принципов проектирования Hive, следующие ключевые особенности Hive:

  • Масштабируемость (горизонтальное масштабирование за счет динамического добавления большего количества машин в кластер Hadoop)
  • Расширяемость (с каркасом map/reduce и UDF/UDAF/UDTF)
  • Отказоустойчивость
  • Слабая связь с входными форматами

Как написать хороший вопрос о Hive:

  1. Добавьте четкое текстовое описание проблемы.
  2. Предоставьте DDL запроса и / или таблицы, если применимо
  3. Предоставить сообщение об исключении
  4. Предоставьте пример входных и желаемых выходных данных
  5. Вопросы о производительности запроса должны включать вывод запроса EXPLAIN.
  6. Не используйте изображения для SQL, DDL, DML, примеров данных, вывода EXPLAIN и сообщений об исключениях.
  7. Используйте правильный код и форматирование текста

Официальный сайт:

Полезные ссылки: