Сведения о вопросе

Gaukhar

05:11, 26th August, 2020

Теги

hadoop   hbase   hive    

Как Hive сравнивается с HBase?

Просмотров: 435   Ответов: 7

Мне интересно узнать, как недавно выпущенный ( http://mirror.facebook.com/facebook/hive/hadoop-0.17/) Hive сравнивается с HBase по производительности. SQL-подобный интерфейс, используемый Hive, очень предпочтителен для HBase API, который мы реализовали.



  Сведения об ответе

piter

17:05, 12th August, 2020

Трудно найти много о Hive, но я нашел этот фрагмент на сайте Hive, который сильно склоняется в пользу HBase (полужирный добавлен):

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

Поскольку HBase и HyperTable - это все о производительности (будучи смоделированы на Google BigTable), они звучат так, что они, безусловно, будут намного быстрее, чем Hive, за счет функциональности и более высокой кривой обучения (например, у них нет соединений или синтаксиса SQL-подобного).


  Сведения об ответе

LIZA

05:13, 3rd August, 2020

С одной стороны, Hive состоит из пяти основных компонентов: SQL-подобного grammar и синтаксического анализатора, планировщика запросов, механизма выполнения запросов, хранилища метаданных и колоночной схемы хранения. Его основной фокус - это аналитические рабочие нагрузки в стиле хранилища данных, поэтому получение значений с низкой задержкой по ключу не требуется.

HBase имеет свой собственный репозиторий метаданных и столбчатый макет хранилища. Можно создавать HiveQL запросов по HBase таблицам, что позволяет HBase использовать преимущества grammar и синтаксического анализатора Hive, планировщика запросов и механизма выполнения запросов. Смотрите http://wiki.apache.org/hadoop/Hive/HBaseIntegration для получения более подробной информации.


  Сведения об ответе

9090

06:25, 29th August, 2020

Hive - это инструмент аналитики. Как и pig, он был разработан для специальной пакетной обработки потенциально избыточных объемов данных путем использования map reduce. Подумайте о террабайтах. Представьте себе, что вы пытаетесь сделать это в реляционной базе данных...

HBase-это хранилище ключевых значений на основе столбцов, основанное на BigTable. Вы не можете делать запросы сами по себе, хотя вы можете запускать задания map reduce на HBase. Это основной вариант использования-выборка строк по ключу или сканирование диапазонов строк. Важной особенностью является возможность иметь локальность данных при сканировании по диапазонам ключей строк для 'family' столбцов.


  Сведения об ответе

dump

06:50, 12th August, 2020

По моим скромным сведениям, Hive больше соответствует свинье. Hive-это SQL-как и свинья основан сценарий. Hive кажется более сложным с оптимизацией запросов и исполнительными механизмами, а также требует от конечного пользователя указать параметры схемы (раздел и т. д.). Оба предназначены для обработки текстовых файлов, или sequenceFiles.

HBase предназначен для хранения данных о значении ключа, а retrieve...you может сканировать или фильтровать эти пары значений ключа (строки). Вы не можете делать запросы по строкам (ключ, значение).


  Сведения об ответе

baggs

08:16, 2nd August, 2020

Начиная с самых последних выпусков Hive, многое изменилось, что требует небольшого обновления, поскольку Hive и HBase теперь интегрированы . Это означает, что Hive можно использовать в качестве слоя запроса к хранилищу данных HBase. Теперь, если люди ищут альтернативные интерфейсы HBase, Pig также предлагает действительно хороший способ загрузки и хранения данных HBase . Кроме того, похоже, что Cloudera Impala может предложить существенную производительность Hive на основе запросов поверх HBase. Они требуют до 45 раз более быстрых запросов по сравнению с традиционными настройками Hive.


  Сведения об ответе

COOL

21:06, 1st October, 2020

Hive и HBase используются для разных целей .

Hive :

Плюсы:

  1. Apache Hive -это инфраструктура хранилища данных , построенная поверх Hadoop .
  2. Он позволяет запрашивать данные, хранящиеся на HDFS для анализа через HQL, язык, подобный SQL, который будет преобразован в серию заданий Map Reduce
  3. Он запускает только пакетные процессы на Hadoop.
  4. он совместим с JDBC, а также интегрируется с существующими инструментами на базе SQL
  5. Hive поддерживает разделы
  6. Он поддерживает аналитический запрос данных , собранных в течение определенного периода времени

Аферы:

  1. В настоящее время он не поддерживает операторы обновления
  2. Он должен быть снабжен предопределенной схемой для сопоставления файлов и каталогов в столбцы

HBase :

Плюсы:

  1. Масштабируемая распределенная база данных, поддерживающая структурированное хранение данных для больших таблиц
  2. Он обеспечивает случайный, в режиме реального времени доступ для чтения/записи к вашим большим данным. HBase операций, выполняемых в режиме реального времени в его базе данных, а не MapReduce заданий
  3. он поддерживает разделы в таблицы, а таблицы дополнительно разбиваются на семейства столбцов
  4. Масштабирование по горизонтали с огромным количеством данных с помощью Hadoop
  5. Обеспечивает ключевой доступ к данным при их хранении или извлечении. Он поддерживает добавление или обновление строк.
  6. Поддерживает версонирование данных.

Аферы:

  1. HBase запросы пишутся на пользовательском языке, который необходимо изучить
  2. HBase не полностью соответствует ACID
  3. Его нельзя использовать со сложными шаблонами доступа (такими как соединения)
  4. Это также не является полной заменой для HDFS при выполнении большой партии MapReduce

Резюме:

Hive можно использовать для аналитических запросов, а HBase-для запросов в реальном времени. Данные можно даже читать и записывать от Hive до HBase и обратно.


  Сведения об ответе

crush

06:34, 1st August, 2020

Чтобы сравнить Hive с Hbase, я хотел бы вспомнить следующее определение:

База данных, предназначенная для обработки транзакций, не предназначена для обработки аналитика. Он не структурирован так, чтобы делать аналитику хорошо. Хранилище данных, с другой стороны, он структурирован так, чтобы сделать аналитику быстрой и легкой.

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


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться