Как зайти в Даркнет?!
25th January, 01:11
6
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
895
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
914
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6086
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4351
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4396
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Как Hive сравнивается с HBase?
Мне интересно узнать, как недавно выпущенный ( http://mirror.facebook.com/facebook/hive/hadoop-0.17/) Hive сравнивается с HBase по производительности. SQL-подобный интерфейс, используемый Hive, очень предпочтителен для HBase API, который мы реализовали.
Трудно найти много о Hive, но я нашел этот фрагмент на сайте Hive, который сильно склоняется в пользу HBase (полужирный добавлен):
Hive основан на Hadoop, которая является системой пакетной обработки. Соответственно, эта система не обещает и не может обещать низких задержек по запросам . Парадигма здесь заключается строго в отправке заданий и получении уведомления о завершении заданий, а не в запросах в реальном времени. В результате его не следует сравнивать с системами типа Oracle, где анализ выполняется на значительно меньшем объеме данных, но анализ проходит гораздо более итеративно, причем время отклика между итерациями составляет менее нескольких минут. Для Hive запросов время отклика даже для самых маленьких заданий может составлять порядка 5-10 минут, а для больших заданий это может даже доходить до нескольких часов.
Поскольку HBase и HyperTable - это все о производительности (будучи смоделированы на Google BigTable), они звучат так, что они, безусловно, будут намного быстрее, чем Hive, за счет функциональности и более высокой кривой обучения (например, у них нет соединений или синтаксиса SQL-подобного).
С одной стороны, Hive состоит из пяти основных компонентов: SQL-подобного grammar и синтаксического анализатора, планировщика запросов, механизма выполнения запросов, хранилища метаданных и колоночной схемы хранения. Его основной фокус - это аналитические рабочие нагрузки в стиле хранилища данных, поэтому получение значений с низкой задержкой по ключу не требуется.
HBase имеет свой собственный репозиторий метаданных и столбчатый макет хранилища. Можно создавать HiveQL запросов по HBase таблицам, что позволяет HBase использовать преимущества grammar и синтаксического анализатора Hive, планировщика запросов и механизма выполнения запросов. Смотрите http://wiki.apache.org/hadoop/Hive/HBaseIntegration для получения более подробной информации.
Hive - это инструмент аналитики. Как и pig, он был разработан для специальной пакетной обработки потенциально избыточных объемов данных путем использования map reduce. Подумайте о террабайтах. Представьте себе, что вы пытаетесь сделать это в реляционной базе данных...
HBase-это хранилище ключевых значений на основе столбцов, основанное на BigTable. Вы не можете делать запросы сами по себе, хотя вы можете запускать задания map reduce на HBase. Это основной вариант использования-выборка строк по ключу или сканирование диапазонов строк. Важной особенностью является возможность иметь локальность данных при сканировании по диапазонам ключей строк для 'family' столбцов.
По моим скромным сведениям, Hive больше соответствует свинье. Hive-это SQL-как и свинья основан сценарий. Hive кажется более сложным с оптимизацией запросов и исполнительными механизмами, а также требует от конечного пользователя указать параметры схемы (раздел и т. д.). Оба предназначены для обработки текстовых файлов, или sequenceFiles.
HBase предназначен для хранения данных о значении ключа, а retrieve...you может сканировать или фильтровать эти пары значений ключа (строки). Вы не можете делать запросы по строкам (ключ, значение).
Начиная с самых последних выпусков Hive, многое изменилось, что требует небольшого обновления, поскольку Hive и HBase теперь интегрированы . Это означает, что Hive можно использовать в качестве слоя запроса к хранилищу данных HBase. Теперь, если люди ищут альтернативные интерфейсы HBase, Pig также предлагает действительно хороший способ загрузки и хранения данных HBase . Кроме того, похоже, что Cloudera Impala может предложить существенную производительность Hive на основе запросов поверх HBase. Они требуют до 45 раз более быстрых запросов по сравнению с традиционными настройками Hive.
Hive и HBase используются для разных целей .
Hive :
Плюсы:
- Apache Hive -это инфраструктура хранилища данных , построенная поверх Hadoop .
- Он позволяет запрашивать данные, хранящиеся на HDFS для анализа через HQL, язык, подобный SQL, который будет преобразован в серию заданий Map Reduce
- Он запускает только пакетные процессы на Hadoop.
- он совместим с JDBC, а также интегрируется с существующими инструментами на базе SQL
- Hive поддерживает разделы
- Он поддерживает аналитический запрос данных , собранных в течение определенного периода времени
Аферы:
- В настоящее время он не поддерживает операторы обновления
- Он должен быть снабжен предопределенной схемой для сопоставления файлов и каталогов в столбцы
HBase :
Плюсы:
- Масштабируемая распределенная база данных, поддерживающая структурированное хранение данных для больших таблиц
- Он обеспечивает случайный, в режиме реального времени доступ для чтения/записи к вашим большим данным. HBase операций, выполняемых в режиме реального времени в его базе данных, а не MapReduce заданий
- он поддерживает разделы в таблицы, а таблицы дополнительно разбиваются на семейства столбцов
- Масштабирование по горизонтали с огромным количеством данных с помощью Hadoop
- Обеспечивает ключевой доступ к данным при их хранении или извлечении. Он поддерживает добавление или обновление строк.
- Поддерживает версонирование данных.
Аферы:
- HBase запросы пишутся на пользовательском языке, который необходимо изучить
- HBase не полностью соответствует ACID
- Его нельзя использовать со сложными шаблонами доступа (такими как соединения)
- Это также не является полной заменой для HDFS при выполнении большой партии MapReduce
Резюме:
Hive можно использовать для аналитических запросов, а HBase-для запросов в реальном времени. Данные можно даже читать и записывать от Hive до HBase и обратно.
Чтобы сравнить Hive с Hbase, я хотел бы вспомнить следующее определение:
База данных, предназначенная для обработки транзакций, не предназначена для обработки аналитика. Он не структурирован так, чтобы делать аналитику хорошо. Хранилище данных, с другой стороны, он структурирован так, чтобы сделать аналитику быстрой и легкой.
Hive-это инфраструктура хранилища данных, построенная поверх Hadoop, которая подходит для длительных заданий ETL. Hbase-это база данных, предназначенная для обработки транзакций в реальном времени