

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á.

# Criando e trabalhando com AWS Glue DataBrew trabalhos de receita
<a name="jobs.recipe"></a>

Use um *trabalho de DataBrew receita* para limpar e normalizar os dados em um DataBrew conjunto de dados e gravar o resultado em um local de saída de sua escolha. A execução de um trabalho de receita não afeta o conjunto de dados nem os dados de origem subjacentes. Quando uma tarefa é executada, ela se conecta aos dados de origem somente para leitura. A saída do trabalho é gravada em um local de saída que você define no Amazon S3, no ou em um banco de AWS Glue Data Catalog dados JDBC compatível.

Use o procedimento a seguir para criar um trabalho de DataBrew receita.

**Para criar um trabalho de receita**

1. Faça login no Console de gerenciamento da AWS e abra o DataBrew console em [https://console.aws.amazon.com/databrew/](https://console.aws.amazon.com/glue/).

1. Escolha **TRABALHOS** no painel de navegação, escolha a guia **Trabalhos de receita** e, em seguida, escolha **Criar trabalho**.

1. Insira um nome para seu trabalho e, em seguida, escolha **Criar um trabalho de receita**.

1. Em **Job input**, insira detalhes sobre o trabalho que você deseja criar: o nome do conjunto de dados a ser processado e a receita a ser usada.

   Um trabalho de receita usa uma DataBrew receita para transformar um conjunto de dados. Para usar uma receita, certifique-se de publicá-la primeiro.

1. Defina as configurações de saída do trabalho.

   Forneça um destino para a produção do seu trabalho. Se você não tiver uma DataBrew conexão configurada para seu destino de saída, configure-a primeiro na guia **DATASETS**, conforme descrito em[Conexões suportadas para fontes e saídas de dados](supported-data-connection-sources.md). Escolha um dos seguintes destinos de saída: 
   + Amazon S3, com ou sem suporte AWS Glue Data Catalog
   + Amazon Redshift, com ou sem suporte AWS Glue Data Catalog
   + JDBC
   + Mesas Snowflake
   + Tabelas de banco de dados do Amazon RDS com AWS Glue Data Catalog suporte. As tabelas de banco de dados do Amazon RDS oferecem suporte aos seguintes mecanismos de banco de dados: 
     + Amazon Aurora
     + MySQL
     + Oracle
     + PostgreSQL
     + Microsoft SQL Server
   + Amazon S3 com AWS Glue Data Catalog suporte.

   Para AWS Glue Data Catalog saída baseada em AWS Lake Formation, DataBrew suporta somente a substituição de arquivos existentes. Nessa abordagem, os arquivos são substituídos para manter intactas as permissões existentes do Lake Formation para sua função de acesso a dados. Além disso, DataBrew dá precedência à localização do Amazon S3 na tabela AWS Glue Data Catalog. Portanto, você não pode substituir a localização do Amazon S3 ao criar um trabalho de receita. 

   Em alguns casos, a localização do Amazon S3 na saída do trabalho difere da localização do Amazon S3 na tabela do catálogo de dados. Nesses casos, DataBrew atualiza a definição do trabalho automaticamente com a localização do Amazon S3 na tabela do catálogo. Ele faz isso quando você atualiza ou inicia seus trabalhos existentes.

1. Somente para destinos de saída do Amazon S3, você tem mais opções:

   1. Escolha um dos formatos de saída de dados disponíveis para o Amazon S3, compactação opcional e um delimitador personalizado opcional. Os delimitadores compatíveis para arquivos de saída são os mesmos de entrada: vírgula, dois pontos, ponto e vírgula, barra vertical, tabulação, circunflexo, barra invertida e espaço. Para obter detalhes sobre a formatação, consulte a tabela a seguir.    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/databrew/latest/dg/jobs.recipe.html)

   1. <a name="singlefileoutput"></a>Escolha se deseja gerar um único arquivo ou vários arquivos. Há três opções para saída de arquivos com o Amazon S3:
      + **Geração automática de arquivos (recomendado)** — DataBrew Determina o número ideal de arquivos de saída.
      + **Saída de arquivo único** — Faz com que um único arquivo de saída seja gerado. Essa opção pode resultar em tempo adicional de execução do trabalho porque o pós-processamento é necessário.
      + **Saída de vários arquivos** — Você especifica o número de arquivos para a saída do seu trabalho. Os valores válidos são de 2 a 999. Menos arquivos do que você especifica podem ser gerados se o particionamento de colunas for usado ou se o número de linhas na saída for menor que o número de arquivos que você especificar.

   1. <a name="columnpartioning"></a>(Opcional) Escolha o particionamento de colunas para a saída do trabalho de receita. 

      O particionamento de colunas fornece outra maneira de particionar a saída do seu trabalho de receita em vários arquivos. O particionamento de colunas pode ser usado com uma saída nova ou existente do Amazon S3 ou com a nova saída do Catálogo de Dados do Amazon S3. Ele não pode ser usado com as tabelas existentes do Catálogo de Dados Amazon S3. Os arquivos de saída são baseados nos valores dos nomes das colunas que você especifica. Se os nomes das colunas que você especificar forem exclusivos, os caminhos de pasta do Amazon S3 resultantes serão baseados na ordem dos nomes das colunas.

      Para obter um exemplo de particionamento de colunas[Exemplo de particionamento de colunas](#jobs.recipe-column-partition-example), consulte a seguir.

1. (Opcional) Escolha **Ativar criptografia para saída do trabalho** para criptografar a saída do trabalho que DataBrew grava no seu local de saída e, em seguida, escolha o método de criptografia:
   + **Use SSE-S3 criptografia** — A saída é criptografada usando criptografia do lado do servidor com chaves de criptografia gerenciadas pelo Amazon S3.
   + **Use AWS Key Management Service(AWS KMS)** — A saída é criptografada usando AWS KMS. Para usar essa opção, escolha o Amazon Resource Name (ARN) da AWS KMS chave que você deseja usar. Se você não tiver uma AWS KMS chave, poderá criar uma escolhendo **Criar uma AWS KMS chave**.

1. Para **permissões de acesso**, escolha uma função AWS Identity and Access Management(IAM) que permita DataBrew gravar em seu local de saída. Para um local pertencente à sua AWS conta, você pode escolher a função `AwsGlueDataBrewDataAccessRole` gerenciada pelo serviço. Isso permite DataBrew acessar AWS os recursos que você possui.

1. No painel **Configurações avançadas do trabalho**, você pode escolher mais opções de como seu trabalho deve ser executado:
   + **Número máximo de unidades** — DataBrew processa trabalhos usando vários nós de computação, executados em paralelo. O número padrão de nós é 5. O número máximo de nós é 149.
   + **Tempo limite do trabalho —** Se um trabalho levar mais do que o número de minutos que você definiu aqui para ser executado, ele falhará com um erro de tempo limite. O valor padrão é 2.880 minutos ou 48 horas.
   + **Número de novas tentativas** — Se um trabalho falhar durante a execução, DataBrew pode tentar executá-lo novamente. Por padrão, o trabalho não é repetido.
   + **Habilitar Amazon CloudWatch Logs para trabalho** — Permite DataBrew publicar informações de diagnóstico no CloudWatch Logs. Esses registros podem ser úteis para solucionar problemas ou para obter mais detalhes sobre como o trabalho é processado.

1. Para **trabalhos agendados**, você pode aplicar um cronograma de DataBrew trabalho para que seu trabalho seja executado em um horário específico ou de forma recorrente. Para obter mais informações, consulte [Automatizando a execução de trabalhos com um cronograma](#jobs.scheduling).

1. Quando as configurações estiverem como você deseja, escolha **Criar trabalho**. Ou, se você quiser executar o trabalho imediatamente, escolha **Criar e executar o trabalho**.

Você pode monitorar o progresso do seu trabalho verificando seu status enquanto o trabalho está em execução. Quando a execução do trabalho é concluída, o status muda para **Bem-sucedido**. A saída do trabalho agora está disponível no local de saída escolhido.

DataBrew salva sua definição de tarefa, para que você possa executar a mesma tarefa posteriormente. Para executar novamente um trabalho, escolha **Trabalhos** no painel de navegação. Escolha o trabalho com o qual você deseja trabalhar e, em seguida, escolha **Executar trabalho**.

## Exemplo de particionamento de colunas
<a name="jobs.recipe-column-partition-example"></a>

Como exemplo de particionamento de colunas, suponha que você especifique três colunas, cada linha contendo um dos dois valores possíveis. A `Dept` coluna pode ter o valor `Admin` ou`Eng`. A `Staff-type` coluna pode ter o valor `Part-time` ou`Full-time`. A `Location` coluna pode ter o valor `Office1` ou`Office2`. Os buckets do Amazon S3 para sua saída de trabalho são parecidos com os seguintes.

```
s3://bucket/output-folder/Dept=Admin/Staff-type=Part-time/Area=Office1/jobId_timestamp_part0001.csv
s3://bucket/output-folder/Dept=Admin/Staff-type=Part-time/Location=Office2/jobId_timestamp_part0002.csv
s3://bucket/output-folder/Dept=Admin/Staff-type=Full-time/Location=Office1/jobId_timestamp_part0003.csv
s3://bucket/output-folder/Dept=Admin/Staff-type=Full-time/Location=Office2/jobId_timestamp_part0004.csv
s3://bucket/output-folder/Dept=Eng/Staff-type=Part-time/Location=Office1/jobId_timestamp_part0005.csv
s3://bucket/output-folder/Dept=Eng/Staff-type=Part-time/Location=Office2/jobId_timestamp_part0006.csv
s3://bucket/output-folder/Dept=Eng/Staff-type=Full-time/Location=Office1/jobId_timestamp_part0007.csv
s3://bucket/output-folder/Dept=Eng/Staff-type=Full-time/Location=Office2/jobId_timestamp_part0008.csv
```

## Automatizando a execução de trabalhos com um cronograma
<a name="jobs.scheduling"></a>

Você pode executar novamente os DataBrew trabalhos a qualquer momento e também automatizar as execuções de trabalhos com DataBrew um cronograma. 

**Para executar novamente um trabalho DataBrew**

1. Faça login no Console de gerenciamento da AWS e abra o DataBrew console em [https://console.aws.amazon.com/databrew/](https://console.aws.amazon.com/databrew/). 

1. No painel de navegação, escolha **Trabalhos**. Escolha o trabalho que você deseja executar e, em seguida, escolha **Executar trabalho**.

Para executar um DataBrew trabalho em um determinado horário ou de forma recorrente, crie um cronograma de DataBrew trabalho. Em seguida, você pode configurar seu trabalho para ser executado de acordo com o cronograma.

**Para criar um cronograma de DataBrew trabalho**

1. No painel de navegação do DataBrew console, escolha **Trabalhos**. Escolha a guia **Programações** e escolha **Adicionar agenda**.

1. Insira um nome para sua agenda e, em seguida, escolha um valor para a **frequência de execução**:
   + **Recorrente** — escolha com que frequência você deseja que o trabalho seja executado (por exemplo, a cada 12 horas). Em seguida, escolha em qual dia ou dias executar o trabalho. Opcionalmente, você pode inserir a hora do dia em que o trabalho é executado.
   + **Em um horário específico** — insira a hora do dia em que você deseja que o trabalho seja executado. Em seguida, escolha em qual dia ou dias executar o trabalho. 
   + **Inserir CRON** — Defina o cronograma do trabalho inserindo uma expressão cron válida. Para obter mais informações, consulte [Trabalhando com expressões cron para trabalhos de receitas](#jobs.cron).

1. Quando estiver satisfeito com as configurações, clique em **Salvar**.

**Para associar um trabalho a um cronograma**

1. No painel de navegação, escolha **Trabalhos**.

1. Escolha o trabalho com o qual você deseja trabalhar e, em **Ações**, escolha **Editar.** .

1. No painel **Agendar trabalhos**, escolha **Associar agendamento**. Escolha o nome da agenda que você deseja usar.

1. Quando estiver satisfeito com as configurações, clique em **Salvar**.

## Trabalhando com expressões cron para trabalhos de receitas
<a name="jobs.cron"></a>

Expressões cron têm seis campos obrigatórios, que são separados por um espaço em branco. A sintaxe é a seguinte.

```
{{Minutes}} {{Hours}} {{Day-of-month}} {{Month}} {{Day-of-week}} {{Year}}
```

Na sintaxe anterior, os seguintes valores e curingas são usados para os campos indicados.


| **Campos** | **Valores** | **Curingas** | 
| --- | --- | --- | 
| Minutos | 0–59 | , - \* / | 
| Horas | 0–23 | , - \* / | 
| Day-of-month | 1–31 | , - \* ? / L W | 
| Mês | 1—12 ou JAN-DEC | , - \* / | 
| Day-of-week | 1—7 ou SUN-SAT | , - \* ? / L | 
| Ano | 1970–2199 | , - \* / | 

Use esses curingas da seguinte forma:
+ A **,** (vírgula) curinga inclui valores adicionais. No `Month` campo, `JAN,FEB,MAR` inclui janeiro, fevereiro e março.
+ O caractere curinga **-** (em hífen) especifica os intervalos. No `Day` campo, 1—15 inclui os dias 1 a 15 do mês especificado.
+ O **\*** (asterisco) curinga inclui todos os valores no campo. No `Hours` campo, **\*** inclui cada hora.
+ A **/** (barra) curinga especifica incrementos. No `Minutes` campo, você pode inserir **1/10** para especificar a cada 10 minutos, a partir do primeiro minuto da hora (por exemplo, 11, 21 e 31 minutos).
+ O curinga **?** (interrogação) especifica um ou outro. Por exemplo, suponha que no `Day-of-month` campo você insira **7**. Se você não se importava em que dia da semana era o sétimo, você pode entrar**?** no `Day-of-week` campo.
+ O caractere curinga **L** no `Day-of-week` campo `Day-of-month` ou especifica o último dia do mês ou da semana.
+ O curinga **W** no campo `Day-of-month` especifica um dia da semana. No campo `Day-of-month`, `3W` especifica o dia mais próximo do terceiro dia da semana do mês.

Esses campos e valores têm as seguintes limitações: 
+ Não é possível especificar os campos `Day-of-month` e `Day-of-week` na mesma expressão cron. Se você especificar um valor em um dos campos, deverá usar um **?** (ponto de interrogação) no outro.
+ Expressões Cron que levam a taxas superiores a 5 minutos não são suportadas. 

Ao criar uma programação, você pode usar os seguintes exemplos de strings cron.


| Minutos | Horas | Dia do mês | Mês | Dia da semana | Ano | Significado | 
| --- | --- | --- | --- | --- | --- | --- | 
| 0 | 10 | \* | \* | ? | \* | Corra às 10:00 (UTC) todos os dias | 
| 15 | 12 | \* | \* | ? | \* | Executada às 12h15 (UTC) todos os dias | 
| 0 | 18 | ? | \* | MON-FRI | \* | Executada às 18h (UTC) de segunda a sexta | 
| 0 | 8 | 1 | \* | ? | \* | Corra às 8:00 AM (UTC) todo primeiro dia do mês | 
| 0/15 | \* | \* | \* | ? | \* | Executada a cada 15 minutos | 
| 0/10 | \* | ? | \* | MON-FRI | \* | Executada a cada 10 minutos de segunda a sexta | 
| 0/5 | 8-17 | ? | \* | MON-FRI | \* | Executada a cada 5 minutos de segunda a sexta entre 8h e 17h55 (UTC) | 

Por exemplo, você pode usar a seguinte expressão cron para executar um trabalho todos os dias às 12:15 UTC.

```
15 12 * * ? *
```

## Excluindo trabalhos e cronogramas de trabalho
<a name="jobs.deleting"></a>

Se você não precisar mais de um trabalho ou agenda de trabalho, poderá excluí-lo.

**Para excluir um trabalho**

1. No painel de navegação, escolha **Trabalhos**.

1. Escolha o trabalho que você deseja excluir e, em **Ações**, escolha **Excluir.** .

**Para excluir uma agenda de trabalho**

1. No painel de navegação, escolha **Trabalhos** e, em seguida, escolha a guia **Agendas**.

1. Escolha a agenda que você deseja excluir e, em **Ações**, escolha **Excluir.** .