Introdução
Bem-vindo à Estação Comercial Intergaláctica, um centro movimentado onde comerciantes e viajantes de toda a galáxia convergem para trocar bens e serviços. Como um habilidoso Mecânico de Estação Espacial, sua experiência é muito procurada para manter os sistemas da estação funcionando sem problemas. Hoje, você foi encarregado de analisar e otimizar a alocação de recursos da estação, classificando dados com base em padrões de uso.
Seu objetivo é desenvolver uma solução baseada em Hadoop que possa processar e classificar eficientemente grandes conjuntos de dados, garantindo que os recursos da estação sejam alocados de forma eficiente para atender às demandas sempre mutáveis de seus diversos visitantes.
Configurar o Ambiente
Nesta etapa, configuraremos o ambiente para nosso projeto Hadoop e criaremos um conjunto de dados de amostra.
- Abra um terminal e mude para o usuário
hadoopexecutando o seguinte comando:
su - hadoop
- Crie um novo diretório chamado
sorting_labno diretório/home/hadoop:
mkdir /home/hadoop/sorting_lab
- Navegue até o diretório
sorting_lab:
cd /home/hadoop/sorting_lab
- Crie um conjunto de dados de amostra executando o seguinte comando:
echo -e "apple\t5\nbanana\t3\norange\t7\ngrape\t2\nstrawberry\t6" > fruit_sales.txt
Este comando cria um arquivo chamado fruit_sales.txt com o seguinte conteúdo:
apple 5
banana 3
orange 7
grape 2
strawberry 6
Cada linha no arquivo representa uma fruta e sua contagem de vendas, separadas por um caractere de tabulação.
Carregar Dados no Hive
Nesta etapa, criaremos uma tabela Hive e carregaremos o conjunto de dados de amostra nela.
- Inicie o shell do Hive executando o seguinte comando:
hive
- Crie um novo banco de dados chamado
sorting_db:
CREATE DATABASE sorting_db;
- Use o banco de dados
sorting_db:
USE sorting_db;
- Crie uma nova tabela chamada
fruit_salescom duas colunas:fruit(string) ecount(int):
CREATE TABLE fruit_sales (fruit STRING, count INT) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
- Carregue o arquivo
fruit_sales.txtna tabelafruit_sales:
LOAD DATA LOCAL INPATH '/home/hadoop/sorting_lab/fruit_sales.txt' OVERWRITE INTO TABLE fruit_sales;
- Verifique se os dados foram carregados corretamente executando uma consulta
SELECT:
SELECT * FROM fruit_sales;
Isso deve gerar:
apple 5
banana 3
orange 7
grape 2
strawberry 6
- Saia do shell do Hive executando o seguinte comando:
quit;
Ordenar Dados por Uso
Nesta etapa, ordenaremos a tabela fruit_sales pela coluna count em ordem decrescente usando a cláusula ORDER BY do Hive.
- Inicie o shell do Hive executando o seguinte comando:
hive
- Use o banco de dados
sorting_db:
USE sorting_db;
- Execute a seguinte consulta para ordenar a tabela
fruit_salespela colunacountem ordem decrescente:
CREATE TABLE result AS
SELECT * FROM fruit_sales ORDER BY count DESC;
SELECT * FROM result;
Isso deve gerar:
orange 7
strawberry 6
apple 5
banana 3
grape 2
- Saia do shell do Hive executando o seguinte comando:
quit;
Resumo
Neste laboratório, exploramos o recurso "ordenar por Uso" no Hadoop Hive. Começamos configurando o ambiente e criando um conjunto de dados de amostra. Em seguida, aprendemos como carregar os dados em uma tabela Hive e ordenar a tabela por uma coluna específica usando a cláusula ORDER BY.
O laboratório proporcionou experiência prática no trabalho com o Hive e demonstrou como ordenar dados com base em padrões de uso. Ao dominar essa habilidade, você pode analisar e otimizar eficientemente a alocação de recursos em vários cenários, como a Estação Comercial Intergaláctica.
Ao longo do laboratório, também usamos verificadores (checkers) para verificar a conclusão bem-sucedida de cada etapa, garantindo que você tenha adquirido o conhecimento e a experiência prática necessários para enfrentar desafios semelhantes no futuro.



