Данные о разруинах с помощью магии Hadoop

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

Введение

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

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

Настройка среды

На этом этапе мы настроим среду и подготовим данные для анализа.

  1. Откройте терминал и переключитесь на пользователя hadoop, выполнив следующую команду:
su - hadoop
  1. Перейдите в каталог /home/hadoop:
cd /home/hadoop
  1. Создайте новый каталог с именем ruin-data, чтобы хранить нашу выборку данных:
mkdir ruin-data
  1. Переместите пример выборки данных в каталог ruin-data:
cp /tmp/ruin-dataset.txt ruin-data/

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

Изучение набора данных

На этом этапе мы загрузим набор данных в Hive и исследуем его структуру.

  1. Запустите Hive shell, выполнив следующую команду:
hive
  1. Создайте новую базу данных с именем ruin_analysis:
CREATE DATABASE ruin_analysis;
  1. Используйте базу данных ruin_analysis:
USE ruin_analysis;
  1. Создайте новую внешнюю таблицу с именем artifacts, чтобы хранить данные из файла ruin-dataset.txt:
CREATE EXTERNAL TABLE artifacts (
  artifact_id INT,
  artifact_type STRING,
  location STRING,
  condition STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ',';

Эта команда создает новую таблицу с четырьмя столбцами: artifact_id, artifact_type, location и condition. Таблица настроена на чтение данных из файла ruin-dataset.txt, который представляет собой текстовый файл, разделенный запятыми, хранящийся в каталоге /home/hadoop/ruin-data. 5. Загрузите данные в таблицу artifacts:

LOAD DATA LOCAL INPATH '/home/hadoop/ruin-data/ruin-dataset.txt' INTO TABLE artifacts;
  1. Проверьте структуру таблицы, выполнив следующую команду:
DESCRIBE artifacts;

Это должно отобразить имена столбцов и их типы данных.

Группировка и агрегирование данных

На этом этапе мы будем использовать предложение GROUP BY для анализа данных об артефактах и выявления скрытых паттернов.

  1. В Hive shell выполните следующий запрос, чтобы подсчитать количество артефактов для каждого типа артефакта:
SELECT artifact_type, COUNT(*) AS artifact_count
FROM artifacts
GROUP BY artifact_type;

Этот запрос группирует данные по artifact_type и вычисляет количество артефактов для каждого типа с использованием функции COUNT(*).

  1. Чтобы найти наиболее распространенный тип артефакта, модифицируйте предыдущий запрос, добавив предложение ORDER BY:
SELECT artifact_type, COUNT(*) AS artifact_count
FROM artifacts
GROUP BY artifact_type
ORDER BY artifact_count DESC
LIMIT 1;

Этот запрос сортирует результаты по artifact_count в порядке убывания и ограничивает вывод до первой строки, предоставляя нам тип артефакта с наибольшим количеством.

  1. Давайте проанализируем состояние артефактов в зависимости от их типа. Запустите следующий запрос:
SELECT artifact_type, condition, COUNT(*) AS artifact_count
FROM artifacts
GROUP BY artifact_type, condition
ORDER BY artifact_type, condition;

Этот запрос группирует данные по artifact_type и condition, подсчитывает количество артефактов для каждой комбинации и сортирует результаты по artifact_type и condition.

  1. Наконец, мы можем изучить распределение артефактов по разным местам, выполнив следующий запрос:
SELECT location, COUNT(*) AS artifact_count
FROM artifacts
GROUP BY location
ORDER BY artifact_count DESC;

Этот запрос группирует данные по location и подсчитывает количество артефактов, найденных в каждом месте, отсортированных по убыванию artifact_count.

Резюме

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

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