I prezzi di AWS Step Functions sono calcolati solo in base all'uso effettivo. Step Functions ha due tipi di flussi di lavoro: Standard Workflow ed Express Workflow. Per capire quale flusso di lavoro è adatto alle tue esigenze, scopri le differenze tra Standard rispetto ai flussi di lavoro Express.
Informazioni dettagliate sui prezzi dei flussi di lavoro standard di AWS Step Functions
I costi addebitati dipendono dal numero di transizioni di stato completate necessarie per eseguire un'applicazione.
Step Functions conteggia una transizione di stato ogni volta che viene completata una fase del flusso di lavoro. Viene addebitato il numero totale di transizioni di stato in tutte le macchine a stati, inclusi i nuovi tentativi.
Il piano gratuito di Step Functions include 4.000 transizioni di stato al mese. Tutti i costi vengono calcolati quotidianamente e fatturati mensilmente.
Il piano gratuito per Step Functions non scade automaticamente al termine dei 12 mesi inclusi nel piano gratuito di AWS ed è disponibile sia per i nuovi clienti sia per i vecchi clienti AWS senza termini di tempo.
I prezzi di AWS Step Functions sono calcolati in base al numero di transizioni di stato utilizzate al mese. Saranno addebitati i costi solo per le transizioni di stato oltre il piano gratuito. Consulta la tabella dei prezzi delle transizioni di stato per ulteriori informazioni._
Se includi la gestione della ripetizione degli errori in qualsiasi passaggio del flusso di lavoro, ogni tentativo verrà addebitato come transizione di stato aggiuntiva.
Prezzi delle transizioni di stato di Standard Workflow di AWS Step Functions
Informazioni dettagliate sui prezzi di Express Workflow di AWS Step Functions
I prezzi degli Express Workflow di Step Functions sono calcolati solo in base all'uso effettivo. I costi addebitati dipendono dal numero di richieste per il flusso di lavoro e dalla rispettiva durata.
Express Workflow di Step Functions calcola una richiesta ogni volta che avvia l'esecuzione di un flusso di lavoro e il costo vene addebitato in base al numero totale di richieste per tutti i flussi di lavoro. Nel calcolo sono inclusi i test dalla console.
La durata è calcolata a partire dal momento in cui inizia l'esecuzione del flusso di lavoro fino al suo completamento o alla sua conclusione per altro motivo, arrotondata ai 100 ms più vicini, e dalla quantità di memoria utilizzata nell'esecuzione del flusso di lavoro, fatturata in porzioni da 64 MB.
I consumi della memoria si basano sulle dimensioni della definizione del flusso di lavoro, l'utilizzo di mappe o stati paralleli e le dimensioni di dati (payload) in esecuzione. Negli esempi 3 e 4 i prezzi mostrano delle esemplificazioni su come viene calcolato l'utilizzo della memoria.
Costi aggiuntivi
Potranno essere addebitati costi aggiuntivi se il funzionamento del flusso di lavoro dell'applicazione prevede l'utilizzo di altri servizi AWS o di trasferimento dei dati. Ad esempio, se il flusso di lavoro richiama una funzione AWS Lambda, saranno fatturate le richieste e la durata della funzione. Per ulteriori informazioni sui prezzi dei servizi AWS, consulta la relativa sezione nelle pagine di descrizione dei servizi AWS che ti interessano. Di seguito sono elencati i collegamenti ai prezzi di alcuni dei servizi più utilizzati.
Trasferimenti di dati esterni a e da Amazon EC2
Richieste e durata
Istanze on demand, riservate e Spot
Tipi di lancio di Fargate e EC2
Esempi di prezzi di Step Functions
-
Esempio 1
Flusso di lavoro standard dell'applicazione AWS Step Functions con passaggi sequenzialiIl flusso di lavoro dell'applicazione ha quattro transizioni di stato, che sono determinate contando i nodi sul grafico:
- Inizio
- Caricamento file RAW
- Eliminazione file RAW
- Fine
Il prezzo per la transizione di stato negli Stati Uniti orientali (Virginia settentrionale) è di 0,000025 USD e il piano gratuito prevede 4.000 transizioni di stato al mese. Se questa macchina a stati è stata eseguita 100.000 volte in un mese, senza nuovi tentativi dovuti a errori, il costo totale sarebbe:
Transizioni di stato nel flusso di lavoro x esecuzioni dei flussi di lavoro = totale delle transizioni di stato
4 * 100.000 = 400.000
Totale delle transizioni di stato - Transizioni di stato del piano gratuito = transizioni di stato fatturabili
400.000 - 4.000 = 396.000
Costo mensile: 396.000 x 0,000025 USD = 9,90 USD
- Inizio
-
Esempio 2
Flusso di lavoro standard dell'applicazione AWS Step Functions con condizioni di diramazioneLa macchina a stati usata in questo esempio è disponibile su GitHub.
Il flusso di lavoro di un'applicazione con condizioni di diramazione può avere più di un percorso. In questo esempio, sono presenti 10 frecce (o archi) che connettono le diverse fasi. Il percorso senza errori da "Inizio" a "Fine" attraversa nove transizioni di stato determinate contando i nodi sul grafico. I percorsi che passano da "Inizio" a "NotSupportedImageType" accumuleranno tre o quattro transizioni di stato. Inoltre, possono accumularsi ulteriori transizioni in caso di funzioni di gestione degli errori in uno degli stati.
Il prezzo per la transizione di stato negli Stati Uniti occidentali (Virginia settentrionale) è di 0,000025 USD e il piano gratuito prevede 4.000 transizioni di stato al mese. Se questo flusso di lavoro dell'applicazione è stato eseguito 100.000 volte in un mese e non sono stati riscontrati errori nel percorso, quindi senza nuovi tentativi dovuti a errori, il costo totale sarebbe:
Transizioni di stato per esecuzione * esecuzioni dei flussi di lavoro = totale delle transizioni di stato
9 x 100.000 = 900.000
Totale delle transizioni di stato - Transizioni di stato del piano gratuito = transizioni di stato fatturabili
900.000 – 4.000 = 896.000
Costo mensile: 896.000 x 0,000025 USD = 22,40 USD
Il costo totale delle cinque funzioni di AWS Lambda in questo esempio è di 97,62 USD. Durante l'esecuzione di un percorso senza errori in cui viene elaborata un'immagine JPEG da 4,7 MB, le dimensioni e la durata delle funzioni Lambda sono le seguenti:
Funzione Memoria (MB) Durata (Msec) ExtractImageMetadata 1.024 3.200 TransformMetadata 256 100 Rekognition 256 1.200 Thumbnail 1.536 1.500 StoreImageMetadata 256 300 -
Esempio 3
Express Workflow di AWS Step FunctionsPuoi effettuare una stima dell'utilizzo di memoria di un Express Workflow di AWS Step Functions in base alle dimensioni della definizione di macchine a stato, alle dimensioni dei dati (payload) in esecuzione e all'utilizzo di stati paralleli o mappa.
Utilizzo della memoria del flusso di lavoro = 50 MB + dimensioni della definizione di macchine a stato + dimensioni dei dati in esecuzione x numero di fasi parallele o mappa
Esempio:
Se disponi di un flusso di lavoro con dimensioni della definizione di macchine a stato pari a 10 KB e nessuna fase parallela o mappa:
Utilizzo della memoria del flusso di lavoro = 50 MB + 10 KBUtilizzo della memoria del flusso di lavoro = 50.01 MBCosto della memoria (in blocchi di 64 MB) = 64 MBCloudWatch Metrics contiene dettagli sul consumo della memoria sotto la voce ExpressExecutionMemory e del costo della memoria sotto la voce ExpressExecutionBilledMemory. Puoi visualizzare parametri come le esecuzioni avviate, la durata dell'esecuzione, la durata fatturata e il costo della memoria per ciascun flusso di lavoro nella console di AWS Step Functions sotto Step Functions > State Machines (Macchine a stati) > State Machine Name (Nome macchina a stati) nella scheda Monitoring (Monitoraggio).
Se esegui 1 milione di flussi di lavoro al mese e la durata media dei flussi di lavoro è di 30 secondi:
Costi per le richieste del mese
Il prezzo è di 1,00 USD per un milione di richiesteCosti per le richieste del mese = 1 milione di richieste x 1,00 USD = 1,00 USDCosti per la durata mensile
Il prezzo è di 0,00001667 USD per GB-secondo di durata1 milione di flussi di lavoro x 30 secondi di durata = 30.000.000 secondi30.000.000 x 64 MB (costo della memoria) /1024 MB = 1.875.000 GB-secondoCosti per la durata mensile = 1.875.000 GB-secondo x 0,00001667 USD = 31,26 USDCosti totali del mese
Costi totali del mese = costi delle richieste + costi delle durateCosti totali del mese = 1,00 USD + 31,26 USD = 32,26 USD
-
Esempio 4
Express Workflow di AWS Step FunctionsPuoi effettuare una stima dell'utilizzo di memoria di un Express Workflow di AWS Step Functions in base alle dimensioni della definizione di macchine a stato, alle dimensioni dei dati (payload) in esecuzione e all'utilizzo di stati paralleli o mappa.
Utilizzo della memoria del flusso di lavoro = 50 MB + dimensioni della definizione di macchine a stato + dimensioni dei dati in esecuzione x numero di fasi parallele o mappa
Se disponi di un flusso di lavoro con dimensioni della definizione di macchine a stato pari a 50 KB e 400 fasi della mappa con 32 KB di payload per fase:
Utilizzo della memoria del flusso di lavoro = 50 MB + 50 KB + (32 KB x 400 fasi)
Utilizzo della memoria del flusso di lavoro = 50 MB + 50 KB + 12.800 KB
Utilizzo della memoria del flusso di lavoro = 62,85 MB
Costo della memoria (in blocchi di 64 MB) = 64 MBCloudWatch Metrics contiene dettagli sul consumo della memoria sotto la voce ExpressExecutionMemory e del costo della memoria sotto la voce ExpressExecutionBilledMemory. Puoi visualizzare parametri come le esecuzioni avviate, la durata dell'esecuzione, la durata fatturata e il costo della memoria per ciascun flusso di lavoro nella console di AWS Step Functions sotto Step Functions > State Machines (Macchine a stati) > State Machine Name (Nome macchina a stati) nella scheda Monitoring (Monitoraggio).
Se esegui 100 milioni di flussi di lavoro al mese e la durata media dei flussi di lavoro è di 10 secondi:
Costi per le richieste del mese
Il prezzo è di 1,00 USD per un milione di richieste
Costi per le richieste del mese = 100 milioni di richieste x 1,00 USD = 100,00 USDCosti per la durata mensile
100 milioni di flussi di lavoro x 10 secondi di durata = 1.000.000.000 secondi
1.000.000.000 x 64 MB (costo della memoria) /1024 MB = 62.500.000 GB-secondo
62.500.000 GB-secondo / 60 / 60 = 17.361,11 GB-ora
0,06000 USD per GB-ora x 1.000 GB-ore = 60,00 USD
0,03000 USD per GB-ora x 4.000 GB-ore = 120,00 USD0,01642 USD per GB-ora x 12.361,11 GB-ora = 202,97 USD
Costi per la durata mensile = 60,00 USD+120,00 USD+202,97 USD = 382,97 USDCosti totali del mese
Costi totali del mese = costi delle richieste + costi delle durate
Costi mensili totali = 100.00 USD + 382,97 USD = 482,97 USD
-
Esempio 5
Stato di Map (Mappa) in AWS Step FunctionsLo stato di Map (Mappa) permette di reiterare ed elaborare set di dati di grandi dimensioni. Questo esempio include fasi di pre- e post-elaborazione e reitera 1 milione di oggetti da un bucket Amazon Simple Storage Service (S3).
Lo stato di Map (Mappa) offre due modalità: Inline (In linea) e Distributed (Distribuita). L'esempio utilizza lo stato di Map (Mappa) in modalità Distributed (Distribuita) per ottenere elevata simultaneità e Distributed Map (Mappa distribuita) costa una transazione di stato per iterazione. Inoltre, con lo stato Distributed Map (Mappa distribuita), è possibile specificare il tipo di esecuzione per il flusso di lavoro di elaborazione dei dati. In questo esempio, viene utilizzato il tipo di esecuzione Express. Il flusso di lavoro Express all'interno della Distributed Map (Mappa distribuita) utilizza meno di 64 MB di memoria e la durata media di un'esecuzione è 30 secondi.
Un'esecuzione di questo flusso di lavoro include 1.000.005 transizioni di stato, 1.000.000 richieste Express e una durata di 520,33 GB all'ora:
- 1 transizione di stato Start execution (Avvia esecuzione)
- 1 transizione di stato Enter Pre-processing (Entra in pre-elaborazione)
- 1 transizione di stato Enter Map (Entra in mappa)
- 1.000.000 transizioni di stato per le iterazioni Start Map (Avvia mappa)
- Nota: non c'è transizione di stato per l'avvio di ogni iterazione quando si utilizza una mappa in linea. Per sapere quando utilizzare Map (Mappa) in modalità Inline (In linea) o Distributed (Distribuita), consulta la documentazione.
- Nota: con lo stato Distributed Map (Mappa distribuita), è possibile ridurre il numero di iterazioni attraverso il batching del carico di lavoro. Consulta la documentazione sull'ottimizzazione mediante batching.
- 1.000.000 richieste Express
- 520,83 GB all'ora di durata Express
-
- 1 milione di iterazioni x 30 secondi di durata = 30.000.000 secondi
- 30.000.000 secondi x 64 MB (costo della memoria)/1.024 MB = 1.875.000 GB al secondo
- 1.875.000 GB al secondo/60/60 = 520,83 GB all'ora
- 1 transizione di stato Enter Post-processing (Entra in post-elaborazione)
- 1 transizione di stato di End execution (Termina esecuzione)
Costi delle transizioni di stato
Il prezzo per transazione di stato nella Regione Stati Uniti orientali (Virginia settentrionale) è 0,000025 USD. Il piano gratuito offre 4.000 transizioni di stato al mese.
Totale delle transizioni di stato - transizioni di stato del piano gratuito = transizioni di stato fatturabili
1.000.005 - 4.000 = 996.005
Costi delle transizioni di stato = 996.005 x 0,000025 USD = 24,90 USD
Costi delle richieste Express
Il prezzo per milione di richieste nella Regione Stati Uniti orientali (Virginia settentrionale) è 1,00 USD
Costi delle richieste = 1 milione di richieste x 1,00 USD = 1,00 USDCosti della durata Express
Il prezzo per i primi 1.000 GB all'ora nella Regione Stati Uniti orientali (Virginia settentrionale) è 0,0600 USD.Costi della durata = 520,83 GB all'ora x 0,0600 USD = 31,25 USD
Costi totali
Costi totali = 24,90 USD + 1,00 USD + 31,25 USD = 57,15 USD
Inizia a utilizzare AWS Step Functions