Что такое язык запросов Hive: операторы HiveQL

Что такое язык запросов Hive (HiveQL)?

Язык запросов улья (HiveQL) — это язык запросов в Apache Hive для обработки и анализа структурированных данных. Это отделяет пользователей от компанииplexКачество программирования MapReduce. Для облегчения обучения он повторно использует общие понятия из реляционных баз данных, такие как таблицы, строки, столбцы и схемы. Hive предоставляет интерфейс командной строки для написания запросов Hive с использованием языка запросов Hive (HiveQL).

Большинство взаимодействий обычно происходит через интерфейс командной строки (CLI). В целом синтаксис HiveQL аналогичен синтаксису SQL синтаксис, с которым знакомо большинство аналитиков данных. Hive поддерживает четыре формата файлов: TEXTFILE, SEQUENCEFILE, ORC и RCFILE (запись столбчатого файла).

Hive использует базу данных derby для хранения метаданных одного пользователя, а для метаданных нескольких пользователей или общих метаданных Hive использует MYSQL.

Встроенные операторы HiveQL

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

Эти операторы используются для математических операций с операндами и возвращают конкретное значение в соответствии с примененной логикой.

Ниже приведены основные типы встроенных операторов в HiveQL:

  • Операторы отношения
  • Арифметические операторы
  • Логические операторы
  • Операторы связиplex Типы
  • сplex Тип Конструкторы

Реляционные операторы в Hive SQL

Мы используем операторы отношения для сравнения отношений между двумя операндами.

  • Операторы, такие как «равно», «не равно», «меньше», «больше» и т. д.
  • Все типы операндов в этих операторах являются числовыми типами.

Фоллоwing Таблица даст нам деtails о реляционных операторах и их использовании в HiveQL:

Встроенный оператор Описание Операнд
Х = У ИСТИНА

если выражение X эквивалентно выражению Y

Другие контрактные услугиwise ЛОЖЬ.

Он принимает все примитивные типы
Х != Y ИСТИНА

если выражение X не эквивалентно выражению Y

Другие контрактные услугиwise ЛОЖЬ.

Он принимает все примитивные типы
Х < Y ИСТИНА

если выражение X меньше выражения Y

Другие контрактные услугиwise ЛОЖЬ.

Он принимает все примитивные типы
Х <= Y ИСТИНА

если выражение X меньше или равно выражению Y

Другие контрактные услугиwise ЛОЖЬ.

Он принимает все примитивные типы
Х>У ИСТИНА

если выражение X больше выражения Y

Другие контрактные услугиwise ЛОЖЬ.

Он принимает все примитивные типы
Х>= Y ИСТИНА

если выражение X больше или равно выражению Y

Другие контрактные услугиwise ЛОЖЬ.

Он принимает все примитивные типы
Х ЕСТЬ НУЛЬ TRUE, если выражение X имеет значение NULL, другоеwise ЛОЖЬ. нужны все типы
X НЕ НУЛЬ НЕПРАВДА

Если выражение X имеет значение NULL, другоеwise ПРАВДА.

нужны все типы
Х НРАВИТСЯ Y ИСТИНА

Если строковый шаблон X соответствует Y другомуwise ЛОЖЬ.

Принимает только строки
Х РЛИК Y NULL, если X или Y имеет значение NULL, TRUE, если любая подстрока X соответствует Java регулярное выражение Y, другоеwise ЛОЖЬ. Принимает только строки
X РЕГЭКСПРЕЖЕНИЕ Y То же, что и РЛИК. Принимает только строки

Арифметические операторы HiveQL

Мы используем арифметические операторы для выполнения арифметических операций над операндами.

  • Эти операторы используются для арифметических операций, таких как сложение, вычитание, умножение и деление между операндами.
  • Все типы операндов в этих операторах являются числовыми типами.

Пример примера:

2+3 дает результат 5.

В этом примере «+» — это оператор, а 2 и 3 — операнды. Возвращаемое значение – 5.

Фоллоwing Таблица даст нам деtails об арифметических операторах в языке запросов Hive:

Встроенный оператор Описание Операнд
Х + У Он вернет результат сложения значений X и Y. Он принимает все типы чисел
Х – У Он вернет результат вычитания Y из значения X. Он принимает все типы чисел
Х * У Он вернет результат умножения значений X и Y. Он принимает все типы чисел
Х/У Он вернет результат деления Y на X. Он принимает все типы чисел
Х % Y Он вернет остаток от деления X на Y. Он принимает все типы чисел
X и Y Он вернет вывод битаwise И X и Y. Он принимает все типы чисел
Х | Д Он вернет вывод битаwise ИЛИ X и Y. Он принимает все типы чисел
Х ^ У Он вернет вывод битаwise XOR X и Y. Он принимает все типы чисел
~X Он вернет вывод битаwise НЕ Х. Он принимает все типы чисел

Логические операторы Hive QL

Мы используем логические операторы для выполнения логических операций над операндами.

  • Логические операции, такие как И, ИЛИ, НЕ между операндами, мы используем эти операторы.
  • Все типы операндов в этих операторах имеют логический тип.

Фоллоwing Таблица даст нам деtails о логических операторах в HiveSQL:

Операторы Описание Операнды
Х И Y ИСТИНА, если и X, и Y равны ИСТИНА, другоеwise ЛОЖЬ. Только логические типы
X && Y То же, что X AND Y, но здесь мы используем символ &&. Только логические типы
Х ИЛИ Y ИСТИНА, если либо X, либо Y, либо оба имеют значение ИСТИНА, другоеwise ЛОЖЬ. Только логические типы
Х || Д То же, что X OR Y, но здесь мы используем || символ Только логические типы
НЕ Х ИСТИНА, если X имеет значение ЛОЖЬ, другоеwise ЛОЖЬ. Только логические типы
!X То же, что NOT X, но здесь мы используем! символ Только логические типы

Операторы связиplex Тип

Фоллоwing Таблица даст нам деtails о комplex Типовые операторы. Это операторы, которые предоставляют другой механизм доступа к элементам в com.plex типы.

Операторы Операнды Описание
А[н] A — это массив, а n — целочисленный тип. Он вернет n-й элемент массива A. Первый элемент имеет индекс 0.
М[ключ] М — это карта и ключ имеет тип K Он вернет значения, принадлежащие ключу на карте.

сplex Конструкторы типов

Фоллоwing Таблица даст нам деtails о комplex Тип Конструкторы. Он будет создавать экземпляры на complex типы данных. Это комplex типы данных, такие как типы Array, Map и Struct в Hive.

В этом разделе мы увидим операции, выполняемые на Com.plex Тип Конструкторы.

Операторы Операнды Описание
массив (значение1, значение2, …) Он создаст массив с заданными элементами, как указано, например, val1, val2.
Создать_ союз (тег, значение1, значение2, …) Он создаст тип объединения со значениями, указанными в параметре тега.
карта (ключ1, значение1, ключ2, значение2, …) Он создаст карту с заданными парами ключ/значение, упомянутыми в операндах.
Именованная_структура (имя1, значение1, имя2, значение2, …) Он создаст структуру с заданными именами полей и значениями, указанными в операндах.
СТРУКТУРА (значение1, значение2, значение3, …) Создает структуру с заданными значениями полей. Имена полей структуры будут col1, col2, .

Итоги

  • Hive Query Language (HiveQL) — это язык запросов на апаш Hive для обработки и анализа структурированных данных.
  • Hive предоставляет встроенные операторы для операций с данными, которые могут быть реализованы в таблицах, находящихся внутри хранилища Hive.
  • Типы встроенных операторов в HiveQL:
  • Операторы отношения
  • Арифметические операторы
  • Логические операторы
  • Операторы связиplex Типы
  • сplex Тип Конструкторы