Apache Hive

Apache Hive

#Hadoop


Apache Hive— это хранилище данных и инструмент ETL, который обеспечивает SQL-подобный интерфейс между пользователем и распределенной файловой системой Hadoop (HDFS), которая интегрирует Hadoop. Он построен поверх Hadoop. Это программный проект, который обеспечивает запрос и анализ данных. Он облегчает чтение, запись и обработку широких наборов данных, которые хранятся в распределенном хранилище и запрашиваются с помощью синтаксиса Structure Query Language (SQL). Он не предназначен для рабочих нагрузок OLTP. Он часто используется для задач хранилищ данных, таких как инкапсуляция данных, специальные запросы и анализ огромных наборов данных. Он разработан для повышения масштабируемости, расширяемости, производительности, отказоустойчивости и слабой связи с входными форматами.


Изначально Hive разработан Facebook и Amazon, Netflix и предоставляет стандартную функциональность SQL для аналитики. Традиционные SQL-запросы записываются в Java API MapReduce для выполнения SQL-приложений и SQL-запросов над распределенными данными. Hive обеспечивает мобильность, так как большинство приложений хранилищ данных работают с языками запросов на основе SQL, такими как NoSQL.

Компоненты улья:

  1. HCatalog —

Это компонент Hive и таблица, а также уровень управления магазином для Hadoop. Это позволяет пользователю наряду с различными инструментами обработки данных, такими как Pig и MapReduce, что позволяет легко читать и писать в сетке.

2. WebHCat —

Он предоставляет сервис, который может использоваться пользователем для запуска задач Hadoop MapReduce (или YARN), Pig, Hive или функции операций с метаданными Hive с интерфейсом HTTP.

Режимы Улей:

Улей функционирует в двух основных режимах, которые описаны ниже. Эти режимы зависят от размера узлов данных в Hadoop.

  1. Локальный режим —

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


2. Режим уменьшения карты —

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

Характеристики Улья:

  1. Базы данных и таблицы создаются перед загрузкой данных.
  2. Hive as Хранилище данных создано для управления и запроса только структурированных данных, которые находятся в таблицах.
  3. Во время обработки структурированных данных в MapReduce отсутствуют функции оптимизации и юзабилити, такие как UDF, в то время как Hive Framework имеет оптимизацию и удобство использования.
  4. Программирование в Hadoop имеет дело непосредственно с файлами. Таким образом, Hive может разбивать данные на структуры каталогов для повышения производительности при выполнении определенных запросов.
  5. Hive совместим с различными форматами файлов: TEXTFILE, SEQUENCEFILE, ORC, RCFILE и т. Д.
  6. Hive использует базу данных derby в однопользовательском хранилище метаданных и использует MYSQL для многопользовательских метаданных или общих метаданных.

Особенности Hive:

  1. Он предоставляет индексы, в том числе растровые индексы для ускорения запросов. Тип индекса, содержащий сжатие и растровый индекс по состоянию на 0.10.
  2. Хранение метаданных в СУБД сокращает время на выполнение семантических проверок во время выполнения запроса.
  3. Встроенные пользовательские функции (UDF) для работы со строками, датами и другими инструментами интеллектуального анализа данных. Улей усилен, чтобы расширить набор UDF для работы с вариантами использования, не подкрепленными предопределенными функциями.
  4. DEFLATE, BWT, snappy и т. Д. — это алгоритмы для работы со сжатыми данными, которые хранятся в экосистеме Hadoop.
  5. Он хранит схемы в базе данных и обрабатывает данные в файловой системе Hadoop (HDFS).
  6. Он построен для интерактивной аналитической обработки (OLAP).
  7. Он предоставляет различные типы языка запросов, которые часто называют Hive Query Language (HVL или HiveQL).


Report Page