Введение
Добро пожаловать в царство Сверхъестественного, где космические силы переплетаются с суровым существованием смертных. В этой сверхъестественной сценарии вы будете играть роль Езекииля, небашного лидера, которому поручено охранять этическое знание, которое trascends время и пространство. Ваша миссия - использовать силу Hadoop, мощной платформы управления данными, чтобы сохранить и распространить это бесценное мудрость по небесным царствам.
Как Езекииль, вы контролируете Небесные Архивы, огромный репозиторий, содержащий накопленное знание веков. Однако, огромный объем данных стал подавляющим, и вам требуется сложная система для эффективной организации и распространения этой информации. Войдите в Hadoop, мощный инструмент, который позволит вам загрузить, обработать и поделиться небесными инсайтами с вашими сверхъестественными сверстниками.
Ваша цель - овладеть искусством загрузки и вставки данных в распределенную файловую систему Hadoop и Hive, открытым исходным системой хранения данных, построенной поверх Hadoop. Таким образом, вы раскроете секреты Небесных Архивов, обеспечивая, чтобы мудрость веков оставалась доступной тем, кто ищет просвещение.
Копирование данных в распределенную файловую систему Hadoop (HDFS)
В этом шаге вы узнаете, как передать данные из локальной файловой системы в распределенную файловую систему Hadoop (HDFS), основа экосистемы Hadoop. HDFS предназначен для хранения и управления большими объемами данных на нескольких узлах, обеспечивая избыточность данных и отказоустойчивость.
Во - первых, убедитесь, что вы вошли под пользователем hadoop, выполнив следующую команду в терминале:
su - hadoop
Теперь создадим примерный файл данных в локальной файловой системе:
echo "Hello, Celestial Realm" > /home/hadoop/celestial_data.txt
Эта команда создает текстовый файл с именем celestial_data.txt с содержимым "Hello, Celestial Realm!" в директории /home/hadoop.
Далее мы скопируем этот файл в HDFS с помощью команды hadoop fs:
hadoop fs -mkdir -p /home/hadoop/celestial_archives
hadoop fs -put /home/hadoop/celestial_data.txt /home/hadoop/celestial_archives
Что делает эта команда:
hadoop fs- это утилита командной строки для взаимодействия с HDFS.-mkdir- подкоманда командыhadoop fsдля создания директории.-p- опция для создания родительской директории рекурсивно. Если родительская директория не существует в указанном пути, она будет создана вместе с ней.-put- операция для копирования файла из локальной файловой системы в HDFS./home/hadoop/celestial_data.txt- путь к исходному файлу в локальной файловой системе./home/hadoop/celestial_archives- путь к целевой директории в HDFS.
После выполнения этой команды вы должны увидеть сообщение об успехе, подтверждающее, что файл скопирован в HDFS.
Создание таблицы Hive и загрузка данных
В этом шаге вы узнаете, как создать таблицу Hive и загрузить данные из HDFS в таблицу. Hive - это мощный инструмент для хранения данных, построенный поверх Hadoop, предназначенный для эффективной суммаризации, запросов и анализа данных.
Во - первых, запустим Hive CLI, выполнив следующую команду:
hive
Это откроет интерактивную оболочку Hive, где вы можете выполнять запросы и команды Hive.
Далее мы создадим новую таблицу Hive под названием celestial_archives для хранения наших данных:
CREATE TABLE celestial_archives (message STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE;
Что делает этот запрос Hive:
CREATE TABLE celestial_archivesсоздает новую таблицу под названиемcelestial_archives.(message STRING)определяет единственный столбец под названиемmessageс типом данныхSTRING.ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'задает, что каждая строка в файле данных разделяется символом табуляции (\t).STORED AS TEXTFILEуказывает, что данные таблицы будут храниться в виде простых текстовых файлов в HDFS.
После создания таблицы мы загрузим данные из HDFS в таблицу Hive с помощью команды LOAD DATA:
LOAD DATA INPATH '/home/hadoop/celestial_archives/celestial_data.txt' INTO TABLE celestial_archives;
Эта команда загружает данные из файла /home/hadoop/celestial_archives/celestial_data.txt в HDFS в таблицу Hive celestial_archives.
Наконец, вы можете запросить таблицу, чтобы проверить, были ли данные загружены правильно:
SELECT * FROM celestial_archives;
Этот запрос должен показать содержимое таблицы celestial_archives, которое должно быть сообщением "Hello, Celestial Realm!".
Резюме
В этом лабе вы играли роль Езекииля, небашного лидера, которому поручено охранять этическое знание Небесных Архивов. Освоив искусство загрузки и вставки данных в распределенную файловую систему Hadoop (HDFS) и Hive, вы сделали важный шаг к сохранению и распространению этой бесценной мудрости по небесным царствам.
С помощью практических упражнений вы узнали, как копировать данные из локальной файловой системы в HDFS, создавать таблицы Hive и загружать данные из HDFS в эти таблицы. Выполнив эти задачи, вы раскрыли секреты Небесных Архивов, обеспечивая, чтобы мудрость веков оставалась доступной тем, кто ищет просвещение.
Этот лаб не только оснастил вас практическими навыками работы с Hadoop и Hive, но и предъявил к вам вызов творчески мыслить и применять эти инструменты в уникальной, сверхъестественной сценарии. Путешествие по сохранению небесного знания только началось, и навыки, которые вы приобрели, будут бесценны при дальнейшем изучении vaste областей управления и анализа данными.



