Panoramica delle API e degli strumenti di Batch
L'elaborazione dei carichi di lavoro paralleli con Azure Batch viene in genere eseguita a livello di codice usando una delle API Batch. L'applicazione o il servizio client può usare le API Batch per comunicare con il servizio Batch. Con le API Batch, è possibile creare e gestire pool di nodi di calcolo, che siano macchine virtuali o servizi cloud. È quindi possibile programmare processi e attività da eseguire in tali nodi.
È possibile elaborare in modo efficiente carichi di lavoro su larga scala per l'organizzazione oppure offrire ai clienti un front-end di servizio perché possano eseguire processi e attività, su richiesta o in base a una pianificazione, in uno, centinaia o anche migliaia di nodi. È anche possibile usare il servizio Azure Batch nell'ambito di un flusso di lavoro più ampio, gestito da strumenti come Azure Data Factory.
Suggerimento
Per altre informazioni sulle funzionalità e sul flusso di lavoro usati in Azure Batch, vedere Flusso di lavoro e risorse del servizio Batch.
Account Azure per lo sviluppo Batch
Quando si sviluppano soluzioni Batch, è necessario usare gli account seguenti nella sottoscrizione di Azure:
- Account Batch: le risorse di Azure Batch, inclusi pool, nodi di calcolo, processi e attività, sono associate a un account Azure Batch. Quando l'applicazione effettua una richiesta sul servizio Batch, autentica la richiesta usando il nome dell'account Azure Batch, l'URL dell'account e una chiave di accesso o un token di Microsoft Entra. È possibile creare un account Batch nel portale di Azure oppure a livello di codice.
- Account di archiviazione: Batch include il supporto predefinito per l'uso di file in Archiviazione di Azure. Quasi tutti gli scenari di Batch usano l'archivio BLOB di Azure per lo staging dei programmi eseguiti e dei dati elaborati dalle attività e per l'archiviazione dei dati di output generati. Ogni account Batch è in genere associato a un account di archiviazione corrispondente.
API a livello di servizio e di gestione
Azure Batch offre due set di API, uno per il livello di servizio e uno per il livello di gestione. La denominazione è spesso simile, ma i risultati restituiti sono diversi.
Nel log attività vengono registrate solo le azioni delle API di gestione. Le API per il livello di servizio ignorano il livello di gestione delle risorse di Azure (management.azure.com) e non vengono registrate.
L'API di servizio Batch per eliminare un pool è ad esempio indirizzata direttamente all'account Batch: DELETE {batchUrl}/pools/{poolId}
Mentre l'API di gestione Batch per eliminare un pool è indirizzata al livello management.azure.com: DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}
API di servizio Batch
Le applicazioni e i servizi possono rilasciare chiamate API REST dirette o usare una o più delle librerie client seguenti per eseguire e gestire i carichi di lavoro di Azure Batch.
API | Informazioni di riferimento sulle API | Scarica | Esercitazione | Esempi di codice | Altre informazioni |
---|---|---|---|---|---|
Batch REST | API REST di Azure - Documentazione | N/D | - | - | Versioni supportate |
Batch .NET | Azure SDK per .NET - Documentazione | NuGet | Esercitazione | GitHub | Note sulla versione |
Batch Python | Azure SDK per Python - Documentazione | PyPI | Esercitazione | GitHub | File Leggimi |
Batch JavaScript | Azure SDK per JavaScript - Documentazione | npm | Esercitazione | - | File Leggimi |
Batch Java | Azure SDK per Java - Documentazione | Maven | - | GitHub | File Leggimi |
API per la gestione di Batch
Le API di Azure Resource Manager per Batch forniscono l'accesso a livello di codice agli account Batch. Usando queste API, è possibile gestire a livello di codice gli account Batch, le quote, i pacchetti dell'applicazione e altre risorse tramite il provider Microsoft.Batch.
API | Informazioni di riferimento sulle API | Scarica | Esercitazione | Esempi di codice |
---|---|---|---|---|
REST per la gestione di Batch | API REST di Azure - Documentazione | - | - | GitHub |
.NET per la gestione di Batch | Azure SDK per .NET - Documentazione | NuGet | Esercitazione | GitHub |
Python per la gestione di Batch | Azure SDK per Python - Documentazione | PyPI | - | - |
JavaScript per la gestione di Batch | Azure SDK per JavaScript - Documentazione | npm | - | - |
Java per la gestione di Batch | Azure SDK per Java - Documentazione | Maven | - | - |
Strumenti da riga di comando di Batch
Questi strumenti da riga di comando forniscono le stesse funzionalità delle API del servizio Batch e di gestione di Batch:
- Cmdlet di PowerShell per Batch: i cmdlet di Azure Batch nel modulo di Azure PowerShell consentono di gestire le risorse Batch con PowerShell.
- Interfaccia della riga di comando di Azure: l'interfaccia della riga di comando di Azure è un set di strumenti multipiattaforma che offre comandi della shell per l'interazione con molti servizi di Azure, inclusi il servizio Batch e il servizio di gestione di Batch. Per altre informazioni, vedere Gestire le risorse Batch con l'interfaccia della riga di comando di Azure.
Altri strumenti per lo sviluppo di applicazioni
Gli strumenti aggiuntivi riportati di seguito possono risultare utili per la compilazione e il debug di applicazioni e servizi Batch.
- Portale di Azure: nel portale di Azure è possibile creare, monitorare ed eliminare pool, processi e attività di Batch. È possibile visualizzare informazioni sullo stato di queste e altre risorse mentre si eseguono i processi, nonché scaricare file dai nodi di calcolo dei pool. È ad esempio possibile scaricare il file
stderr.txt
di un'attività non riuscita durante la risoluzione dei problemi. Si possono anche scaricare i file desktop remoto (RDP) che possono essere usati per accedere ai nodi di calcolo. - Azure Batch Explorer: Batch Explorer è uno strumento client autonomo, gratuito e ricco di funzionalità che consente di creare, eseguire il debug e monitorare le applicazioni di Azure Batch. È possibile scaricare un pacchetto di installazione per Mac, Linux o Windows.
- Azure Storage Explorer: anche se non è uno strumento di Azure Batch in senso stretto, Storage Explorer può essere utile per lo sviluppo e il debug delle soluzioni Batch.
Risorse aggiuntive
- Per informazioni sulla registrazione di eventi dall'applicazione Batch, vedere Metriche, avvisi e log di Batch per la valutazione diagnostica e il monitoraggio.
- Per informazioni di riferimento sugli eventi generati dal servizio Batch, vedere Batch Analytics.
- Per informazioni sulle variabili di ambiente per i nodi di calcolo, vedere Variabili di ambiente del runtime attività di Azure Batch.
Passaggi successivi
- Informazioni sul flusso di lavoro e sulle risorse principali del servizio Batch, ad esempio pool, nodi, processi e attività.
- Introduzione alla libreria di Azure Batch per .NET . Sono disponibili anche una versione Python e un'esercitazione su JavaScript.
- Scaricare gli esempi di codice in GitHub per vedere come C# e Python possono interfacciarsi con Batch per pianificare ed elaborare carichi di lavoro di esempio.