Разница между ульем и импалой
Hive - это проект программного обеспечения для хранилищ данных, построенный на основе APACHE HADOOP, разработанный командой Джеффа в Facebook с текущей стабильной версией 2.3.0. Он используется для обобщения больших данных и упрощает запросы и анализ. Apache Hive - эффективный стандарт для SQL-in Hadoop. Impala - это механизм обработки параллельных запросов SQL, который работает на Apache Hadoop и используется для обработки данных, которые хранятся в HBase (база данных Hadoop) и распределенной файловой системе Hadoop. Impala - это продукт SQL-запросов с открытым исходным кодом для параллельной обработки (MPP) для данных, хранящихся в локальном системном кластере, работающем на Apache Hadoop. Apache Hive и Impala являются ключевыми частями системы Hadoop.
Итак, давайте подробно изучим Hive и Impala:
Улей
- Apache Hive помогает анализировать огромный набор данных, хранящийся в файловой системе Hadoop (HDFS) и других совместимых файловых системах.
- Hive QL - Для запроса данных, хранящихся в кластере Hadoop .
- Эксплуатирует масштабируемость Hadoop при переводе .
- Улей не полная база данных .
- Он не обеспечивает обновления на уровне записи .
- Hadoop - это пакетно-ориентированная система .
- Запросы Hive имеют высокую задержку из-за MapReduce .
- Hive не предоставляет возможности , близкие к OLAP .
- Лучше всего подходит для приложений хранилища данных .
- Выполнение запроса через MapReduce .
- Язык запросов может использоваться с пользовательскими скалярными функциями (UDF), агрегатами (UDAF) и табличными функциями (UDTF) .
- Hive также обеспечивает индексирование для ускорения, тип индекса, включая индекс сжатия и растрового изображения, начиная с 0.10, планируется больше типов индекса.
- Hive поддерживает следующие типы хранилищ: RCfile, HBase, ORC и обычный текст .
- SQL-подобные запросы (Hive QL), которые неявно преобразуются в задания MapReduce, Tez или Spark .
- По умолчанию Hive хранит метаданные во встроенной базе данных Apache Derby .
IMPALA
- Impala - это механизм запросов, который работает на Hadoop . Это публичное бета-тестирование было объявлено в октябре 2012 года и стало общедоступным в мае 2013 года.
- Он поддерживает HDFS Apache HBase и Amazon S3 .
- Читает форматы файлов Hadoop, включая текстовые файлы, файлы Parquet, Avro, RCFile, LZO и Sequence .
- Поддерживает Hadoop Security (аутентификацию Kerberos) .
- Использует метаданные, драйвер ODBC и синтаксис SQL из Apache Hive .
- Он поддерживает несколько кодеков сжатия:
(a) Snappy (рекомендуется для эффективного баланса между степенью сжатия и скоростью распаковки),
(б) Gzip (рекомендуется при достижении максимального уровня сжатия),
(c) Deflate (не поддерживается для текстовых файлов), Bzip2, LZO (только для текстовых файлов);
- Это позволяет запрашивать вложенные структуры, включая карты, структуры и массивы.
- Это позволяет многопользовательским параллельным запросам, а также позволяет контроль доступа на основе приоритетов и очереди запросов.
Сравнение лицом к лицу между ульем и импалой (инфографика)
Ниже приведено 20 лучших сравнений между Hive и Impala
Ключевая разница между Улей против Импалы
Различия между Улей против Импалы объясняются в пунктах, представленных ниже:
- Hive разработан командой Джеффа в Facebook, а Impala разработан Apache Software Foundation .
- Hive поддерживает формат файлов в формате Optimized row columnar (ORC) со сжатием Zlib, но Impala поддерживает формат Parquet с мгновенным сжатием .
- Hive написан на Java, а Impala написан на C ++.
- Скорость обработки запросов в Hive медленная, но Impala в 6-69 раз быстрее, чем Hive .
- В улье латентность высока, а в импале латентность низка .
- Hive поддерживает хранение файлов RC и ORC, но поддержка хранения Impala - это Hadoop и Apache HBase .
- Hive генерирует выражение запроса во время компиляции, но в Impala генерация кода для «больших циклов» происходит во время выполнения .
- Hive не поддерживает параллельную обработку, но Impala поддерживает параллельную обработку.
- Hive поддерживает MapReduce, но Impala не поддерживает MapReduce .
- В Hive нет функции безопасности, но Impala поддерживает аутентификацию Kerberos .
- В обновлении любого проекта, где важны совместимость и скорость, Hive - идеальный выбор, но для нового проекта Impala - идеальный выбор .
- Улей отказоустойчив, но Impala не поддерживает отказоустойчивость .
- Hive поддерживает сложный тип, но Impala не поддерживает сложные типы .
- Hive - это пакетный Hadoop MapReduce, а Impala - это база данных MPP .
- Hive не поддерживает интерактивные вычисления, но Impala поддерживает интерактивные вычисления .
- У запроса Hive есть проблема «холодного запуска», но в Impala процесс демона запускается во время самой загрузки .
- Менеджер ресурсов Hive - это YARN (еще один участник переговоров о ресурсах), но в Impala менеджер ресурсов является собственным * YARN .
- Все дистрибутивы Hive - это дистрибутив Hadoop, Hortonworks (Tez, LLAP), но в дистрибутиве Impala - Cloudera MapR (* Amazon EMR) .
- Аудитория улья - это инженеры данных, а аудитория Импалы - аналитик данных / специалисты по данным.
- Пропускная способность улья высока, но в Impala низкая .
Hive vs Impala Сравнительная таблица
Серийный номер. | Основа для сравнения | улей | Impala |
1. | Разработано | Apache Software Фонд |
|
2. | Формат файла |
|
|
3. | язык | Написано на JAVA | Написано на C ++ |
4. | Скорость обработки | Улей медленный | Импала быстро |
5. | Задержка | Высоко | Низкий |
6. | Поддержка хранилища | RC файл, ORC | Hadoop, Apache HBase |
7. | Преобразование кода | Создает выражение запроса во время компиляции | Генерация кода происходит во время выполнения. |
8. | Поддерживает параллельную обработку | нет | да |
9. | Поддержка MapReduce | да | нет |
10. | Hadoop Security | нет | Поддерживает аутентификацию Kerberos. |
11. | использование | Идеально подходит для обновления проекта | Идеально для начала нового проекта. |
12. | Отказоустойчивой | Улей терпимый к ошибкам. | Не поддерживает отказоустойчивость. |
13. | Сложные типы | Улей поддерживает сложные типы. | Импала не поддерживает сложные типы. |
14. | Тип базы данных | Hive - это пакетный Hadoop MapReduce. | Это база данных MPP |
15. | Интерактивные вычисления | Не поддерживает интерактивные вычисления. | Поддерживает интерактивные вычисления. |
16. | выполнение | В запросе Hive возникла проблема с «холодным стартом» | Процесс импалы всегда начинается во время загрузки демонов. |
17. | Управление ресурсами | ПРЯЖА | Родной * YARN |
18. | Распределения | HIVE - все дистрибутивы Hadoop, Hortonworks (Tez, LLAP) | Cloudera MapR, (* Amazon EMR) |
19. | Аудитория | Инженеры данных | Аналитик данных / Ученые данных |
20. | пропускная способность | Высокая пропускная способность | Низкая пропускная способность |
Вывод - Улей против Импалы
В этой статье мы попытались продемонстрировать, каковы две технологии, а именно Hive и Impala, а также основное различие между этими технологиями. В практическом плане мы можем сказать, что Hive и Impala не являются конкурентами, они оба принадлежат одному и тому же фундаменту, известному как MapReduce для выполнения запросов, использование обоих может создать разницу. В соответствии с нашими потребностями мы можем использовать его вместе или наилучшим образом в зависимости от совместимости, потребностей и производительности. Языком запросов Hive является Hive QL, который является очень универсальным и универсальным языком, в то время как Impala требует большого объема памяти и не очень хорошо подходит для обработки тяжелых данных, например запросов на соединение. Если в вашем проекте работа связана с пакетной обработкой большого объема данных, Hive в этом случае будет лучше, а если ваша работа связана с процессом специального запроса данных в реальном времени, тогда Impala будет лучше тот случай.
Рекомендуемая статья
Это было руководство по Hive Vs Impala, их значению, сравнению лицом к лицу, ключевым различиям, сравнительной таблице и выводам. Вы также можете посмотреть следующие статьи, чтобы узнать больше -
- Apache Hive против Apache Spark SQL - 13 удивительных отличий
- Hive VS HUE - Топ 6 полезных сравнений для изучения
- Apache Pig против Apache Hive - Лучшие 12 полезных отличий
- Hadoop vs Hive - узнай лучшие отличия
- Использование функции ORDER BY в Hive