Что такое язык запросов Hive: HiveQL OperaTORs
Что такое язык запросов Hive (HiveQL)?
Язык запросов улья (HiveQL) — это язык запросов в Apache Hive для обработки и анализа структурированных данных. Это избавляет пользователей от сложностей программирования Map Download. Для облегчения обучения он повторно использует общие понятия из реляционных баз данных, такие как таблицы, строки, столбцы и схемы. Hive предоставляет интерфейс командной строки для написания запросов Hive с использованием языка запросов Hive (HiveQL).
Большинство взаимодействий обычно происходит через интерфейс командной строки (CLI). В целом синтаксис HiveQL аналогичен синтаксису SQL синтаксис, с которым знакомо большинство аналитиков данных. Hive поддерживает четыре формата файлов: TEXTFILE, SEQUENCEFILE, ORC и RCFILE (запись столбчатого файла).
Hive использует базу данных derby для хранения метаданных одного пользователя, а для метаданных нескольких пользователей или общих метаданных Hive использует MYSQL.
HiveQL Встроенный OperaTORs
Hive предоставляет встроенные операторы для операций с данными, которые могут быть реализованы в таблицах, находящихся внутри хранилища Hive.
Эти операторы используются для математических операций с операндами и возвращают конкретное значение в соответствии с примененной логикой.
Ниже приведены основные типы встроенных OperaТоры в HiveQL:
- реляционный OperaTORs
- Арифметический OperaTORs
- логический OperaTORs
- Operaторы на сложных типах
- Конструкторы сложного типа
реляционный OperaТоры в Hive SQL
Мы используем операторы отношения для сравнения отношений между двумя операндами.
- Operaтакие слова, как «равно», «не равно», «меньше», «больше» и т. д.
- В этих операторах все типы операндов являются числовыми. OperaTORs.
В следующей таблице представлена подробная информация о реляционных операторах и их использовании в HiveQL:
Встроенный Operaтор | Описание | Operand |
---|---|---|
Х = У | ИСТИНА
если выражение X эквивалентно выражению Y В противном случае ЛОЖЬ. |
Он принимает все примитивные типы |
Х != Y | ИСТИНА
если выражение X не эквивалентно выражению Y В противном случае ЛОЖЬ. |
Он принимает все примитивные типы |
Х < Y | ИСТИНА
если выражение X меньше выражения Y В противном случае ЛОЖЬ. |
Он принимает все примитивные типы |
Х <= Y | ИСТИНА
если выражение X меньше или равно выражению Y В противном случае ЛОЖЬ. |
Он принимает все примитивные типы |
Х>У | ИСТИНА
если выражение X больше выражения Y В противном случае ЛОЖЬ. |
Он принимает все примитивные типы |
Х>= Y | ИСТИНА
если выражение X больше или равно выражению Y В противном случае ЛОЖЬ. |
Он принимает все примитивные типы |
Х ЕСТЬ НУЛЬ | TRUE, если выражение X имеет значение NULL, в противном случае FALSE. | нужны все типы |
X НЕ НУЛЬ | НЕПРАВДА
Если выражение X имеет значение NULL, в противном случае — TRUE. |
нужны все типы |
Х НРАВИТСЯ Y | ИСТИНА
Если строковый шаблон X соответствует Y, в противном случае — ЛОЖЬ. |
Принимает только строки |
Х РЛИК Y | NULL, если X или Y имеет значение NULL, TRUE, если любая подстрока X соответствует Java регулярное выражение Y, иначе ЛОЖЬ. | Принимает только строки |
X РЕГЭКСПРЕЖЕНИЕ Y | То же, что и РЛИК. | Принимает только строки |
HiveQL Арифметика OperaTORs
Мы используем арифметические операторы для выполнения арифметических операций над операндами.
- Арифметические операции, такие как сложение, вычитание, умножение и деление между операндами, мы используем эти OperaTORs.
- Все типы операндов в этих операторах являются числовыми типами. OperaTORs
Пример примера:
2+3 дает результат 5.
В этом примере «+» — это оператор, а 2 и 3 — операнды. Возвращаемое значение – 5.
В следующей таблице представлена подробная информация об арифметических операторах в языке запросов Hive:
Встроенный Operaтор | Описание | Operand |
---|---|---|
Х + У | Он вернет результат сложения значений X и Y. | Он принимает все типы чисел |
Х – У | Он вернет результат вычитания Y из значения X. | Он принимает все типы чисел |
Х * У | Он вернет результат умножения значений X и Y. | Он принимает все типы чисел |
Х/У | Он вернет результат деления Y на X. | Он принимает все типы чисел |
Х % Y | Он вернет остаток от деления X на Y. | Он принимает все типы чисел |
X и Y | Он вернет результат побитового И X и Y. | Он принимает все типы чисел |
Х | Д | Он вернет результат побитового ИЛИ X и Y. | Он принимает все типы чисел |
Х ^ У | Он вернет результат побитового XOR X и Y. | Он принимает все типы чисел |
~X | Он вернет вывод побитового НЕ X. | Он принимает все типы чисел |
Улей QL Логический OperaTORs
Мы используем логические операторы для выполнения логических операций над операндами.
- Логические операции, такие как И, ИЛИ, НЕ между операндами, мы используем эти OperaTORs.
- Все типы операндов в этих операторах имеют тип BOOLEAN. OperaTORs
В следующей таблице представлена подробная информация о логических операторах в HiveSQL:
OperaTORs | Описание | OperaНСР |
---|---|---|
Х И Y | ИСТИНА, если и X, и Y ИСТИНА, в противном случае ЛОЖЬ. | Только логические типы |
X && Y | То же, что X AND Y, но здесь мы используем символ &&. | Только логические типы |
Х ИЛИ Y | ИСТИНА, если либо X, либо Y, либо оба имеют значение ИСТИНА, в противном случае ЛОЖЬ. | Только логические типы |
Х || Д | То же, что X OR Y, но здесь мы используем || символ | Только логические типы |
НЕ Х | ИСТИНА, если X имеет значение ЛОЖЬ, в противном случае ЛОЖЬ. | Только логические типы |
!X | То же, что NOT X, но здесь мы используем! символ | Только логические типы |
Operaторы на сложных типах
В следующей таблице приведены подробные сведения о сложном типе. Operators . Это операторы, которые предоставят другой механизм доступа к элементам в сложных типах.
OperaTORs | OperaНСР | Описание |
---|---|---|
А[н] | A — это массив, а n — целочисленный тип. | Он вернет n-й элемент массива A. Первый элемент имеет индекс 0. |
М[ключ] | М — это карта и ключ имеет тип K | Он вернет значения, принадлежащие ключу на карте. |
Конструкторы сложного типа
Следующая таблица даст нам подробную информацию о конструкторах сложных типов. Она будет создавать экземпляры на основе сложных типов данных. Это сложные типы данных, такие как Array, Map и Struct в Hive.
В этом разделе мы увидим операции, выполняемые над конструкторами сложного типа.
OperaTORs | OperaНСР | Описание |
---|---|---|
массив | (значение1, значение2, …) | Он создаст массив с заданными элементами, как указано, например, val1, val2. |
Создать_ союз | (тег, значение1, значение2, …) | Он создаст тип объединения со значениями, указанными в параметре тега. |
карта | (ключ1, значение1, ключ2, значение2, …) | Он создаст карту с заданными парами ключ/значение, упомянутыми в операндах. |
Именованная_структура | (имя1, значение1, имя2, значение2, …) | Он создаст структуру с заданными именами полей и значениями, указанными в операндах. |
СТРУКТУРА | (значение1, значение2, значение3, …) | Создает структуру с заданными значениями полей. Имена полей структуры будут col1, col2, . |
Итого
- Hive Query Language (HiveQL) — это язык запросов на Apache Hive для обработки и анализа структурированных данных.
- Hive предоставляет встроенные операторы для операций с данными, которые могут быть реализованы в таблицах, находящихся внутри хранилища Hive.
- Типы встроенных OperaТоры в HiveQL:
- реляционный OperaTORs
- Арифметический OperaTORs
- логический OperaTORs
- Operaторы на сложных типах
- Конструкторы сложного типа