Definições de tarefas granulares

O AWS Batch permite especificar requisitos de recursos específicos, como vCPU e memória, funções do AWS Identity and Access Management (IAM), pontos de montagem de volume, propriedades de contêiner e variáveis de ambiente para definir como os trabalhos devem ser executados. O AWS Batch executa trabalhos como se fossem aplicativos contidos em execução no Amazon ECS.

Modelagem simples de dependência de tarefa

O AWS Batch permite definir dependências entre trabalhos diferentes. Por exemplo, o trabalho em lote pode ser composto por três estágios diferentes de processamento com necessidades de recursos diferentes. Com as dependências, é possível criar três trabalhos com requisitos de recursos diferentes em que cada trabalho sucessivo dependa do trabalho anterior.

O AWS Batch pode ser integrado a mecanismos e linguagens de fluxo de trabalho comerciais e de código aberto, como Pegasus WMS e Luigi, o que permite o uso de linguagens conhecidas de fluxo de trabalho para modelar pipelines de computação em lotes.

Provisionamento e escalabilidade de recursos computacionais dinâmicos

O AWS Batch disponibiliza ambientes computacionais gerenciados que provisionam e escalam de modo dinâmico recursos computacionais com base nos requisitos de volume e recursos dos trabalhos enviados. É possível configurar os ambientes computacionais gerenciados do AWS Batch com requisitos, como os tipos de instâncias EC2, a configuração de sub-rede da VPC, as vCPUs mín./máx./desejadas entre todas as instâncias e o valor da oferta de preço do spot.

Como opção, é possível provisionar e gerenciar seus próprios recursos computacionais dentro dos ambientes computacionais não gerenciados do AWS Batch caso seja necessário usar configurações diferentes (ex.: volumes do EBS maiores ou um sistema operacional diferente) para instâncias EC2 do que as disponibilizadas pelos ambientes computacionais gerenciados do AWS Batch. Só é necessário provisionar instâncias EC2 que incluam o agente do Amazon ECS e executem versões compatíveis do Linux e do Docker. Em seguida, o AWS Batch executará trabalhos em lote nas instâncias EC2 provisionadas.

Programação de tarefas com base em prioridade

O AWS Batch permite configurar várias filas com níveis diferentes de prioridade. Os trabalhos em lote são armazenados nas filas até que os recursos computacionais estejam disponíveis para executar o trabalho. O programador do AWS Batch avalia quando, onde e como executar trabalhos que foram enviados para uma fila com base nos requisitos de recursos de cada trabalho. O programador avalia a prioridade de cada fila e executa trabalhos na ordem de prioridades usando os melhores recursos computacionais (ex.: memória vs. CPU otimizada), contanto que esses trabalhos não tenham dependências pendentes.

Oferta de preço dinâmica do spot

O AWS Batch facilita o uso de instâncias spot do Amazon EC2 para reduzir ainda mais o custo de execução dos trabalhos em lote. O AWS Batch faz ofertas de preço de modo dinâmico para instâncias spot em seu nome com base nos requisitos necessários de quantidade e recursos para os trabalhos, como também nos parâmetros de configuração definidos para os recursos computacionais.

Monitoramento e registro em logs integrados

O AWS Batch exibe métricas operacionais essenciais para seus trabalhos em lote no Console de Gerenciamento da AWS. É possível ver métricas relacionadas à capacidade computacional, como também aos trabalhos em execução, pendentes e concluídos. Os logs dos trabalhos (ex.: STDERR e STDOUT) estão disponíveis no Console de Gerenciamento da AWS e também estão gravados no Amazon CloudWatch Logs.

Controle de acesso minucioso

O AWS Batch usa o IAM para controlar e monitorar os recursos da AWS que seus trabalhos podem acessar, como as tabelas do Amazon DynamoDB. Por meio do IAM, também é possível definir políticas para usuários diferentes na sua organização. Por exemplo, administradores podem receber permissões de acesso total para qualquer operação de API do AWS Batch, desenvolvedores podem ter permissões limitadas relacionadas à configuração de ambientes computacionais e ao registro de trabalhos e os usuários finais podem ficar restritos às permissões necessárias para enviar e excluir trabalhos.

Saiba mais sobre a definição de preço do AWS Batch

Acesse a página de definição de preço
Pronto para criar?
Comece a usar o AWS Batch
Mais dúvidas?
Entre em contato conosco