

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

# Exemplo de um fluxo de trabalho de matriz
<a name="example_array_job"></a>

Um fluxo de trabalho comum para AWS Batch os clientes é executar um trabalho de configuração pré-requisito, executar uma série de comandos em um grande número de tarefas de entrada e, em seguida, concluir com um trabalho que agrega resultados e grava dados resumidos no Amazon S3, DynamoDB, Amazon Redshift ou Aurora.

Por exemplo:
+ `JobA`: um trabalho de não matriz padrão que executa uma rápida listagem e validação de metadados de objetos em um bucket do Amazon S3, `BucketA`. A sintaxe [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html)JSON é a seguinte.

  ```
  {
      "jobName": "JobA",
      "jobQueue": "ProdQueue",
      "jobDefinition": "JobA-list-and-validate:1"
  }
  ```
+ `JobB`: um trabalho de matriz com 10 mil cópias que depende do `JobA`, que, por sua vez, executa comandos com uso intensivo de CPU para cada objeto em `BucketA` e carrega resultados para `BucketB`. A sintaxe [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html)JSON é a seguinte.

  ```
  {
      "jobName": "JobB",
      "jobQueue": "ProdQueue",
      "jobDefinition": "JobB-CPU-Intensive-Processing:1",
      "containerOverrides": {
          "resourceRequirements": [
              {
                  "type": "MEMORY",
                  "value": "4096"
              },
              {
                  "type": "VCPU",
                  "value": "32"
              }
          ]
     }
      "arrayProperties": {
          "size": 10000
      },
      "dependsOn": [
          {
              "jobId": "JobA_job_ID"
    }
      ]
  }
  ```
+ `JobC`: outro trabalho de matriz com 10 mil cópias, que depende do `JobB` com um modelo de dependência de `N_TO_N`, que executa comandos com uso intensivo de memória em relação a cada item em`BucketB`, grava metadados no DynamoDB e carrega saída resultante em `BucketC`. A sintaxe [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html)JSON é a seguinte.

  ```
  {
      "jobName": "JobC",
      "jobQueue": "ProdQueue",
      "jobDefinition": "JobC-Memory-Intensive-Processing:1",
      "containerOverrides": {
          "resourceRequirements": [
              {
                  "type": "MEMORY",
                  "value": "32768"
              },
              {
                  "type": "VCPU",
                  "value": "1"
              }
          ]
     }
      "arrayProperties": {
          "size": 10000
      },
      "dependsOn": [
          {
              "jobId": "JobB_job_ID",
              "type": "N_TO_N"
          }
      ]
  }
  ```
+ `JobD`: um trabalho de matriz que executa 10 etapas de validação, no qual cada uma precisa consultar o DynamoDB e pode interagir com qualquer um dos buckets do Amazon S3 mencionados acima. Cada uma das etapas no `JobD` executa o mesmo comando. No entanto, o comportamento é diferente baseado no valor da variável de ambiente `AWS_BATCH_JOB_ARRAY_INDEX` dentro do contêiner do trabalho. Essas etapas de validação são executadas sequencialmente (por exemplo, `JobD:0` e, em seguida, `JobD:1`). A sintaxe [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html)JSON é a seguinte.

  ```
  {
      "jobName": "JobD",
      "jobQueue": "ProdQueue",
      "jobDefinition": "JobD-Sequential-Validation:1",
      "containerOverrides": {
          "resourceRequirements": [
              {
                  "type": "MEMORY",
                  "value": "32768"
              },
              {
                  "type": "VCPU",
                  "value": "1"
              }
          ]
     }
      "arrayProperties": {
          "size": 10
      },
      "dependsOn": [
          {
              "jobId": "JobC_job_ID"
          },
          {
              "type": "SEQUENTIAL"
          },
   
      ]
  }
  ```
+ `JobE`: um trabalho de não matriz final, que executa algumas operações de limpeza simples e envia uma notificação SNS da Amazon, com uma mensagem avisando que o pipeline foi concluído e vinculado a URL de saída. A sintaxe [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html)JSON é a seguinte.

  ```
  {
      "jobName": "JobE",
      "jobQueue": "ProdQueue",
      "jobDefinition": "JobE-Cleanup-and-Notification:1",
      "parameters": {
          "SourceBucket": "s3://amzn-s3-demo-source-bucket",
          "Recipient": "pipeline-notifications@mycompany.com"
      },
      "dependsOn": [
          {
              "jobId": "JobD_job_ID"
          }
      ]
  }
  ```