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.

Piano gratuito

4.000 transizioni di stato
al mese

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.

Transizioni di stato

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.

Trasferimento dati

Trasferimenti di dati esterni a e da Amazon EC2

Prezzi di AWS Lambda

Richieste e durata

Prezzi di Amazon EC2

Istanze on demand, riservate e Spot

Prezzi di Amazon ECS

Tipi di lancio di Fargate e EC2

Esempi di prezzi di Step Functions

  • Il flusso di lavoro dell'applicazione ha quattro transizioni di stato, che sono determinate contando i nodi sul grafico:

    1. Inizio
    2. Caricamento file RAW
    3. Eliminazione file RAW
    4. 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

  • La 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
  • Puoi 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 KB
    Utilizzo della memoria del flusso di lavoro = 50.01 MB
    Costo della memoria (in blocchi di 64 MB) = 64 MB

    CloudWatch 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 richieste
    Costi per le richieste del mese = 1 milione di richieste x 1,00 USD = 1,00 USD

    Costi per la durata mensile

    Il prezzo è di 0,00001667 USD per GB-secondo di durata
    1 milione di flussi di lavoro x 30 secondi di durata = 30.000.000 secondi
    30.000.000 x 64 MB (costo della memoria) /1024 MB = 1.875.000 GB-secondo
    Costi per la durata mensile = 1.875.000 GB-secondo x 0,00001667 USD = 31,26 USD

    Costi totali del mese

    Costi totali del mese = costi delle richieste + costi delle durate
    Costi totali del mese = 1,00 USD + 31,26 USD = 32,26 USD
  • Puoi 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 MB

    CloudWatch 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 USD

    Costi 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 USD
    0,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 USD

    Costi 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

  • Lo 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 USD

    Costi 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

Visita la pagina sulle nozioni di base
Sei pronto per iniziare?
Accedi alla console AWS Step Functions.
Hai altre domande?
Contattaci