AWS Batch permette di creare pacchetti di codice per processi in batch, specificarne le dipendenze e inoltrare tali processi tramite Console di gestione AWS, interfaccia a riga di comando e kit SDK. Con AWS Batch è possibile specificare parametri di esecuzione e dipendenze di processi, facilitando l'integrazione con un'ampia gamma di motori di flusso di lavoro e sintassi di elaborazione in batch comuni (ad esempio Pegasus WMS, Luigi e AWS Step Functions). AWS Batch effettua il provisioning e ricalibra istanze Amazon EC2 e Spot in base ai requisiti dei processi in corso. AWS Batch fornisce definizioni di ambiente di elaborazione e codice di processi di default con cui iniziare a lavorare rapidamente.

Supporto per carichi di lavoro HPC strettamente interdipendenti

AWS Batch supporta processi paralleli a più nodi; ciò consente di eseguire processi singoli che si possono estendere a più istanze EC2. Questa funzione consente di utilizzare AWS Batch per eseguire in modo semplice ed efficiente i carichi di lavoro come le applicazioni High Performance Computing (HPC) su larga scala e strettamente interdipendenti o i training del modello GPU distribuito. AWS Batch supporta inoltre Elastic Fabric Adapter, un'interfaccia di rete che consente di eseguire le applicazioni che richiedono elevati livelli di comunicazione scalabile su AWS. 

Definizioni di lavoro granulari

AWS Batch permette di specificare requisiti di risorse, ad esempio vCPU e memoria, ruoli di AWS Identity and Access Management (IAM), punti di montaggio dei volumi, proprietà dei container e variabili di ambiente per definire le modalità di esecuzione dei processi. AWS Batch esegue i processi come applicazioni in container eseguiti in Amazon ECS.

Modellizzazione di dipendenze di processi semplificata

AWS Batch consente di definire dipendenze tra diversi processi. Ad esempio, un processo in batch può essere composto da tre diverse fasi di elaborazione ognuna con i propri requisiti. Mediante le dipendenze, è possibile creare tre processi consecutivi e interdipendenti che richiedono risorse differenti.

AWS Batch può essere integrato con sintassi e motori di flusso di lavoro commerciali e open source quali Pegasus WMS e Luigi, permettendo di utilizzare i linguaggi di flusso di lavoro già usati nella pipeline esistente.

Provisioning e dimensionamento dinamici delle risorse di elaborazione

AWS Batch fornisce ambienti di elaborazione gestiti che effettuano il provisioning e ricalibrano automaticamente le risorse di elaborazione in base ai volumi e ai requisiti dei lavori inoltrati. Puoi configurare i tuoi ambienti di elaborazione gestiti di AWS Batch con requisiti come il tipo di istanze EC2, le configurazioni della sottorete VPC, il numero minimo/massimo/desiderato di vCPU in tutte le istanze e l'importo che sei disposto a pagare per le istanze Spot in percentuale del prezzo dell'istanza on demand.

In alternativa, è possibile effettuare il provisioning e gestire le risorse di elaborazione all'interno di ambienti di elaborazione non gestiti di AWS Batch quando è necessario utilizzare configurazioni di istanze EC2 diverse da quelle fornite dagli ambienti di elaborazione gestiti, ad esempio volumi EBS di dimensioni maggiori oppure sistemi operativi differenti. È sufficiente effettuare il provisioning di istanze EC2 che includano l'agente di Amazon ECS ed eseguano versioni supportate di Linux e Docker. AWS Batch eseguirà processi in batch nelle istanze EC2 allocate.

Pianificazione di processi basata su priorità

AWS Batch permette di impostare più code con diversi livelli di priorità. I processi in batch vengono inseriti nelle code finché le risorse di calcolo necessarie non sono disponibili. La funzione di pianificazione di AWS Batch stima quando, dove e come eseguire i processi inoltrati a una coda in base ai requisiti di ciascun processo. Questa funzione valuta la priorità di ciascuna coda ed esegue i lavori in ordine di priorità su risorse di elaborazione ottimali (ad esempio memoria o CPU ottimizzata), ammesso che non prevedano dipendenze in attesa.

Registrazione di log e monitoraggio integrati

I parametri operativi chiave dei processi in batch di AWS Batch sono disponibili nella Console di gestione AWS. È possibile consultare i parametri relativi a capacità di elaborazione e a processi in esecuzione, in attesa e completati. I log dei processi (ad esempio STDERR e STDOUT) sono disponibili nella Console di gestione AWS e vengono anche memorizzati tramite Amazon CloudWatch Logs.

Controllo granulare degli accessi

AWS Batch usa IAM per controllare e monitorare le risorse AWS a cui i processi possono accedere, ad esempio le tabelle Amazon DynamoDB. Tramite IAM, puoi anche definire le policy per singoli utenti nell'organizzazione. Ad esempio, gli amministratori potranno avere autorizzazioni di accesso complete a qualsiasi operazione API di AWS Batch, gli sviluppatori avranno autorizzazioni limitate alla configurazione degli ambienti di elaborazione e alla registrazione dei processi, mentre gli utenti finali potranno solamente inoltrare ed eliminare processi.

Ulteriori informazioni sui prezzi di AWS Batch

Visita la pagina dei prezzi
Ti senti pronto?
Inizia a usare AWS Batch
Hai altre domande?
Contattaci