Comprender el comportamiento de las aplicaciones en Serverless EMR - Amazon EMR

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Comprender el comportamiento de las aplicaciones en Serverless EMR

En esta sección se describe el comportamiento de envío de los trabajos, la configuración de la capacidad para el escalado y los ajustes de configuración de trabajo para EMR Serverless.

Comportamiento predeterminado de la aplicación

Inicio automático: una aplicación está configurada de forma predeterminada para que se inicie automáticamente al enviar el trabajo. Puede desactivar esta característica.

Parada automática: una aplicación está configurada de forma predeterminada para que se detenga automáticamente cuando esté inactiva durante 15 minutos. Cuando una aplicación cambia al estado STOPPED, libera cualquier capacidad preinicializada configurada. Puede modificar la cantidad de tiempo de inactividad antes de que una aplicación se detenga automáticamente o puede desactivar esta característica.

Capacidad máxima

Puede configurar la capacidad máxima hasta la que puede escalarse verticalmente una aplicación. Puede especificar su capacidad máxima en términos de CPU memoria (GB) y disco (GB).

nota

Se recomienda configurar la capacidad máxima para que sea proporcional a los tamaños de los trabajadores admitidos multiplicando el número de trabajadores por sus tamaños. Por ejemplo, si desea limitar la aplicación a 50 trabajadores con 2vCPUs, 16 GB de memoria y 20 GB de disco, establezca la capacidad máxima en 100vCPUs, 800 GB de memoria y 1000 GB de disco.

Configuraciones de trabajadores admitidas

En la siguiente tabla se muestran las configuraciones y los tamaños de trabajo compatibles que puede especificar para EMR Serverless. Puede configurar diferentes tamaños para los controladores y los ejecutores en función de las necesidades de su carga de trabajo.

CPU Memoria Almacenamiento efímero predeterminado

1 v CPU

Mínimo 2 GB, máximo 8 GB, en incrementos de 1 GB

20 GB-200 GB

2 v CPU

Mínimo 4 GB, máximo 16 GB, en incrementos de 1 GB

20 GB-200 GB

4 v CPU

Mínimo 8 GB, máximo 30 GB, en incrementos de 1 GB

20 GB-200 GB

8 v CPU

Mínimo 16 GB, máximo 60 GB, en incrementos de 4 GB

20 GB-200 GB

16 v CPU

Mínimo 32 GB, máximo 120 GB, en incrementos de 8 GB

20 GB-200 GB

CPU— Cada trabajador puede tener 1, 2, 4, 8 o 16vCPUs.

Memoria: cada trabajador tiene memoria, especificada en GB, dentro de los límites indicados en la tabla anterior. Los trabajos de Spark tienen una sobrecarga de memoria, lo que significa que la memoria que utilizan es superior a los tamaños de contenedor especificados. Esta sobrecarga se especifica con las propiedades spark.driver.memoryOverhead y spark.executor.memoryOverhead. La sobrecarga tiene un valor predeterminado del 10 % de la memoria del contenedor, con un mínimo de 384 MB. Debe tener en cuenta esta sobrecarga al elegir el tamaño de los trabajadores.

Por ejemplo, si eliges 4 vCPUs para tu instancia de trabajo y una capacidad de almacenamiento preinicializada de 30 GB, debes establecer un valor aproximado de 27 GB como memoria ejecutora para tu trabajo en Spark. Esto maximiza el uso de la capacidad preinicializada. La memoria utilizable sería de 27 GB, más un 10 % de 27 GB (2,7 GB), para un total de 29,7 GB.

Disco: puede configurar a cada trabajador con discos de almacenamiento temporal con un tamaño mínimo de 20 GB y uno máximo de 200 GB. Solo paga por el almacenamiento adicional de más de 20 GB que configure por trabajador.