Pular para o conteúdo principal

AWS Batch

O que é

Um serviço totalmente gerenciado que permite executar cargas de trabalho de computação em lote de qualquer escala na AWS Cloud.

Para que serve

Planejar, programar e executar trabalhos em lote em contêineres (Docker) em instâncias EC2 ou Fargate, sem a necessidade de gerenciar a infraestrutura subjacente.

Casos de uso

  • Processamento de dados em lote (ex: ETL, transcodificação de mídia).
  • Simulações científicas e de engenharia.
  • Análise genômica e bioinformática.
  • Processamento de imagens e vídeos.
  • Treinamento de modelos de machine learning.

Principais pontos

  • Totalmente gerenciado: A AWS gerencia o provisionamento de recursos, o escalonamento, o agendamento de trabalhos e o tratamento de erros.
  • Contêineres: Suporta trabalhos em contêineres Docker, o que facilita a portabilidade e o gerenciamento de dependências.
  • Escalabilidade: Escala automaticamente os recursos de computação para atender às demandas dos trabalhos em lote.
  • Integração: Integra-se com outros serviços AWS, como EC2, Fargate, ECR, S3 e CloudWatch.
  • Preços: Pague apenas pelos recursos de computação que você usa.

Comparativo

  • AWS Batch vs. EC2 (direto) para processamento em lote: O Batch simplifica a execução de trabalhos em lote, abstraindo a complexidade de gerenciar servidores, agendamento e escalonamento. Ideal para workloads de lote que se beneficiam de contêineres e escalabilidade automática. O EC2 direto exige que o usuário configure e gerencie manualmente os servidores, o agendamento de trabalhos e a escalabilidade para processamento em lote. Oferece maior controle, mas com maior complexidade de gerenciamento.