Praticar de graça

🧬Entenda o AWS Glue

O Glue é o catálogo e a cozinha de dados da AWS. O catálogo guarda o "mapa" dos seus dados (quais tabelas existem, quais colunas, onde os arquivos estão no S3); a parte de ETL transforma dados de um formato pra outro. Um crawler pode até descobrir a estrutura sozinho.

Pra que serve

Preparar dados espalhados no S3 pra serem consultados (pelo Athena) ou processados: descobrir o esquema dos arquivos, catalogar, limpar e converter formatos. É a base de qualquer análise de dados na AWS.

Onde se usa no mundo real

Vocabulário

Catálogo de dados
o índice: bancos e tabelas que apontam pros arquivos no S3. É só metadado — o dado fica no S3.
Banco / tabela
agrupador / a descrição de um conjunto de arquivos (colunas + caminho no S3).
Crawler
o robô que varre o S3 e descobre as colunas e os tipos automaticamente.
ETL
Extract, Transform, Load — extrair, transformar e carregar dados de um lugar pro outro.
💰 Como cobra: Você paga pelo tempo de execução dos crawlers e jobs (por segundo) + um valor pequeno pelo catálogo. Catalogar poucos dados custa quase nada.

Comandos que você aprende nesta trilha

Cada um deles roda de verdade no terminal do CLImb, com a mesma saída e as mesmas mensagens de erro que a AWS devolve.

aws glue get-databases

aws glue get-databases

aws glue get-databases

aws glue create-database

aws glue create-database

aws glue create-database --database-input '{"Name":"dados_loja"}'

aws glue create-table

aws glue create-table

aws glue create-table --database-name dados_loja --table-input file://tabela-vendas.json

aws glue get-tables

aws glue get-tables

aws glue get-tables --database-name dados_loja

aws glue create-crawler

aws glue create-crawler

aws glue create-crawler --name crawler-vendas --role <arn> --database-name dados_loja --targets '{"S3Targets":[{"Path":"s3://meu-bucket/vendas/"}]}'

aws glue start-crawler

aws glue start-crawler

aws glue start-crawler --name crawler-vendas

aws glue get-crawler

aws glue get-crawler

aws glue get-crawler --name crawler-vendas

aws glue delete-database

aws glue delete-database

aws glue delete-database --name dados_loja

O que você pratica (8 atividades)

Cada atividade é um pedido de trabalho, do jeito que ele chega no dia a dia — você resolve digitando os comandos, não escolhendo alternativa.

O catálogo de dados

O Glue guarda o mapa dos seus dados: quais tabelas existem e onde os arquivos estão no S3. Liste os bancos do catálogo.

Crie o banco do catálogo

Crie o banco dados_loja. O parâmetro é um JSON: --database-input '{"Name":"dados_loja"}'.

Descreva a tabela de vendas

Crie a tabela vendas no banco, usando o arquivo pronto file://tabela-vendas.json (colunas + caminho no S3). <small>(espie com cat tabela-vendas.json)</small>

Confira o catálogo

Liste as tabelas do banco dados_loja.

O robô que descobre sozinho

Em vez de escrever a tabela na mão, o crawler varre o S3 e descobre as colunas. Crie o crawler crawler-vendas apontando pro banco.

Solte o robô

Inicie o crawler crawler-vendas.

Em que pé está o robô?

Veja os detalhes do crawler crawler-vendas: estado e quantas vezes já rodou.

Descarte um catálogo

Crie um banco catalogo_temp e depois apague ele. <small>(apagar o catálogo NÃO apaga os arquivos no S3 — o Glue guarda só o mapa, não o dado)</small>

Continue por aqui

Ler explica. Digitar fixa. No CLImb você roda os comandos de verdade num terminal AWS simulado — o estado persiste entre eles, como na nuvem real.

As 3 primeiras atividades desta trilha são abertas; o resto faz parte do plano Pro.

Começar — 3 atividades grátis
Todas as lições · Praticar no terminal · Sobre