Базовые SQL-операции в Apache Hive: основы NoSQL Big Data для начинающих

Автор
Базовые SQL-операции в Apache Hive: основы NoSQL Big Data для начинающих

В прошлый раз мы говорили про особенности работы с пользовательскими функциями (UDF) в Hive. Сегодня поговорим про основные SQL-операции в распределенной Big Data платформе Apache Hive. Также рассмотрим применение этих операций к данным, хранящимся в этой СУБД. Читайте далее про CRUD-операции в Hive и их особенности.

CRUD-операции в СУБД Apache Hive

Прежде всего отметим, что Hive — это не просто система управления базами данных (СУБД), а целая платформа экосистемы Hadoop для хранения и обработки Big Data в распределенной среде, которая дает возможность проектировать структуры больших данных (таблицы, партиции, бакеты) с помощью SQL-диалекта HiveQL (Hive Query Language). Основными базовыми базовыми операциями в Hive являются CRUD-операции. В набор этих операций входят следующие SQL-функции:

  • create — функция для создания базовой структуры данных (таблицы) в Hive. Таблица в Hive — это совокупность связанных между собой данных, хранящихся в структурированном (упорядоченном) виде в базе данных.
  • read — это функция для чтения данных Hive-таблицы путем их выборки (select).
  • update — операция для обновления (или изменения) существующих данных.
  • delete — это функция для полного удаления таблицы из базы данных Hive [1].

Каждую из этих операций мы подробнее рассмотрим на практических примерах далее.

Работа с CRUD-операциями в Hive: несколько практических примеров

Для того, чтобы начать работу с данными, необходимо создать таблицу для их хранения:

CREATE TABLE IF NOT EXISTS book (
id_book int,
name        char(25),
price         int,
author      char(25),
date_issue date,
amout       int,
raiting      int)

Для того, чтобы заполнить таблицу данными, используется SQL-операция INSERT [1]:

INSERT INTO TABLE book (id_book, name, price, author, date_issue, amout, raiting) VALUES (1, ‘Война и мир’, 1000, ‘Толстой Л.Н.’, ‘1867-01-01’, 100, 5)

Для того, чтобы выполнить read-операцию, используется SQL-оператор SELECT, который получает данные и отображает их в консоль. Следующий код на диалекте HiveQL отвечает за чтение всех данных, имеющихся в таблице book [1]:

SELECT * FROM book
обучение arenadata hadoop, курсы nosql, обучение nosql, mongodb nosql, курсы nosql в Москве, hbase курсы, курсы по mongodb, курс разработчиков arenadata db
Содержимое таблицы book

Для выполнения update-операции используется SQL-функция UPDATE, которая служит для изменения (или редактирования) записей в таблице. Следующий код на диалекте HiveQL отвечает за изменение цены на книги с рейтингом 4 [1]:

UPDATE book SET price = 900 WHERE raiting = 4
обучение arenadata hadoop, курсы nosql, обучение nosql, mongodb nosql, курсы nosql в Москве, hbase курсы, курсы по mongodb, курс разработчиков arenadata db
Измененная цена для книг с рейтингом 4

Результатом выполнения delete-операции является полное удаление таблицы или отдельных записей из нее. Для того, чтобы удалить отдельные записи их таблицы, используется оператор DELETE с условием WHERE (для того, чтобы удалить записи, удовлетворяющие конкретному условию). Следующий код на диалекте HiveQL отвечает за удаление информации о книгах с ценой 1000 [1]:

DELETE FROM book WHERE price=1000

Для полного удаления таблицы используется SQL-оператор DROP:

DROP TABLE book

Таким образом, благодаря поддержке CRUD-операций, Hive обеспечивает разработчика весьма удобным и интуитивно понятным интерфейсом для работы с объектами Big Data в распределенной среде. Это делает Apache Hive весьма удобным средством для работы с Big Data.

Больше подробностей про применение Apache Hive в проектах анализа больших данных вы узнаете на практических курсах по NoSQL в нашем лицензированном учебном центре обучения и повышения квалификации ИТ-специалистов в Москве:

MPA: CLOUDERA IMPALA DATA ANALYTICS
ADQM: ЭКСПЛУАТАЦИЯ ARENADATA QUICKMARTS
ADBR: Arenadata DB для разработчиков
ADB: Эксплуатация Arenadata DB
HBASE: Администрирование кластера HBase
HIVE: Hadoop SQL администратор Hive
NoSQL: Интеграция Hadoop и NoSQL

Записаться на курс

Смотреть раcписание

Источники

  1. https://docs.cloudera.com/HDPDocuments/HDP2/HDP-2.6.0/bk_data-access/content/new-feature-insert-values-update-delete.html
Комментировать

Ваш адрес email не будет опубликован. Обязательные поля помечены *