Componentes do AWS Glue
O AWS Glue fornece um console e operações de API para configurar e gerenciar sua workload de extração, transformação e carregamento (ETL). Você pode usar operações de API por meio de vários SDKs específicos de linguagem e da AWS Command Line Interface (AWS CLI). Para obter informações sobre como usar a AWS CLI, consulte a Referência do comando da AWS CLI.
O AWS Glue usa o AWS Glue Data Catalog para armazenar metadados relacionado às fontes de dados, transformações e destinos. O Data Catalog é uma substituição inicial do Apache Hive Metastore. O AWS Glue Jobs system fornece uma infraestrutura gerenciada para definir, programar e executar operações de ETL nos seus dados. Para obter mais informações sobre a API do AWS Glue, consulte API AWS Glue.
Console do AWS Glue
O console do AWS Glue é usado para definir e orquestrar seu fluxo de trabalho de ETL. O console chama várias operações de API no AWS Glue Data Catalog e no AWS Glue Jobs system para executar as seguintes tarefas:
-
Definir objetos do AWS Glue, como trabalhos, tabelas, crawlers e conexões.
-
Programas quando os crawlers serão executados.
-
Definir eventos ou programações para gatilhos de trabalho.
-
Pesquisar e filtrar listas de objetos do AWS Glue.
-
Editar scripts de transformação.
AWS Glue Data Catalog
O AWS Glue Data Catalog é o armazenamento de metadados técnicos persistentes na Cloud AWS.
Cada conta da AWS tem um AWS Glue Data Catalog por região da AWS. Cada Data Catalog é uma coleção altamente escalável de tabelas organizadas em bancos de dados. Uma tabela é uma representação de metadados de uma coleção de dados estruturados ou semiestruturados armazenados em fontes como Amazon RDS, Apache Hadoop Distributed File System, Amazon OpenSearch Service e outros. O AWS Glue Data Catalog fornece um repositório uniforme onde sistemas diferentes podem armazenar e encontrar metadados para acompanhar os dados em silos de dados. Você pode usar os metadados para consultar e transformar esses dados de maneira consistente em uma ampla variedade de aplicativos.
Você usa o Catálogo de Dados junto com as políticas AWS Identity and Access Management e o Lake Formation para controlar o acesso às tabelas e bancos de dados. Ao fazer isso, você pode permitir que diferentes grupos em sua empresa publiquem dados com segurança em toda a organização, protegendo informações confidenciais de maneira altamente granular.
O Data Catalog, juntamente com CloudTrail e Lake Formation, também fornece recursos abrangentes de auditoria e governança, com rastreamento de alterações de esquema e controles de acesso a dados. Isso ajuda a garantir que os dados não sejam modificados inadequadamente ou compartilhados inadvertidamente.
Para obter informações sobre como proteger e auditar o AWS Glue Data Catalog, consulte:
-
AWS Lake Formation: para obter mais informações, consulte O que é o AWS Lake Formation? no Guia do desenvolvedor do AWS Lake Formation.
-
CloudTrail — Para obter mais informações, consulte O que é CloudTrail? no Guia do usuário do AWS CloudTrail.
A seguir, estão outros produtos da AWS e projetos de código aberto que usam o AWS Glue Data Catalog:
-
Amazon Athena: para obter mais informações, consulte Noções básicas de tabelas, bancos de dados e o Data Catalog no Manual do usuário do Amazon Athena.
-
Amazon Redshift Spectrum: para obter mais informações, consulte Usar o Amazon Redshift Spectrum para consultar dados externos no Guia do desenvolvedor de banco de dados do Amazon Redshift.
-
Amazon EMR: para obter mais informações, consulte Usar políticas com base em recursos para acesso do Amazon EMR ao AWS Glue Data Catalog no Guia de gerenciamento do Amazon EMR.
-
Cliente do AWS Glue Data Catalog para o Apache Hive Metastore: para obter mais informações sobre esse projeto do GitHub, consulte Cliente do AWS Glue Data Catalog para o Apache Hive Metastore
.
Crawlers e classificadores do AWS Glue
Com o AWS Glue, você também pode configurar os crawlers capazes de verificar dados em todos os tipos de repositórios, classificá-los, extrair informações de esquema deles e armazenar os metadados automaticamente no AWS Glue Data Catalog. O AWS Glue Data Catalog pode ser usado para guiar operações de ETL.
Para obter mais informações sobre como configurar crawlers e classificadores, consulte Usar crawlers para preencher o catálogo de dados . Para obter mais informações sobre como programar crawlers e classificadores usando a API do AWS Glue, consulte API de crawlers e classificadores.
Operações de ETL no AWS Glue
Ao usar os metadados no Data Catalog, o AWS Glue pode gerar automaticamente os scripts Scala ou PySpark (API do Python para Apache Spark) com extensões do AWS Glue que podem ser usadas e modificadas para executar várias operações de ETL. Por exemplo, você pode extrair, limpar e transformar dados brutos e, em seguida, armazenar o resultado em um repositório diferente onde ele poderá ser consultado e analisado. Esse script pode converter um arquivo CSV em um formulário relacional e salvá-lo no Amazon Redshift.
Para obter mais informações sobre como usar os recursos de ETL do AWS Glue, consulte Programar scripts do Spark.
ETL de streaming no AWS Glue
O AWS Glue permite executar operações de ETL em dados de transmissão usando trabalhos em execução contínua. O ETL de transmissão do AWS Glue é criado no mecanismo Apache Spark Structured Streaming e pode ingerir transmissões do Amazon Kinesis Data Streams, do Apache Kafka e do Amazon Managed Streaming for Apache Kafka (Amazon MSK). O ETL de transmissão pode limpar e transformar dados de transmissão e carregá-los no Amazon S3 ou em armazenamentos de dados JDBC. Use o ETL de streaming no AWS Glue para processar dados de eventos, como streams de IoT, streams de cliques e logs de rede.
Se você conhecer o esquema da fonte dos dados de transmissão, poderá especificá-lo em uma tabela do Data Catalog. Caso contrário, você pode habilitar a detecção de esquemas no trabalho de ETL de transmissão. Em seguida, o trabalho determina automaticamente o esquema dos dados recebidos.
O trabalho de ETL de transmissão pode usar tanto as transformações nativas do AWS Glue quanto as transformações nativas do Apache Spark Structured Streaming. Para obter mais informações, consulte Operations on streaming DataFrames/Datasets
Para ter mais informações, consulte Trabalhos de transmissão de ETL no AWS Glue.
O sistema de trabalhos do AWS Glue
O AWS Glue Jobs system fornece infraestrutura gerenciada para orquestrar seu fluxo de trabalho de ETL. Você pode criar trabalhos no AWS Glue que automatizam os scripts usados para extrair, transformar e transferir dados para diferentes locais. Os trabalhos podem ser programados e encadeados, ou podem ser acionados por eventos como a chegada de novos dados.
Para obter mais informações sobre como usar o AWS Glue Jobs system, consulte Como monitorar o AWS Glue. Para obter informações sobre como programar usando a API do AWS Glue Jobs system, consulte API de trabalhos.
Componentes do Visual ETL
O AWS Glue permite criar tarefas de ETL por meio de uma tela visual que você pode manipular.
![A captura de tela mostra que o painel de recursos está fechado.](images/glue-studio-canvas.png)
Menu de trabalhos de ETL
As opções do menu na parte superior da tela permitem que você acesse as várias visualizações e detalhes de configuração sobre o seu trabalho.
-
Visual: a tela do editor de trabalhos visual. Aqui, você pode adicionar nós para criar um trabalho.
-
Script: a representação do script da sua tarefa de ETL. O AWS Glue gera o script com base na representação visual da sua tarefa. Você também pode editar seu script ou baixá-lo.
nota
Se você optar por editar o script, a experiência de criação do trabalho será permanentemente convertida em um modo somente de script. Depois disso, você não poderá mais usar o editor visual para editar o trabalho. Você deve adicionar todas as fontes, transformações e destinos de trabalhos, e fazer todas as alterações necessárias com o editor visual antes de escolher editar o script.
-
Detalhes do trabalho: a guia Detalhes do trabalho permite que você configure seu trabalho definindo as propriedades do trabalho. Há propriedades básicas, como nome e descrição da sua tarefa, perfil do IAM, tipo de tarefa, versão do AWS Glue, idioma, tipo de operador, número de operadores, marcador de tarefa, execução flexível, número de retiradas e tempo limite de tarefa, e há propriedades avançadas, como conexões, bibliotecas, parâmetros da tarefa e tags.
-
Execuções: depois que seu trabalho for executado, essa guia poderá ser acessada para visualizar suas execuções de trabalhos anteriores.
-
Qualidade dos dados: qualidade dos dados avalia e monitora a qualidade dos dados. Você pode aprender mais sobre como usar a qualidade de dados nessa guia e adicionar uma transformação de qualidade de dados ao seu trabalho.
-
Agendamentos: os trabalhos que você agendou aparecem nessa guia. Se não houver agendamentos anexados a esse trabalho, essa guia não estará acessível.
-
Controle de versão: você pode usar o Git com seu trabalho configurando seu trabalho em um repositório Git.
Painéis do Visual ETL
Quando você trabalha na tela, vários painéis estão disponíveis para ajudá-lo a configurar seus nós ou ajudá-lo a visualizar seus dados e visualizar o esquema de saída.
-
Propriedades: o painel Propriedades aparece quando você escolhe um nó na tela.
-
Visualização de dados: painel Visualização de dados fornece uma visualização prévia da saída de dados para que você possa tomar decisões antes de executar seu trabalho e examinar sua saída.
-
Esquema de saída: a guia Esquema de saída permite que você visualize e edite o esquema dos seus nós de transformação.
Redimensionar painéis
Você pode redimensionar o painel Propriedades no lado direito da tela e o painel inferior, que contém as guias Visualização de dados e Esquema de saída, clicando na borda do painel e arrastando-a para a esquerda e para a direita ou para cima e para baixo.
-
Painel de propriedades: redimensione o painel de propriedades clicando e arrastando a borda da tela no lado direito da tela e arrastando-a para a esquerda para expandir sua largura. Por padrão, o painel é reduzido e, quando um nó é selecionado, o painel de propriedades se abre em seu tamanho padrão.
-
Visualização de dados e painel Esquema de saída: redimensione o painel inferior clicando e arrastando a borda inferior na parte inferior da tela e arraste-a para cima para expandir sua altura. Por padrão, o painel é reduzido e, quando um nó é selecionado, o painel de inferior se abre em seu tamanho padrão.
Tela Trabalho
Você pode adicionar, remover e mover/reordenar nós diretamente na tela do Visual ETL. Pense nisso como seu espaço de trabalho para criar um trabalho de ETL totalmente funcional que começa com uma fonte de dados e pode terminar com um destino de dados.
Ao trabalhar com nós na tela, você tem uma barra de ferramentas que pode ajudá-lo a ampliar e reduzir, remover nós, criar ou editar conexões entre nós, alterar a orientação do fluxo de trabalho e desfazer ou refazer uma ação.
![A captura de tela mostra que o painel de recursos está fechado.](images/glue-studio-canvas-toolbar.png)
A barra de ferramentas flutuante está ancorada no canto superior direito da tela e contém várias imagens que realizam ações:
-
Ícone de layout: o primeiro ícone na barra de ferramentas é o ícone de layout. Por padrão, a direção dos trabalhos visuais é de cima para baixo. Ele reorganiza a direção do seu trabalho visual organizando os nós horizontalmente da esquerda para a direita. Clicar novamente no ícone do layout altera a direção de cima para baixo.
-
Ícone de recentralização: o ícone de recentralização altera a visualização da tela ao centralizá-la. Você pode usar isso com trabalhos grandes para voltar à posição central.
-
Ícone de ampliação de zoom: o ícone de ampliação de zoom aumenta o tamanho dos nós na tela.
-
Ícone de redução de zoom: o ícone de redução de zoom reduz o tamanho dos nós na tela.
-
Ícone da lixeira: o ícone de lixeira remove um nó de trabalho visual. Você deve primeiro selecionar um nó.
-
Ícone de desfazer: o ícone de desfazer reverte a última ação realizada no trabalho visual.
-
Ícone de refazer: o ícone de refazer repete a última ação realizada no trabalho visual.
Usar o minimapa
![A captura de tela mostra um close do minimapa.](images/glue-studio-canvas-minimap.png)
Painel de recursos
O painel de recursos contém todas as fontes de dados, ações de transformação e conexões disponíveis para você. Abra o painel de recursos na tela clicando no ícone “+”. Isso abrirá o painel de recursos.
Para fechar o painel de recursos, clique no X no canto superior direito do painel de recursos. Isso ocultará o painel até que você esteja pronto para abri-lo novamente.
![A captura de tela mostra que o painel de recursos quando aberto.](images/resource-panel-open.png)
Transformações e dados populares
Na parte superior do painel, há uma coleção de transformações e dados populares. Esses nós costumam ser usados no AWS Glue. Escolha um para adicioná-lo à tela. Você também pode ocultar as Transformações e dados populares clicando no triângulo ao lado do título Transformações e dados populares.
Abaixo da seção Transformações e dados populares, você pode pesquisar transformações e nós de fonte de dados. Os resultados aparecem à medida que você digita. Quanto mais letras você adicionar à sua consulta de pesquisa, menor ficará a lista de resultados. Os resultados da pesquisa são preenchidos a partir do nome e/ou descrição do nó. Escolha o nó para adicioná-lo à sua tela.
Transformações e dados
Há duas guias que organizam os nós em Transformações e Dados.
Transformações: quando você escolhe a guia Transformações, todas as transformações disponíveis podem ser selecionadas. Escolha uma transformação para adicioná-la à tela. Você também pode escolher Adicionar transformação na parte inferior da lista Transformações, o que abrirá uma nova página na documentação para criar Transformações visuais personalizadas. Seguir as etapas permitirá que você crie suas próprias transformações. Suas transformações aparecerão na lista de transformações disponíveis.
Dados: a guia de dados contém todos os nós de Fontes e Destinos. Você pode ocultar as Origens e os Destinos clicando no triângulo ao lado do título Origens ou Destinos. Você pode exibir as Origens e os Destinos clicando novamente no triângulo. Escolha um nó de origem ou de destino para adicioná-lo à tela. Você também pode escolher Gerenciar conexões para adicionar uma nova conexão. Isso abrirá a página Conectores no console.