Путь к гармонии исторических данных

HadoopHadoopBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В средневековом городе, известном своей живой культурой и богатой историей, странствующий минстREL по имени Аларик был очарован историями и песнями этой земли. Когда он бродил по улицам, струя на своей лютной, он понял, что архивы города нуждаются в срочной организации. Бесконечные пергаменты и свитки были разбросаны повсюду, полны историй и записей о прошлом, но задача сортировки и управления ними казалась непреодолимой.

Целью Аларика было создать гармоничную систему, в которой исторические записи города могли бы быть сохранены и легко доступны. С любовью к рассказам и острым взглядом на организацию он отправился в поиски способа использовать мощь Hadoop Hive, инструмент, который позволил бы ему эффективно управлять и манипулировать огромными массивами данных.

Исследование архивов города

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

Во - первых, убедитесь, что вы вошли под пользователем hadoop, выполнив следующую команду в терминале:

su - hadoop

Здесь вы найдете коллекцию файлов, содержащих различные записи и истории из прошлого города. Чтобы получить обзор доступных данных, выполните следующую команду:

hdfs dfs -ls /home/hadoop/archives

Эта команда выведет список файлов и директорий в директории /home/hadoop/archives на Hadoop Distributed File System (HDFS).

Далее, давайте исследуем содержимое одного из файлов. Мы будем использовать команду hdfs dfs -cat для просмотра содержимого файла:

hdfs dfs -cat /home/hadoop/archives/chronicles/chapter_1.txt

Эта команда покажет содержимое файла chapter_1.txt, расположенного в поддиректории chronicles.

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

Настройка Hive и исследование данных

В этом шаге мы настроим Hive, мощную систему хранения данных, построенную поверх Hadoop, и исследуем имеющиеся данные в наших архивах.

Во - первых, откроем Hive CLI:

hive

После входа в Hive CLI мы можем создать новую базу данных для хранения архивов нашего города:

CREATE DATABASE city_archives;

Теперь переключимся на новосозданную базу данных:

USE city_archives;

Для исследования имеющихся данных мы создадим новую таблицу и загрузим данные из директории архивов HDFS:

CREATE EXTERNAL TABLE tmp_chronicles (
  chapter STRING,
  content STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
LOCATION '/home/hadoop/archives/chronicles';

Этот код создаст внешнюю таблицу под названием tmp_chronicles с двумя столбцами: chapter и content. Данные таблицы будут загружены из директории /home/hadoop/archives/chronicles на HDFS, и поля будут разделены табуляцией.

CREATE TABLE chronicles (
  chapter STRING,
  content STRING
)
STORED AS ORC
TBLPROPERTIES ('transactional'='true');

Этот код создаст таблицу под названием chronicles с двумя столбцами: chapter и content. Предложение STORED AS ORC задает, что данные будут храниться в формате файлов ORC. Предложение TBLPROPERTIES задает, что таблица транзакционная, то есть поддерживает ACID - транзакции.

INSERT INTO TABLE chronicles SELECT * FROM tmp_chronicles;

Этот код вставит все данные из временной таблицы tmp_chronicles в таблицу chronicles.

Теперь мы можем запросить таблицу chronicles, чтобы увидеть ее содержимое:

SELECT * FROM chronicles LIMIT 5;

Эта команда покажет первые 5 строк таблицы chronicles, давая нам представление о данных, с которыми мы будем работать.

Удаление и очистка данных

В этом шаге мы узнаем, как удалять и очищать данные из наших таблиц Hive, что позволяет нам эффективно управлять и поддерживать архивы города.

Иногда нам может потребоваться удалить устаревшие или нерелевантные данные из наших таблиц. В Hive мы можем использовать оператор DELETE, чтобы удалить конкретные строки, соответствующие заданному условию.

Например, предположим, что мы хотим удалить все главы, содержащие слово "старинный" из таблицы chronicles:

DELETE FROM chronicles WHERE content LIKE '%старинный%';

Эта команда удалит все строки из таблицы chronicles, где столбец content содержит слово "старинный".

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

TRUNCATE TABLE chronicles;

Эта команда удалит все данные из таблицы chronicles, оставив ее пустой.

Освоив эти методы удаления и очистки, мы можем поддерживать целостность и актуальность наших архивов города, гарантируя, что сохраняются только самые ценные и актуальные сведения.

Резюме

В этом практическом занятии мы отправились в путешествие по организации и поддержанию архивов города с использованием Hadoop Hive. Через глаза странствующего минстреля Аларика мы исследовали проблемы управления огромными коллекциями исторических записей и узнали, как использовать мощь Hive для эффективного удаления и очистки данных.

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

Во время всего этого практического занятия мы не только приобрели практические навыки в управлении данными, но и обнаружили красоту комбинации рассказов с технологиями. Путешествие Аларика по сохранению богатой культурной наследи legacy города служит напоминанием о том, что данные - это не просто числа и цифры; это плетение историй, ожидающих быть сплетенными и поделенными.