Introdução
No coração de um deserto desolado, uma figura solitária move-se entre os vestígios de uma cidade há muito abandonada. Este é o reino do Ruin Artist, um visionário que vê beleza na decadência e potencial no esquecido. Seu objetivo é descobrir as histórias ocultas dentro das ruínas, dando nova vida às estruturas em ruínas através de sua arte.
O Ruin Artist encontrou um tesouro de dados antigos, espalhados por vários fragmentos de uma biblioteca outrora grandiosa. Para dar sentido a essa riqueza de informações e trazer ordem ao caos, eles devem aproveitar o poder do Hadoop e suas poderosas capacidades de processamento de dados, especificamente a funcionalidade de group by no Hive.
Configurando o Ambiente
Nesta etapa, configuraremos o ambiente e prepararemos os dados para nossa análise.
- Abra um terminal e mude para o usuário
hadoopexecutando o seguinte comando:
su - hadoop
- Navegue até o diretório
/home/hadoop:
cd /home/hadoop
- Crie um novo diretório chamado
ruin-datapara armazenar nosso conjunto de dados:
mkdir ruin-data
- Mova o conjunto de dados de exemplo para o diretório
ruin-data:
cp /tmp/ruin-dataset.txt ruin-data/
Este conjunto de dados contém informações sobre vários artefatos encontrados nas ruínas, incluindo seu tipo, localização e condição.
Explorando o Conjunto de Dados
Nesta etapa, carregaremos o conjunto de dados no Hive e exploraremos sua estrutura.
- Inicie o shell do Hive executando o seguinte comando:
hive
- Crie um novo banco de dados chamado
ruin_analysis:
CREATE DATABASE ruin_analysis;
- Use o banco de dados
ruin_analysis:
USE ruin_analysis;
- Crie uma nova tabela externa chamada
artifactspara armazenar os dados do arquivoruin-dataset.txt:
CREATE EXTERNAL TABLE artifacts (
artifact_id INT,
artifact_type STRING,
location STRING,
condition STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ',';
Este comando cria uma nova tabela com quatro colunas: artifact_id, artifact_type, location e condition. A tabela é configurada para ler dados do arquivo ruin-dataset.txt, que é um arquivo de texto separado por vírgulas armazenado no diretório /home/hadoop/ruin-data.
- Carregue os dados na tabela
artifacts:
LOAD DATA LOCAL INPATH '/home/hadoop/ruin-data/ruin-dataset.txt' INTO TABLE artifacts;
- Verifique a estrutura da tabela executando o seguinte comando:
DESCRIBE artifacts;
Isso deve exibir os nomes das colunas e seus tipos de dados.
Agrupamento e Agregação de Dados
Nesta etapa, usaremos a cláusula GROUP BY para analisar os dados dos artefatos e descobrir padrões ocultos.
- No shell do Hive, execute a seguinte consulta para contar o número de artefatos para cada tipo de artefato:
SELECT artifact_type, COUNT(*) AS artifact_count
FROM artifacts
GROUP BY artifact_type;
Esta consulta agrupa os dados por artifact_type e calcula a contagem de artefatos para cada tipo usando a função COUNT(*).
- Para encontrar o tipo de artefato mais comum, modifique a consulta anterior adicionando uma cláusula
ORDER BY:
SELECT artifact_type, COUNT(*) AS artifact_count
FROM artifacts
GROUP BY artifact_type
ORDER BY artifact_count DESC
LIMIT 1;
Esta consulta classifica os resultados por artifact_count em ordem decrescente e limita a saída à primeira linha, fornecendo o tipo de artefato com a contagem mais alta.
- Vamos analisar a condição dos artefatos com base em seu tipo. Execute a seguinte consulta:
SELECT artifact_type, condition, COUNT(*) AS artifact_count
FROM artifacts
GROUP BY artifact_type, condition
ORDER BY artifact_type, condition;
Esta consulta agrupa os dados por artifact_type e condition, conta o número de artefatos para cada combinação e classifica os resultados por artifact_type e condition.
- Finalmente, podemos explorar a distribuição de artefatos em diferentes locais executando a seguinte consulta:
SELECT location, COUNT(*) AS artifact_count
FROM artifacts
GROUP BY location
ORDER BY artifact_count DESC;
Esta consulta agrupa os dados por location e conta o número de artefatos encontrados em cada local, classificados em ordem decrescente por artifact_count.
Resumo
Neste laboratório, exploramos o poder do Hive do Hadoop e sua funcionalidade GROUP BY para analisar um conjunto de dados de artefatos encontrados em uma ruína antiga. Ao configurar o ambiente, carregar os dados no Hive e executar várias consultas GROUP BY, descobrimos informações valiosas, como o tipo de artefato mais comum, a condição dos artefatos com base em seu tipo e a distribuição dos artefatos em diferentes locais.
Por meio desta experiência prática, obtivemos uma compreensão mais profunda de como o Hadoop e o Hive podem ser aproveitados para análise de dados e descoberta de padrões, especialmente ao lidar com conjuntos de dados grandes e complexos. A capacidade de agrupar e agregar dados é uma habilidade fundamental no mundo do big data, e este laboratório forneceu uma introdução prática a este conceito essencial.



