

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# AWS Glue ETL
<a name="aws-glue-etl"></a>

O AWS Glue ETL suporta a extração de dados de várias fontes, transformando-os para atender às necessidades de sua empresa e carregá-los em um destino de sua escolha. Esse serviço usa o mecanismo Apache Spark para distribuir workloads de big data entre os nós de processamento, permitindo transformações mais rápidas com o processamento na memória.

AWS Glue oferece suporte a uma variedade de fontes de dados, incluindo Amazon Simple Storage Service (Amazon S3), Amazon DynamoDB e Amazon Relational Database Service (Amazon RDS). Para saber mais sobre as fontes de dados compatíveis, consulte [Tipos de conexão e opções para ETL no AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-connect.html).

## Criação no AWS Glue
<a name="authoring-etl"></a>

AWS Glue fornece várias maneiras de criar tarefas de ETL, dependendo de sua experiência e caso de uso:
+ As [tarefas de shell do Python](https://docs.aws.amazon.com/glue/latest/dg/add-job-python.html) são projetadas para executar scripts ETL básicos criados em Python. Essas tarefas são executadas em uma única máquina e são mais adequadas para conjuntos de dados pequenos ou médios.
+ As [tarefas do Apache Spark](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming.html) podem ser escritas em Python ou Scala. Essas tarefas utilizam o Spark para escalar horizontalmente workloads em vários nós de processamento, para que possam lidar com grandes conjuntos de dados e transformações complexas.
+ [O ETL de transmissão do AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/add-job-streaming.html) usa o mecanismo Apache Spark Structured Streaming para transformar dados de streaming em trabalhos de micro lotes usando uma semântica do [tipo exatamente uma vez](https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html#overview). É possível criar trabalhos de transmissão do AWS Glue em Python ou Scala.
+ O [AWS Glue Studio](https://docs.aws.amazon.com/glue/latest/dg/author-job-glue.html) é uma interface visual no estilo caixas e setas para tornar o ETL baseado em Spark acessível a desenvolvedores que são novos na programação do Apache Spark.

## Unidades de processamento de dados
<a name="dpu-worker-type"></a>

AWS Glue utiliza unidades de processamento de dados (DPUs) para medir os recursos computacionais alocados para uma tarefa de ETL e calcular o custo. Cada DPU é equivalente a 4 vCPUs e 16 GB de memória. As DPUs devem ser alocadas para sua tarefa AWS Glue, dependendo da complexidade e do volume de dados. [A alocação da quantidade adequada de DPUs](https://docs.aws.amazon.com/glue/latest/dg/monitor-debug-capacity.html#monitor-debug-capacity-fix) permitirá que você equilibre as necessidades de desempenho com as restrições de custo.

O AWS Glue fornece [vários tipos de processamento](https://docs.aws.amazon.com/glue/latest/dg/add-job.html#create-job) que são otimizados para várias workloads:
+ G.1X ou G.2X (para a maioria das transformações de dados, junções e consultas)
+ G.4X ou G.8X (para transformações de dados, agregações, junções e consultas mais exigentes)
+ G.025X (para fluxos de dados esporádicos e de baixo volume)
+ Padrão (para AWS Glue versões 1.0 ou anteriores; não recomendado para versões posteriores do AWS Glue)

## Como utilizar o shell Python
<a name="python-shell"></a>

Para uma tarefa de shell do Python, você pode utilizar 1 DPU para usar 16 GB de memória ou 0,0625 DPU para usar 1 GB de memória. O shell Python destina-se a trabalhos de ETL básicos com conjuntos de dados pequenos ou médios (até aproximadamente 10 GB).

## Como comparar tipos de processamento
<a name="compare-worker-types"></a>

A tabela a seguir mostra os diferentes tipos de processamento do AWS Glue para workloads em lote, transmissão e ETL do AWS Glue Studio usando o ambiente Apache Spark.


|  |  |  |  |  |  |  | 
| --- |--- |--- |--- |--- |--- |--- |
|  | **G.1X** | **G.2X** | **G.4X** | **G.8X** | **G.025X** | **Padrão** | 
| vCPU | 4 | 8 | 16 | 32 | 2 | 4 | 
| Memória | 16 GB | 32 GB | 64 GB | 128 GB | 4 GB | 16 GB | 
| Espaço em disco | 64 GB | 128 GB | 256 GB | 512 GB | 64 GB | 50 GB | 
| Executor por processamento | 1  | 1 | 1 | 1 | 1 | 2 | 
| DPU | 1 | 2 | 4 | 8 | 0.25 | 1 | 

O tipo de processamento padrão não é recomendado para a versão 2.0 e posterior do AWS Glue. O tipo de trabalhador G.025X está disponível apenas para trabalhos de streaming que utilizam o AWS Glue versão 3.0 ou posterior.