Введение в альтернативы улья

Прежде чем обсудить альтернативы ВИЧ. Давайте сначала разберемся, что такое HIVE? Итак, HIVE - это в основном инструмент хранилища данных, разработанный на основе HDFS (Hadoop Distributed File System). Он используется для предоставления SQL-подобного интерфейса запросов для запроса данных, которые хранятся в различных файлах, интегрированных с Hadoop. Он преобразует SQL-подобные запросы в задания Map Reduce, которые помогают легко выполнять большие объемы данных.

Характеристики

Ниже приведены некоторые особенности Hive:

  • Как и SQL, он имеет свой собственный декларативный язык, называемый HiveQL.
  • Он имеет структуру таблиц, аналогичную таблицам в реляционной базе данных, а также обеспечивает поддержку ETL (извлечение / поддержка / загрузка).
  • Интересной особенностью является то, что она позволяет конвертировать формат изнутри HIVE.

Ограничение альтернатив улья

Давайте узнаем несколько ограничений Hive:

  • Он не предназначен для OLTP (оперативная обработка транзакций), но поддерживает OLAP (оперативная аналитическая обработка).
  • Одним из важных ограничений является то, что он не поддерживает обновления и удаления.
  • В Hive подзапросы также не поддерживаются.

5 важных альтернатив улья

Ниже мы обсудим пять важных альтернатив ВИЧ-инфекции, представленных на рынке:

1. Apache Impala

Это механизм SQL-запросов с параллельной обработкой с открытым исходным кодом для данных, хранящихся в кластере компьютеров, на котором работает Apache Hadoop. Это было объявлено в октябре 2012 года. Ниже приведены основные особенности Apache Impala как альтернативы HIVE.

  • Impala - хороший выбор для людей, выполняющих SQL-запросы в Hadoop и Apache HBase без преобразования данных, поскольку для преобразования или перемещения данных не требуется, в отличие от HIVE.
  • Еще одно различие между этими двумя является генерация выражений запросов Impala генерирует их во время выполнения, используя llvm, в то время как HIVE генерирует их во время компиляции.
  • У запросов Hive есть проблема холодного запуска, которая не относится к запросам Impala, так как в Impala процессы демона запускаются непосредственно во время загрузки и всегда готовы обработать запрос, благодаря чему он избегает проблемы холодного запуска.
  • Impala распознает форматы файлов Hadoop, безопасность Hadoop, драйвер ODBC.
  • Основное назначение импалы - грубая сила параллельной обработки. Итак, Impala - лучшая альтернатива, если вы начинаете новый проект.

2. Presto DB

Presto - еще одна альтернатива для HIVE, разработанная Facebook. Его USP может даже запрашивать данные из нескольких источников в рамках одного запроса. Ниже приведены основные характеристики PrestoDB как альтернативы ВИЧ.

  • Presto - это механизм распределенных SQL-запросов в памяти, который также очень быстр, поскольку механизм запросов Presto быстр и хорошо подходит для интерактивного анализа.
  • USP для Presto над другими - это модель «подключи и работай» с различными источниками данных. Благодаря этой модели «подключи и работай» с Presto очень легко объединять запросы к различным источникам данных.
  • В Presto таблицы соединений небольших размеров были сделаны быстрее. Presto превосходит большинство других механизмов распределенных запросов.
  • Presto не подходит для больших объединений фактов, поскольку он не использует диск и не использует память для обработки.
  • Еще одним важным моментом для Presto является его распределение ресурсов. Он имеет приоритетное распределение ресурсов на основе очереди.
  • Одним из компромиссов для хорошей производительности в Presto является то, что поддержка UDF недоступна в Presto, из-за чего нужно написать собственную функцию, которая увеличивает накладные расходы, поскольку она должна быть построена исключительно для Presto и препятствует взаимодействию.

3. Spark SQL

Это модуль для обработки структурированных данных, а также с открытым исходным кодом. Он также может выступать в качестве механизма распределенного SQL-запроса, а также уникальной частью этого процесса, который обеспечивает абстракцию программирования, известную как фреймы данных. Впервые он был выпущен в 2014 году и разработан Apache Software Foundation. Ниже приведены некоторые характерные особенности Spark SQL как альтернативы HIVE.

  • Преимущество Spark SQL в том, что он может быть реализован на языке Java, Scala, Python и R, тогда как HIVE может быть реализован на языке Java.
  • Существует полное сходство в модели первичной базы данных между HIVE и Spark, поскольку обе модели первичной базы данных - реляционная СУБД.
  • Он также похож на HIVE, поскольку оба поддерживают хранилище Key-Value в качестве дополнительной модели базы данных.
  • Он имеет предопределенные типы данных, такие как float и date.
  • Он поддерживает SQL, поскольку обладает операторами DML и DDL.
  • В отличие от HIVE, который поддерживает JDBC, ODBC и Thrift, Spark SQL поддерживает только JDBC и ODBC.
  • Spark SQL использует Spark Core для хранения данных в разных узлах.
  • Другим важным отличием между spark и HIVE являются методы репликации: в HIVE существует селективный фактор репликации для хранения избыточных данных на нескольких узлах, но в Spark SQL этот фактор репликации недоступен.
  • В Spark SQL нет прав доступа для пользователей, тогда как в Apache Hive у нас есть права доступа для пользователей, групп.
  • Он не поддерживает транзакционную таблицу и не поддерживает тип char.

4. Акула

Это механизм SQL-запросов с открытым исходным кодом, написанный на Scala. Интересный факт, что Shark вместо того, чтобы использовать Map-Reduce для выполнения своих запросов, использует собственные наборы рабочих узлов. Ниже приведены некоторые особенности Shark:

  • Он использует клиент командной строки.
  • Он предлагает совместимость с Hive для совместного использования схемы.
  • Он обеспечивает поддержку существующих расширений улья, таких как UDF.

Это еще не очень известный, но он предоставляет альтернативу ВИЧ.

5. BigSQL от IBM

Предоставлено Big Blue (IBM). У IBM есть собственный дистрибутив Hadoop под названием Big Insights. Итак, Big SQL предлагается как его часть. Это не с открытым исходным кодом, как это предусмотрено IBM. Некоторые из вещей, которые они предоставляют, как показано ниже:

  • Они поддерживают драйверы JDBC и OJDBC.
  • Они обеспечивают поддержку SQL
  • Их можно использовать для запроса данных из HDFS.

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

Это руководство по альтернативам улья. Здесь мы обсуждаем особенности, ограничения и 5 важных альтернатив улья. Вы также можете просмотреть другие наши статьи, чтобы узнать больше-

  1. Hadoop Альтернативы
  2. Tableau Альтернативы
  3. Альтернативы Google Analytics
  4. Hadoop Streaming
  5. Улей Заказать
  6. Улей Установка
  7. Фреймы данных в R