Лучшие команды Hive с примерами в HQL



В этом блоге обсуждаются команды Hive с примерами на HQL. CREATE, DROP, TRUNCATE, ALTER, SHOW, DESCRIBE, USE, LOAD, INSERT, JOIN и многие другие команды Hive

В этом сообщении блога давайте обсудим основные команды Hive с примерами. Эти команды Hive очень важны для создания основы для .

Вышло руководство Edureka 2019 Tech Career Guide! Самые популярные должности, точные схемы обучения, обзор отрасли и многое другое в руководстве. Скачать сейчас же.

Что такое улей?

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





Hive используется потому, что таблицы в Hive похожи на таблицы в реляционной базе данных. Если вы знакомы с SQL, это легкая прогулка. Многие пользователи могут одновременно запрашивать данные с помощью Hive-QL.

Что такое HQL?

Hive определяет простой SQL-подобный язык запросов для запросов и управления большими наборами данных, называемый Hive-QL (HQL). Им легко пользоваться, если вы знакомы с языком SQL. Hive позволяет программистам, знакомым с языком, писать настраиваемую среду MapReduce для выполнения более сложных анализов.



Использование Hive:

1. Распределенное хранилище Apache Hive.

2. Hive предоставляет инструменты для упрощения извлечения / преобразования / загрузки данных (ETL).

3. Он предоставляет структуру для различных форматов данных.



4. Используя Hive, мы можем получить доступ к файлам, хранящимся в распределенной файловой системе Hadoop (HDFS используется для запросов и управления большими наборами данных, находящихся в) или в других системах хранения данных, таких как Apache HBase.

Ограничения Hive:

& bull Hive не предназначен для онлайн-обработки транзакций (OLTP), он используется только для онлайн-аналитической обработки.

& bull Hive поддерживает перезапись или перехват данных, но не обновление и удаление.

& bull В Hive подзапросы не поддерживаются.

Почему Hive используется вместо Pig?

Ниже приведены причины, по которым Hive используется, несмотря на доступность Pig:

  • Hive-QL - это декларативный язык строки SQL, PigLatin - язык потока данных.
  • Pig: язык потока данных и среда для изучения очень больших наборов данных.
  • Hive: распределенное хранилище данных.

Компоненты Hive:

Метастор:

Hive хранит схему таблиц Hive в Hive Metastore. Metastore используется для хранения всей информации о таблицах и разделах, находящихся на складе. По умолчанию хранилище метаданных запускается в том же процессе, что и служба Hive, а хранилище метаданных по умолчанию - это база данных DerBy.

SerDe:

Сериализатор, десериализатор дает инструкции для куста о том, как обрабатывать запись.

Команды улья:

Язык определения данных (DDL)

Операторы DDL используются для построения и изменения таблиц и других объектов в базе данных.

Команда DDL Функция
СОЗДАЙТЕ Он используется для создания таблицы или базы данных
ШОУ Он используется для отображения базы данных, таблицы, свойств и т. Д.
ВОЗРАСТ Используется для внесения изменений в существующую таблицу
ОПИСАТЬ Он описывает столбцы таблицы
TRUNCATE Используется для окончательного усечения и удаления строк таблицы
УДАЛИТЬ Удаляет данные таблицы, но может быть восстановлен

Перейдите в оболочку Hive, дав команду sudo hive и введите команду 'Создайте база данных имя> ’ для создания новой базы данных в Hive.

Создание базы данных Hive с помощью команд Hive

Чтобы вывести базы данных в хранилище Hive, введите команду ‘ показать базы данных ».

База данных создается в расположении по умолчанию хранилища Hive. В Cloudera база данных Hive хранится в / user / hive / хранилище.

Команда для использования базы данных: ИСПОЛЬЗОВАТЬ

Скопируйте входные данные в HDFS с локального компьютера с помощью команды copy From Local.

Когда мы создаем таблицу в улье, она создается в месте по умолчанию на складе улья. - «/ пользователь / улей / склад», после создания таблицы мы можем переместить данные из HDFS в таблицу улья.

Следующая команда создает таблицу в папке «/user/hive/warehouse/retail.db».

Заметка : retail.db - это база данных, созданная в хранилище Hive.

создание массива объектов

Опишите предоставляет информацию о схеме таблицы.

Язык манипулирования данными (DML)

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

Пример :

Операторы LOAD, INSERT.

Синтаксис:

ЗАГРУЗИТЬ данные по пути в таблицу [tablename]

Операция загрузки используется для перемещения данных в соответствующую таблицу Hive. Если ключевое слово местный указано, то в команде загрузки будет указан путь к локальной файловой системе. Если ключевое слово local не указано, мы должны использовать путь HDFS к файлу.

Вот несколько примеров команды LOAD data LOCAL

После загрузки данных в таблицу Hive мы можем применить операторы обработки данных или агрегатные функции для извлечения данных.

Пример подсчета количества записей:

Агрегатная функция Count используется для подсчета общего количества записей в таблице.

«Создать внешнюю» таблицу:

В создать внешний ключевое слово используется для создания таблицы и предоставляет место, где будет создана таблица, поэтому Hive не использует расположение по умолчанию для этой таблицы. An ВНЕШНИЙ table указывает на любое место HDFS для своего хранилища, а не на хранилище по умолчанию.

Вставить команду:

В вставить Команда используется для загрузки таблицы Hive данных. Вставки можно делать в таблицу или раздел.

& bull INSERT OVERWRITE используется для перезаписи существующих данных в таблице или разделе.

& bull INSERT INTO используется для добавления данных к существующим данным в таблице. (Примечание: синтаксис INSERT INTO работает с версии 0.8)

Пример команд «Разделено» и «Кластеризовано»:

‘Разделено ‘Используется для разделения таблицы на разделы и может быть разделен на сегменты с помощью‘ Сгруппировано по ‘Команда.

Когда мы вставляем ошибки выброса данных Hive, режим динамического раздела является строгим, а динамический раздел не включен ( Джефф в сайт dresshead ). Итак, нам нужно установить следующие параметры в оболочке Hive.

установить hive.exec.dynamic.partition = true

Для включения динамических разделов по умолчанию установлено значение false

установить hive.exec.dynamic.partition.mode = nonstrict

Разделение выполняется по категориям и может быть разделено на сегменты с помощью команды «Clustered By».

Оператор «Drop Table» удаляет данные и метаданные для таблицы. В случае внешних таблиц удаляются только метаданные.

Оператор «Drop Table» удаляет данные и метаданные для таблицы. В случае внешних таблиц удаляются только метаданные.

Загрузите данные в локальный inpath «aru.txt» в таблицу tablename, а затем мы проверяем таблицу employee1 с помощью команды Select * from table name

Чтобы подсчитать количество записей в таблице с помощью Select количество (*) от txnrecords

Агрегация:

Выберите количество (ОТЛИЧНАЯ категория) из имени таблицы

Эта команда будет считать различные категории таблицы «cate». Здесь есть 3 разные категории.

Предположим, есть еще одна таблица, где f1 - имя поля категории.

Группировка:

Команда Group используется для группировки набора результатов по одному или нескольким столбцам.

Выбрать категорию, сумму (количество) из txt записей сгруппировать по категориям

Он рассчитывает количество той же категории.

Результат одной таблицы сохраняется в другой таблице.

Создать таблицу newtablename как select * from oldtablename

Присоединиться к команде:

Здесь создается еще одна таблица в названии 'Письма'

Присоединиться к операции :

Операция объединения выполняется для объединения полей из двух таблиц с использованием значений, общих для каждой.

Левое внешнее соединение :

Результат левого внешнего соединения (или просто левого соединения) для таблиц A и B всегда содержит все записи «левой» таблицы (A), даже если условие соединения не находит ни одной совпадающей записи в «правой» таблице. (В).

Правое внешнее соединение :

Правое внешнее соединение (или правое соединение) очень похоже на левое внешнее объединение, за исключением того, что таблицы обрабатываются в обратном порядке. Каждая строка из «правой» таблицы (B) появится в объединенной таблице хотя бы один раз.

Полное присоединение :

Объединенная таблица будет содержать все записи из обеих таблиц и заполнить NULL для отсутствующих совпадений с обеих сторон.

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

Выход из улья

Hive - это лишь часть большой головоломки под названием Big Data и Hadoop. Hadoop - это гораздо больше, чем просто Hive. Щелкните ниже, чтобы узнать, какими еще навыками вам следует овладеть в Hadoop.

Есть вопрос к нам? Пожалуйста, отметьте это в разделе комментариев, и мы свяжемся с вами.

Похожие сообщения:

7 способов, которыми обучение работе с большими данными может изменить вашу организацию

Модели данных улья