EMR de Amazon proporciona un servicio administrado para ejecutar fácilmente aplicaciones de análisis utilizando marcos de código abierto como Apache Spark, Hive, Presto, Trino, HBase y Flink. El tiempo de ejecución de Amazon EMR para Chispa – chispear y Presto incluye optimizaciones que proporcionan más del doble de mejoras de rendimiento en comparación con Apache Spark y Presto de código abierto.
Con la versión 6.7 de Amazon EMR, ahora puede utilizar Nube informática elástica de Amazon (Amazon EC2) instancias C7g, que utilizan el Gravitón de AWS3 procesadores Estas instancias mejoran la relación precio-rendimiento de la ejecución de cargas de trabajo de Spark en Amazon EMR entre un 7,93 % y un 13,35 % con respecto a las instancias de la generación anterior, según el tamaño de la instancia. En esta publicación, describimos cómo estimamos el beneficio de precio-rendimiento.
Rendimiento del tiempo de ejecución de Amazon EMR con instancias EC2 C7g
Ejecutamos consultas comparativas de TPC-DS de 3 TB en Amazon EMR 6.9 utilizando el tiempo de ejecución de Amazon EMR para Apache Spark (appropriate con Apache Spark 3.3) con instancias C7g. Los datos fueron almacenados en Servicio de almacenamiento easy de Amazon (Amazon S3), y los resultados se compararon con clústeres C6g equivalentes de la familia de instancias de la generación anterior. Medimos las mejoras de rendimiento utilizando el tiempo de ejecución de consultas whole y la media geométrica del tiempo de ejecución de consultas en consultas comparativas de TPC-DS de 3 TB.
Nuestros resultados mostraron una mejora del 13,65 al 18,73 % en el rendimiento whole del tiempo de ejecución de consultas y una mejora del 16,98 al 20,28 % en la media geométrica en clústeres de EMR con C7g en comparación con clústeres de EMR equivalentes con instancias C6g, según el tamaño de la instancia. Al comparar los costos, observamos una reducción del costo del 7,93 al 13,35 % en el clúster de EMR con C7g en comparación con el equivalente con C6g, según el tamaño de la instancia. No comparamos la instancia de C6g xlarge porque no tenía suficiente memoria para ejecutar las consultas.
En la siguiente tabla, se muestran los resultados de la ejecución de consultas comparativas de TPC-DS de 3 TB con Amazon EMR 6.9 en comparación con clústeres de EMR de instancias C7g y C6g equivalentes.
Tamaño de instancia | 16 XL | 12 XL | 8XL | 4 XL | 2 XL |
Tamaño whole del clúster (1 líder + 5 nodos principales) | 6 | 6 | 6 | 6 | 6 |
Tiempo whole de ejecución de consultas en C6g (segundos) | 2774.86205 | 2752.84429 | 3173.08086 | 5108.45489 | 8697.08117 |
Tiempo whole de ejecución de consultas en C7g (segundos) | 2396.22799 | 2336.28224 | 2698.72928 | 4151.85869 | 7249.58148 |
Mejora whole del tiempo de ejecución de consultas con C7g | 13,65% | 15,13% | 14,95% | 18,73% | 16,64% |
Tiempo de ejecución de consulta de media geométrica C6g (segundos) | 22.2113 | 21.75459 | 23.38081 | 31.97192 | 45.41656 |
Tiempo de ejecución de consulta de media geométrica C7g (segundos) | 18.43905 | 17.65898 | 19.01684 | 25.48695 | 37.43737 |
Mejora del tiempo de ejecución de consultas de media geométrica con C7g | 16,98% | 18,83% | 18,66% | 20,28% | 17,57% |
Precio de la instancia EC2 C6g ($ por hora) | $2.1760 | $1.6320 | $1.0880 | $0.5440 | $0.2720 |
Precio de la instancia EMR C6g ($ por hora) | $0.5440 | $0.4080 | $0.2720 | $0.1360 | $0.0680 |
(EC2 + EMR) precio de la instancia ($ por hora) | $2.7200 | $2.0400 | $1.3600 | $0.6800 | $0.3400 |
Costo de ejecución en C6g ($ por instancia) | $2.09656 | $1.55995 | $1.19872 | $0.96493 | $0.82139 |
Precio de la instancia EC2 C7g ($ por hora) | $2.3200 | $1.7400 | $1.1600 | $0.5800 | $0.2900 |
Precio de EMR C7g ($ por hora por instancia) | $0.5800 | $0.4350 | $0.2900 | $0.1450 | $0.0725 |
(EC2 + EMR) Precio de la instancia C7g ($ por hora) | $2.9000 | $2.1750 | $1.4500 | $0.7250 | $0.3625 |
Costo de ejecución en C7g ($ por instancia) | $1.930290 | $1.411500 | $1.086990 | $0.836140 | $0.729990 |
Reducción whole de costes con C7g, incluida la mejora del rendimiento | -7,93% | -9,52% | -9,32% | -13,35% | -11,13% |
El siguiente gráfico muestra las mejoras por consulta observadas en instancias C7g 2xlarge en comparación con las generaciones C6g equivalentes.
Metodología de evaluación comparativa
El punto de referencia utilizado en esta publicación se deriva del punto de referencia TPC-DS estándar de la industria y utiliza consultas de la Pruebas de rendimiento de Spark SQL Repositorio de GitHub con lo siguiente correcciones aplicado.
Calculamos el TCO multiplicando el costo por hora por la cantidad de instancias en el clúster y el tiempo necesario para ejecutar las consultas en el clúster. Usamos precios según demanda en la región EE. UU. Este (Norte de Virginia) para todas las instancias.
Conclusión
En esta publicación, describimos cómo estimamos el beneficio de costo-rendimiento del uso de Amazon EMR con instancias C7g en comparación con el uso de instancias equivalentes de la generación anterior. El uso de estas nuevas instancias con Amazon EMR mejora el costo-rendimiento entre un 7% y un 13% adicional.
Sobre los autores
Al EM es gerente de producto de Amazon EMR en Amazon Net Providers.
Kyeonghyun Ryoo es ingeniero de desarrollo de software program para EMR en Amazon Net Providers. Trabaja principalmente en el diseño y la construcción de herramientas de automatización para equipos internos y clientes para maximizar su productividad. Fuera del trabajo, es un campeón mundial retirado de juegos profesionales que todavía disfruta de los videojuegos.
Sol de Yuzhou es ingeniero de desarrollo de software program para EMR en Amazon Net Providers.
steve koonce es Gerente de ingeniería para EMR en Amazon Net Providers.