Con AWS Step Functions, paga únicamente por lo que utiliza. Step Functions tiene dos tipos de flujos de trabajo: Standard Workflows y Express Workflows. Para comprender cuál se adapta a sus necesidades de flujo de trabajo, consulte los Flujos de trabajo Estándar en comparación con Express.
Detalles de precios de AWS Step Functions Standard Workflows
Se le cobra en función de la cantidad de transiciones de estado que se requieran para ejecutar su aplicación.
Step Functions cuenta una transición de estado cada vez que se ejecuta un paso de su flujo de trabajo. Se le cobrará por la cantidad total de transiciones de estado en todas las máquinas de estado, incluso los reintentos.
La capa gratuita de Step Functions incluye 4000 transiciones de estado gratis al mes. Todos los cargos se calculan a diario y se facturan mensualmente.
La capa gratuita de Step Functions no vence de forma automática al finalizar los doce meses de uso de la capa gratuita de AWS, sino que está disponible para los clientes nuevos y existentes de AWS de forma indefinida.
Con AWS Step Functions, paga por el número de transiciones de estado que utiliza por mes. Se cobran las transiciones de estado que superan el valor de la capa gratuita. Consulte la tabla de precios de las transiciones de estado para obtener más detalles.
Si incluye la gestión de errores de reintento en cualquier paso de su flujo de trabajo, cada reintento se cobrará como una transición de estado adicional.
Precios de transiciones de estado de los flujos de trabajo exprés de AWS Step Functions
Detalles de precios de los flujos de trabajo exprés de AWS Step Functions
Con Step Functions Express Workflows, paga únicamente por lo que utiliza. Se le cobra en función de la cantidad de solicitudes para su flujo de trabajo y su duración.
Step Functions Express Workflows cuenta una solicitud cada vez que comienza a ejecutar un flujo de trabajo, y se le aplicarán cargos por el número total de solicitudes de todas los flujos de trabajo. Esto incluye pruebas de la consola.
La duración se calcula desde el momento en que su flujo de trabajo comienza a ejecutarse hasta que se completa o termina, redondeado a los 100 ms más cercanos, y la cantidad de memoria utilizada en la ejecución de su flujo de trabajo, facturada en fragmentos de 64 MB.
El consumo de memoria se basa en el tamaño de la definición de una carga de trabajo, el uso de estados Map o Parallel y el tamaño de los datos (carga) de la ejecución. Los ejemplos de precios 3 y 4 muestran ejemplos de la utilización de memoria estimada.
Cargos adicionales
Puede incurrir en cargos adicionales si la operación del flujo de trabajo de su aplicación utiliza otros servicios de AWS o transfiere datos. Por ejemplo, si el flujo de trabajo de su aplicación invoca una función de AWS Lambda, se le cobrará por cada solicitud y por la duración de cada función Lambda. Para obtener más detalles sobre los precios de los servicios de AWS, consulte la sección de precios en las páginas de los servicios de AWS correspondientes. A continuación, encontrará enlaces a los precios de algunos de los servicios utilizados con mayor frecuencia.
Transferencias de datos externas desde y hacia Amazon EC2
Solicitudes y duración
Instancias bajo demanda, reservadas y de spot
Tipos de lanzamientos de Fargate y EC2
Ejemplos de precios de Step Functions
-
Ejemplo 1
Flujo de trabajo de aplicaciones estándar de AWS Step Functions con pasos secuencialesUn flujo de trabajo tiene cuatro transiciones de estado que se determinan contando los nodos en el gráfico:
- Inicio
- Carga del archivo RAW
- Eliminación del archivo RAW
- End
El precio por transición de estado en EE.UU. Este (Norte de Virginia) es de 0,000025 USD y la capa gratuita proporciona 4000 transiciones de estado por mes. Si ejecuta esta máquina de estado 100 000 veces durante un mes, sin reintentos debidos a errores, pagaría:
Transiciones de estado en flujo de trabajo * ejecuciones de flujo de trabajo = transiciones de estado totales
4 * 100 000 = 400 000
Transiciones de estado totales – Transiciones de estado de capa gratuita = transiciones de estado que se facturarán
400 000 - 4000 = 396 000
Cargos mensuales = 396 000 * 0,000025 USD = 9,90 USD
- Inicio
-
Ejemplo 2
Flujo de trabajo de aplicaciones estándar de AWS Step Functions condiciones de ramificaciónLa máquina de estado usada en este ejemplo se puede encontrar en GitHub.
Un flujo de trabajo de una aplicación con condiciones de ramificación tiene más de una ruta. En este ejemplo, hay 10 flechas (o arcos) que conectan pasos. La ruta desde “Start” (Inicio) hasta “End” (Fin) pasa por nueve transiciones de estado determinadas por el recuento de nodos del gráfico. Las rutas que pasan desde "Start" a "NotSupportedImageType" acumulan tres o cuatro transiciones de estado. Podrían cobrarse transiciones de estado adicionales si se incluye la gestión de errores de reintento en cualquier estado.
El precio por transición de estado en EE.UU. Este (Norte de Virginia) es de 0,000025 USD y la capa gratuita proporciona 4000 transiciones de estado por mes. Si ejecuta este flujo de trabajo de aplicación 100 000 veces en un mes, y la ruta se concreta siempre y no hay reintentos debido a errores, usted pagaría:
Transiciones de estado por ejecución * ejecuciones de flujo de trabajo = transiciones de estado totales
9 * 100 000 = 900 000
Transiciones de estado totales – Transiciones de estado de capa gratuita = transiciones de estado que se facturarán
900 000 – 4000 = 896 000
Cargos mensuales = 896 000 * 0,000025 USD = 22,40 USD
El costo total de cinco funciones de AWS Lambda en este ejemplo sería de 97,62 USD. En una ejecución de ruta correcta que procese una imagen JPEG de 4,7 MB, el tamaño y la duración de las funciones Lambda sería:
Función Memoria (MB) Duración (milisegundos) ExtractImageMetadata 1024 3200 TransformMetadata 256 100 Rekognition 256 1200 Thumbnail 1536 1500 StoreImageMetadata 256 300 -
Ejemplo 3
AWS Step Functions Express WorkflowsPuede calcular el uso de memoria de AWS Step Functions Express Workflow del tamaño de la definición de la máquina de estado, el tamaño de los datos (carga) de la ejecución y el uso de estados Map o Parallel.
Memoria del flujo de trabajo utilizado = 50 MB + tamaño de la definición de la máquina de estado + tamaño de los datos de la ejecución x número de pasos de Map o Parallel
Ejemplo:
Si tiene una carga de trabajo con un tamaño de definición de la máquina de estado de 10 KB, sin pasos de Parallel o Map:
Memoria utilizada en el flujo de trabajo = 50 MB + 10 KBMemoria utilizada en el flujo de trabajo = 50,01 MBMemoria facturada (en fragmentos de 64 MB) = 64 MBLas métricas de CloudWatch contienen información sobre el consumo de memoria en ExpressExecutionMemory y sobre la memoria facturada en ExpressExecutionBilledMemory. Puede ver métricas tales como Ejecuciones iniciadas, Duración de la ejecución, Duración facturada y Memoria facturada para cada flujo de trabajo en la Consola de AWS Step Functions de Step Functions > Máquinas de estado > Nombre de la máquina del estado en la pestaña Monitoreo.
Si ejecuta 1 millón de flujos de trabajo al mes y la duración promedio de los flujos de trabajo es de 30 segundos:
Cargos de solicitudes mensuales
El precio es de 1,00 USD por millón de solicitudesCargos mensuales por solicitud = 1 millón de solicitudes x 1,00 USD = 1,00 USDCargos de duración mensual
El precio es de 0,00001667 USD por GB-segundo de duración1 millón de flujos de trabajo x 30 segundos de duración = 30 000 000 de segundos30 000 000 x 64 MB (memoria facturada) / 1024 MB = 1 875 000 GB-sCargos de duración mensual = 1 875 000 GB-s x 0,00001667 USD = 31,26 USDCargos mensuales totales
Cargos mensuales totales = cargos por solicitud + cargos por duraciónCargos mensuales totales = 1,00 USD + 31,26 USD = 32,26 USD
-
Ejemplo 4
AWS Step Functions Express WorkflowsPuede calcular el uso de memoria de AWS Step Functions Express Workflow del tamaño de la definición de la máquina de estado, el tamaño de los datos (carga) de la ejecución y el uso de estados Map o Parallel.
Memoria del flujo de trabajo utilizado = 50 MB + tamaño de la definición de la máquina de estado + tamaño de los datos de la ejecución x número de pasos de Map o Parallel
Si tiene una carga de trabajo con un tamaño de definición de la máquina de estado de 50 KB, 400 pasos de mapa con 32 KB de carga por paso:
Memoria utilizada en el flujo de trabajo = 50 MB + 50 KB (32 KB x 400 pasos)
Memoria utilizada en el flujo de trabajo = 50 MB + 50 KB + 12 800 KB
Memoria utilizada en el flujo de trabajo = 62,85 MB
Memoria facturada (en fragmentos de 64 MB) = 64 MBLas métricas de CloudWatch contienen información sobre el consumo de memoria en ExpressExecutionMemory y sobre la memoria facturada en ExpressExecutionBilledMemory. Puede ver métricas tales como Ejecuciones iniciadas, Duración de la ejecución, Duración facturada y Memoria facturada para cada flujo de trabajo en la Consola de AWS Step Functions de Step Functions > Máquinas de estado > Nombre de la máquina del estado en la pestaña Monitoreo.
Si ejecuta 100 millón de flujos de trabajo al mes, y la duración promedio de los flujos de trabajo es de 10 segundos:
Cargos de solicitudes mensuales
El precio es de 1,00 USD por millón de solicitudes
Cargos mensuales por solicitud = 100 millones de solicitudes x 1,00 USD = 100,00 USDCargos de duración mensual
100 millones de flujos de trabajo x 10 segundos de duración = 1 000 000 000 de segundos
1 000 000 000 x 64 MB (memoria facturada) / 1024 MB = 62 500 000 GB-s
62 500 000 GB-s / 60 / 60 = 17 361,11 GB-horas
0,06000 por GB-hora x 1000 GB-Horas = 60,00 USD
0,03000 USD por GB-hora x 4000 GB-Horas = 120,00 USD0,01642 USD por GB-hora x 12 361,11 GB-Horas = 202,97 USD
Cargos de duración mensual = 60,00 USD + 120,00 USD + 202,97 USD = 382,97Cargos mensuales totales
Cargos mensuales totales = cargos por solicitud + cargos por duración
Cargos mensuales totales = 100,00 USD + 382,97 USD = 482,97 USD
-
Ejemplo 5
Estado de asignación de AWS Step FunctionsEl estado de asignación puede utilizarse para iterar y procesar grandes conjuntos de datos. Este ejemplo incluye pasos previos y posteriores al procesamiento, e itera más de un millón de objetos de un bucket de Amazon Simple Storage Service (S3).
El estado de asignación tiene dos modos: insertado y distribuido. En este ejemplo se utiliza el estado de asignación en modo distribuido para lograr una alta simultaneidad y la asignación distribuida cuesta una transición de estado por iteración. Además, con el estado de asignación distribuida, puede especificar el tipo de ejecución para el flujo de trabajo de procesamiento de datos. En este ejemplo, se utiliza el tipo de ejecución exprés. El flujo de trabajo exprés de la asignación distribuida utiliza menos de 64 MB de memoria y la duración promedio de una ejecución es de 30 segundos.
Una ejecución de este flujo de trabajo incluye 1 000 005 transiciones de estado, 1 000 000 de solicitudes exprés y duración de 520,33 GB-horas:
- 1 Iniciar la transición de estado de ejecución
- 1 Ingresar la transición de estado de procesamiento previo
- 1 Ingresar la transición de estado de asignación
- 1 000 000 Iniciar la transición de estado de iteraciones de asignación
- Nota: No hay ninguna transición de estado para el inicio de cada iteración cuando se utiliza una asignación insertada. Consulte la documentación sobre cuándo utilizar la asignación en modo insertado o en modo distribuido.
- Nota: Con el estado de asignación distribuida, puede reducir la cantidad de iteraciones si agrupa por lotes la carga de trabajo. Consulte la documentación sobre la optimización mediante lotes.
- 1 000 000 de solicitudes exprés
- Duración exprés de 520,83 GB-horas
-
- 1 millón de iteraciones x 30 segundos de duración = 30 000 000 segundos
- 30 000 000 segundos x 64 MB (memoria facturada)/1024 MB = 1 875 000 GB-s
- 1 875 000 GB-s / 60 / 60 = 520,83 GB-horas
- 1 Ingresar la transición de estado de procesamiento posterior
- 1 Terminar la transición de estado de ejecución
Cargos de transiciones de estado
El precio por transición de estado en el Este de EE. UU. (Norte de Virginia) es de 0,000025 USD. El nivel gratuito proporciona 4000 transiciones de estado gratuitas al mes.
Transiciones de estado totales - transiciones de estado de nivel gratuito = transiciones de estado que se facturarán
1 000 005 - 4000 = 996 005
Cargos de transiciones de estado = 996 005 * 0,000025 = 24,90 USD
Cargos de solicitudes exprés
El precio por millón de solicitudes de estado en el Este de EE. UU. (Norte de Virginia) es de 1,00 USD
Cargos de solicitudes = 1 millón de solicitudes x 1,00 USD = 1,00 USDCargos de duración exprés
El precio de los primeros 1000 GB-hora en el Este de EE. UU. (Norte de Virginia) es de 0,0600 USD.Cargos de duración = 520,83 GB-hora x 0,0600 USD = 31,25 USD
Cargos totales
Cargos totales = 24,90 USD + 1,00 USD + 31,25 USD = 57,15 USD
Introducción a AWS Step Functions