МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования
«Московский технический университет связи и информатики»
Кафедра «Математическая кибернетика и информационные технологии»
Дисциплина «Большие данные»
Отчет по лабораторной работе №3
Выполнил:
студент группы БСТ2104
Мажукин И.Н.
Проверила: Тимофеева А. И.
Москва, 2023 г.
Содержание
Цель работы 3
Ход выполнения работы 3
1. Запуск оболочки Hive 3
2. Создание базы данных 5
3. Создание таблиц 8
4. Партиционирование 11
5. Парсинг входных данных с помощью регулярных выражений 18
6. Практика 23
Задача со звёздочкой 33
34
Вывод: 34
Цель работы 3
Ход выполнения работы 3
1. Запуск оболочки Hive 3
2. Создание базы данных 5
3. Создание таблиц 8
4. Партиционирование 10
5. Парсинг входных данных с помощью регулярных выражений 17
6. Практика 22
Вывод: 32
Цель работы
Получить навыки работы с Hive.
Ход выполнения работы
1. Запуск оболочки Hive
Скопировав адрес HiveServer2 JDBC URL и на ноде, на которой мы будем работать, надо ввести команду: beeline -u "HiveServer2 JDBC URL" для подключения к Hive.
Рисунок 1 – Подключение к Hive
Выполним команду SHOW DATABASES, которая показывает список существующих баз данных Hive.
Рисунок 2 – Запуск команды SHOW DATABASES
2. Создание базы данных
Создадим тестовую БД. Для этого используем команду: hive> CREATE DATABASE mazhukin_test location '/user/mazhukin/test_warehouse'; При создании базы нужно будет указать полный путь к warehouse.
Рисунок 3 – Запуск команды CREATE DATABASE
Проверим, создалась ли у нас БД. Используем команду SHOW DATABASES, чтобы посмотреть, создалась ли БД
Рисунок 4 – Запуск команды SHOW DATABASES для проверки команды CREATE DATABASE
Чтобы удалить базу вводим команду: hive> drop database if exists mazhukin_test cascade; Слово CASCADE отвечает за удаление базы вместе с её содержимым. Используем команду SHOW DATABASES, чтобы посмотреть, удалилась ли БД.
Рисунок 5 – Запуск команды DROP DATABASE
Рисунок 6 – Проверка удаление через команду SHOW DATABASES
Создадим базу повторно, а также выведем информации о БД, используя команду: hive> DESCRIBE DATABASE mazhukin_test
Рисунок 7 – Запуск команды SHOW DATABASES для проверки команды CREATE DATABASE
Рисунок 8 – Запуск команды DESCRIBE DATABASE
3. Создание таблиц
Создадим таблицу в тестовой базе. Для исходных данных используем датасет "Подсети" (/data/subnets/variant1): * IP-адрес, * маска подсети, в которой он находится. Нужно ввести следующие команды:
USE mazhukin_test;
DROP TABLE IF EXISTS Subnets;
CREATE EXTERNAL TABLE Subnets ( ip STRING, mask STRING ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE
LOCATION '/data/subnets/variant1';
1. USE ... - подключение к базе данных. Без этой строки таблицы будут создаваться в базе "default". Также можно вместо USE использовать аргумент --database при запуске запроса.
2. EXTERNAL - существует 2 типа таблиц: managed и external. External-таблицы работают с внешними данными не изменяя их, а managed позволяют их изменять.
3. STORED AS здесь выбирается формат хранения таблицы. Для External-таблиц формат должен совпадать с форматом хранения данных. Для managed рекомендуется использовать сжатые форматы хранения (RCFile, AVRO и т.д.).
Рисунок 9 – Запуск команд для создания таблиц в тестовой базе
Проверим, как создалась таблица (выведем первые 10 строк), используя команду: SELECT * FROM Subnets LIMIT 10. Проверим список таблиц в базе с помощью команды: SHOW TABLES
Рисунок 10 – Запуск команды SELECT * FROM Subnets LIMIT 10 и SHOW TABLES для проверки