Введение
В далекой галактике между Галактической империей и Союзом восстателей идет столетий давняя межгалактическая война. В качестве известного космического исследователя вы были нанят Союзом восстателей, чтобы собрать важную разведку о последнем развитии оружия Империи. Ваша миссия - проникнуть в секретный репозиторий данных Империи и проанализировать их записи с использованием мощной экосистемы Hadoop.
Галактическая империя собирает огромные объемы данных с своих планетарных завоеваний, включая информацию о ресурсах, населении и военных операциях. Эти данные хранятся в их строго охраняемом кластере Hadoop, к которому вы должны получить доступ, чтобы раскрыть планы Империи и ее потенциальные слабости.
Ваша цель - использовать Hive, инструмент для хранения данных в экосистеме Hadoop, чтобы проанализировать данные Империи и выявить закономерности, которые могут помочь Союзу восстателей в борьбе против репрессивного режима. В частности, вы узнаете, как использовать предложение LIMIT в Hive для эффективного анализа и извлечения соответствующей информации из огромных наборов данных.
Доступ к репозиторию данных Империи
В этом шаге вы установите безопасное соединение с кластером Hadoop Империи и изучите доступные наборы данных.
- Запустите безопасную терминал и аутентифицируйтесь с учетными данными Союза восстателей.
- Используйте команду
su - hadoop, чтобы переключиться на пользователяhadoop(пароль не требуется).
su - hadoop
- Перейдите в каталог
/home/hadoop, который будет вашим стандартным рабочим каталогом.
cd /home/hadoop
- Выведите список содержимого каталога, чтобы ознакомиться с доступными файлами и каталогами.
ls
Вы должны увидеть каталог с именем empire_data. В этом каталоге хранятся записи данных Империи, которые вы будете анализировать в следующих шагах.
- Переместите
empire_dataна hdfs для использованияhive.
hadoop fs -mkdir -p /home/hadoop
hadoop fs -put /home/hadoop/empire_data /home/hadoop
Изучение записей о ресурсах Империи
В этом шаге вы будете анализировать записи о ресурсах Империи с использованием предложения LIMIT в Hive.
- Запустите Hive shell, выполнив следующую команду:
hive
- Создайте новую базу данных под названием
rebel_intelligence, чтобы хранить вашу аналитику.
CREATE DATABASE rebel_intelligence;
- Используйте базу данных
rebel_intelligence.
USE rebel_intelligence;
- Создайте внешнюю таблицу с именем
resources, которая будет ссылаться на данные о ресурсах Империи, хранящиеся в каталоге/home/hadoop/empire_data/resources.
CREATE EXTERNAL TABLE resources (
planet STRING,
resource STRING,
quantity BIGINT
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE
LOCATION '/home/hadoop/empire_data/resources';
- Предварительно просмотрите первые 10 записей таблицы
resourcesс использованием предложенияLIMIT.
SELECT * FROM resources LIMIT 10;
Эта команда выведет первые 10 строк таблицы resources, позволяя понять структуру и содержание данных.
- Проанализируйте распределение ресурсов по планетам, выполнив запрос с предложением
LIMIT.
SELECT planet, SUM(quantity) AS total_resources
FROM resources
GROUP BY planet
ORDER BY total_resources DESC
LIMIT 5;
Этот запрос покажет топ-5 планет с наибольшими общим количеством ресурсов, предоставив ценные сведения о ресурсозаборных территориях Империи.
Анализ военных операций Империи
В этом шаге вы будете изучать военные операции Империи, запрашивая их записи о миссиях с использованием предложения LIMIT.
- Создайте внешнюю таблицу с именем
missions, которая будет ссылаться на данные о миссиях Империи, хранящиеся в каталоге/home/hadoop/empire_data/missions.
CREATE EXTERNAL TABLE missions (
mission_id STRING,
planet STRING,
operation STRING,
start_date STRING,
end_date STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE
LOCATION '/home/hadoop/empire_data/missions';
- Предварительно просмотрите первые 5 записей таблицы
missionsс использованием предложенияLIMIT.
SELECT * FROM missions LIMIT 5;
- Проанализируйте наиболее недавние военные операции, выполнив запрос с предложением
LIMITи сортируя по столбцуend_date.
SELECT planet, operation, end_date
FROM missions
ORDER BY end_date DESC
LIMIT 10;
Этот запрос покажет 10 наиболее недавних военных операций, проведенных Империей, предоставив ценные сведения о их последних действиях.
- Определите планеты с самой высокой концентрацией военных операций, выполнив запрос с предложением
LIMITи группируя по столбцуplanet.
SELECT planet, COUNT(*) AS operation_count
FROM missions
GROUP BY planet
ORDER BY operation_count DESC
LIMIT 3;
Этот запрос покажет топ-3 планет с наибольшим количеством военных операций, указывая на потенциальные цели или стратегические точки для Союза восстателей.
Выявление мер контроля за населением Империи
В этом шаге вы будете обнаруживать меры контроля за населением Империи, анализируя их переписиные записи с использованием предложения LIMIT.
- Создайте внешнюю таблицу с именем
census, которая будет ссылаться на переписиные данные Империи, хранящиеся в каталоге/home/hadoop/empire_data/census.
CREATE EXTERNAL TABLE census (
planet STRING,
species STRING,
population BIGINT
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE
LOCATION '/home/hadoop/empire_data/census';
- Предварительно просмотрите первые 10 записей таблицы
censusс использованием предложенияLIMIT.
SELECT * FROM census LIMIT 10;
- Проанализируйте наиболее населенные планеты, выполнив запрос с предложением
LIMITи сортируя по столбцуpopulationпо убыванию.
SELECT planet, SUM(population) AS total_population
FROM census
GROUP BY planet
ORDER BY total_population DESC
LIMIT 5;
Этот запрос покажет топ-5 наиболее населенных планет в Империи, предоставляя информацию о потенциальных местах для рекрутинга новых восстателей или идентификации районов с большим количеством civileв.
- Определите виды с наибольшим количеством населения по всей Империи, выполнив запрос с предложением
LIMITи группируя по столбцуspecies.
SELECT species, SUM(population) AS total_population
FROM census
GROUP BY species
ORDER BY total_population DESC
LIMIT 3;
Этот запрос покажет топ-3 видов с наибольшим количеством населения в Империи, что может быть ценной информацией для понимания разнообразия и потенциальной поддержки между различными видами для Союза восстателей.
Резюме
В этом практическом занятии вы узнали, как использовать предложение LIMIT в Hive, инструменте для хранения данных в экосистеме Hadoop, для эффективного анализа и извлечения важной информации из огромных репозиториев данных Галактической Империи. Изучив записи о ресурсах, военные операции и переписиные данные, вы приобрели ценные знания о сильных и слабых сторонах Империи, а также ее потенциальных уязвимостях.
На практике вы создавали внешние таблицы, запрашивали данные с использованием предложения LIMIT и фильтровали и сортировали результаты по определенным критериям. Это практическое применение не только укрепило ваши навыки в использовании Hive, но и дало более глубокое понимание того, как извлекать действенную информацию из больших наборов данных.
Иммерсивная сценарий практического занятия, разыгрывающий галактическую войну, добавил интерес и мотивацию к обучению. Представившись космическим исследователем, работающим для Союза восстателей, вы почувствовали свою важность и срочность в открытии секретов Империи, делая процесс обучения более приятным и осмысленным.
В целом, это практическое занятие оснастило вас необходимыми навыками для использования возможностей Hadoop и Hive в анализе данных, подготовив вас к будущим задачам в области больших данных и позволив внести свой вклад в борьбу Союза восстателей против ожесточенной Галактической Империи.



