Descrição geral dos APIs e ferramentas do Batch
O processamento de cargas de trabalho paralelas com o Azure Batch é geralmente realizado através de programação, utilizando uma das APIs do Batch. A aplicação ou serviço de cliente pode utilizar APIs do Batch para comunicar com o serviço Batch. Com as APIs do Batch, pode criar e gerir conjuntos de nós de computação, máquinas virtuais ou serviços cloud. Pode, então, agendar tarefas para serem executadas nesses nós.
Você pode processar com eficiência cargas de trabalho de grande escala para sua organização ou fornecer um front-end de serviço para seus clientes para que eles possam executar trabalhos e tarefas — sob demanda ou em uma programação — em uma, centenas ou até milhares de nós. Também pode utilizar o Azure Batch como parte de um fluxo de trabalho maior, gerido por ferramentas como o Azure Data Factory.
Gorjeta
Para saber mais sobre os recursos e o fluxo de trabalho usados no Lote do Azure, consulte Fluxo de trabalho e recursos do serviço em lote.
Contas do Azure para desenvolvimento do Batch
Quando desenvolver soluções do Batch, irá utilizar as seguintes contas na subscrição do Azure:
- Conta de lote: os recursos do Lote do Azure, incluindo pools, nós de computação, trabalhos e tarefas, estão associados a uma conta do Lote do Azure. Quando a aplicação faz um pedido com o serviço do Batch, autentica o pedido com o nome de conta do Azure Batch, o URL da conta e uma tecla de acesso ou um token do Microsoft Entra. Você pode criar uma conta em lote no portal do Azure ou programaticamente.
- Conta de armazenamento: o Batch inclui suporte interno para trabalhar com arquivos no Armazenamento do Azure. Quase todos os cenários do Batch utilizam o Armazenamento de blobs para testar os programas que as tarefas executam e os dados que processam, e para o armazenamento de dados de saída por elas gerados. Cada conta de lote geralmente é associada a uma conta de armazenamento correspondente.
APIs de nível de serviço e de gerenciamento
O Azure Batch tem dois conjuntos de APIs, um para o nível de serviço e outro para o nível de gerenciamento. A nomenclatura é muitas vezes semelhante, mas eles retornam resultados diferentes.
Somente as ações das APIs de gerenciamento são rastreadas no log de atividades. As APIs de nível de serviço ignoram a camada de Gerenciamento de Recursos do Azure (management.azure.com) e não são registradas.
Por exemplo, a API de serviço em lote para excluir um pool é direcionada diretamente para a conta de lote: DELETE {batchUrl}/pools/{poolId}
Considerando que a API de gerenciamento de lote para excluir um pool é direcionada para a camada management.azure.com: DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}
APIs de serviço em lote
As suas aplicações e serviços podem emitir chamadas diretas de API REST ou utilizar uma ou mais das bibliotecas de cliente seguintes para executar e gerir as cargas de trabalho do Azure Batch.
API | Referência da API | Download | Tutorial | Amostras de código | Mais informações |
---|---|---|---|---|---|
REST do Batch | Azure REST API - Documentos | N/A | - | - | Versões suportadas |
.NET do Batch | SDK do Azure para .NET - Documentos | NuGet | Tutorial | GitHub | Notas de lançamento |
Batch Python | SDK do Azure para Python - Documentos | PyPI | Tutorial | GitHub | de |
JavaScript em lote | SDK do Azure para JavaScript - Documentos | npm | Tutorial | - | de |
Batch Java | SDK do Azure para Java - Documentos | Maven | - | GitHub | de |
APIs de Gestão de Batch
As APIs do Azure Resource Manager para o Batch concedem acesso programático às contas do Batch. Ao utilizar estas APIs, pode gerir, através de programação, contas, quotas, pacotes de aplicações e outros recursos do Batch através do fornecedor Microsoft.Batch.
API | Referência da API | Download | Tutorial | Amostras de código |
---|---|---|---|---|
REST de Gestão de Lotes | Azure REST API - Documentos | - | - | GitHub |
Gestão de Batch .NET | SDK do Azure para .NET - Documentos | NuGet | Tutorial | GitHub |
Python de Gestão de Lotes | SDK do Azure para Python - Documentos | PyPI | - | - |
JavaScript de gerenciamento de lote | SDK do Azure para JavaScript - Documentos | npm | - | - |
Java de Gestão de Lotes | SDK do Azure para Java - Documentos | Maven | - | - |
Ferramentas de linha de comandos do Batch
Estas ferramentas da linha de comandos fornecem a mesma funcionalidade que o serviço de Batch e as APIs de Gestão do Batch:
- Cmdlets do Batch PowerShell: os cmdlets do Azure Batch no módulo Azure PowerShell permitem-lhe gerir recursos do Batch com o PowerShell.
- CLI do Azure: a CLI do Azure é um conjunto de ferramentas para várias plataformas que fornece comandos shell para interagir com vários serviços do Azure, incluindo o serviço do Batch e o serviço de Gestão do Batch. Para obter mais informações, consulte Gerenciar recursos em lote com a CLI do Azure.
Outras ferramentas para programação da aplicação
Essas ferramentas adicionais podem ser úteis para criar e depurar seus aplicativos e serviços em lote.
- Portal do Azure: pode criar, monitorizar e eliminar conjuntos, trabalhos e tarefas do Batch no portal do Azure. Você pode exibir informações de status para esses e outros recursos enquanto executa seus trabalhos e até mesmo baixar arquivos dos nós de computação em seus pools. Por exemplo, pode transferir o
stderr.txt
de uma tarefa falhada, durante a resolução de problemas. Também pode transferir ficheiros de Ambiente de Trabalho Remoto (RDP) que pode utilizar para iniciar sessão em nós de computação. - Azure Batch Explorer: O Batch Explorer é uma ferramenta de cliente autônoma, autônoma e com recursos avançados para ajudar a criar, depurar e monitorar aplicativos do Azure Batch. Transfira um pacote de instalação para Mac, Linux ou Windows.
- Azure Storage Explorer: Embora não seja estritamente uma ferramenta do Azure Batch, o Storage Explorer pode ser útil ao desenvolver e depurar suas soluções em lote.
Recursos adicionais
- Para saber mais sobre o registro de eventos do seu aplicativo em lote, consulte Métricas, alertas e logs em lote para avaliação e monitoramento de diagnóstico.
- Para obter informações de referência sobre eventos gerados pelo serviço Batch, consulte Batch Analytics.
- Para obter informações sobre variáveis de ambiente para nós de computação, consulte Variáveis de ambiente de tempo de execução do Azure Batch.
Próximos passos
- Saiba mais sobre o fluxo de trabalho do serviço em lote e os recursos primários, como pools, nós, trabalhos e tarefas.
- Introdução à biblioteca do Azure Batch para .NET para saber como utilizar C# e a biblioteca .NET do Batch para executar uma carga de trabalho simples utilizando um fluxo de trabalho Batch comum. Uma versão Python e um tutorial JavaScript também estão disponíveis.
- Transfira as amostras de código no GitHub para ver como tanto o C# como o Python pode interagir com o Batch para agendar e processar amostras de cargas de trabalho.