Amazon EMR lance la prise en charge des instances Amazon EC2 C7g (Graviton3) afin d'améliorer les performances de coût des charges de travail Spark de 7 à 13 %

Amazon EMR lance la prise en charge des instances Amazon EC2 C7g (Graviton3) afin d'améliorer les performances de coût des charges de travail Spark de 7 à 13 %

Nœud source: 1935298

Amazon DME fournit un service géré pour exécuter facilement des applications d'analyse à l'aide de frameworks open source tels qu'Apache Spark, Hive, Presto, Trino, HBase et Flink. L'environnement d'exécution Amazon EMR pour Spark ainsi que le Presto inclut des optimisations qui fournissent plus de deux fois les améliorations de performances par rapport à Apache Spark et Presto open source.

Avec la version 6.7 d'Amazon EMR, vous pouvez désormais utiliser Cloud de calcul élastique Amazon (Amazon EC2) Instances C7g, qui utilisent le AWSGraviton3 processeurs. Ces instances améliorent le rapport prix/performances de l'exécution des charges de travail Spark sur Amazon EMR de 7.93 à 13.35 % par rapport aux instances de la génération précédente, selon la taille de l'instance. Dans cet article, nous décrivons comment nous avons estimé l'avantage prix-performance.

Performances d'exécution d'Amazon EMR avec les instances EC2 C7g

Nous avons exécuté des requêtes de référence TPC-DS 3 To sur Amazon EMR 6.9 à l'aide de l'environnement d'exécution Amazon EMR pour Apache Spark (compatible avec Apache Spark 3.3) avec des instances C7g. Les données ont été stockées dans Service de stockage simple Amazon (Amazon S3), et les résultats ont été comparés à des clusters C6g équivalents de la famille d'instances de la génération précédente. Nous avons mesuré les améliorations de performances à l'aide du temps d'exécution total des requêtes et de la moyenne géométrique du temps d'exécution des requêtes sur les requêtes de référence TPC-DS 3 To.

Nos résultats ont montré une amélioration de 13.65 à 18.73 % des performances totales d'exécution des requêtes et une amélioration de 16.98 à 20.28 % de la moyenne géométrique sur les clusters EMR avec C7g par rapport aux clusters EMR équivalents avec des instances C6g, en fonction de la taille de l'instance. En comparant les coûts, nous avons observé une réduction des coûts de 7.93 à 13.35 % sur le cluster EMR avec C7g par rapport à l'équivalent avec C6g, selon la taille de l'instance. Nous n'avons pas évalué l'instance C6g xlarge car elle ne disposait pas de suffisamment de mémoire pour exécuter les requêtes.

Le tableau suivant présente les résultats de l'exécution des requêtes de référence TPC-DS 3 To à l'aide d'Amazon EMR 6.9 par rapport aux clusters EMR d'instance C7g et C6g équivalents.

Taille d'instance 16 XL 12 XL 8 XL 4 XL 2 XL
Taille totale du cluster (1 leader + 5 nœuds principaux) 6 6 6 6 6
Durée totale d'exécution des requêtes sur C6g (secondes) 2774.86205 2752.84429 3173.08086 5108.45489 8697.08117
Durée totale d'exécution des requêtes sur C7g (secondes) 2396.22799 2336.28224 2698.72928 4151.85869 7249.58148
Amélioration totale de l'exécution des requêtes avec C7g 13.65% 15.13% 14.95% 18.73% 16.64%
Moyenne géométrique du temps d'exécution des requêtes C6g (secondes) 22.2113 21.75459 23.38081 31.97192 45.41656
Moyenne géométrique du temps d'exécution des requêtes C7g (secondes) 18.43905 17.65898 19.01684 25.48695 37.43737
Amélioration du temps d'exécution des requêtes moyennes géométriques avec C7g 16.98% 18.83% 18.66% 20.28% 17.57%
Prix ​​de l'instance EC2 C6g ($ par heure) $2.1760 $1.6320 $1.0880 $0.5440 $0.2720
Prix ​​de l'instance EMR C6g ($ par heure) $0.5440 $0.4080 $0.2720 $0.1360 $0.0680
(EC2 + EMR) prix de l'instance ($ par heure) $2.7200 $2.0400 $1.3600 $0.6800 $0.3400
Coût d'exécution sur C6g ($ par instance) $2.09656 $1.55995 $1.19872 $0.96493 $0.82139
Prix ​​de l'instance EC2 C7g ($ par heure) $2.3200 $1.7400 $1.1600 $0.5800 $0.2900
Prix ​​EMR C7g ($ par heure par instance) $0.5800 $0.4350 $0.2900 $0.1450 $0.0725
(EC2 + EMR) Prix de l'instance C7g ($ par heure) $2.9000 $2.1750 $1.4500 $0.7250 $0.3625
Coût d'exécution sur C7g ($ par instance) $1.930290 $1.411500 $1.086990 $0.836140 $0.729990
Réduction des coûts totaux avec C7g, y compris l'amélioration des performances -7.93% -9.52% -9.32% -13.35% -11.13%

Le graphique suivant montre les améliorations par requête observées sur les instances C7g 2xlarge par rapport aux générations C6g équivalentes.

Méthodologie d'analyse comparative

Le benchmark utilisé dans cet article est dérivé du benchmark TPC-DS standard de l'industrie et utilise des requêtes du Dépôt GitHub des tests de performances Spark SQL avec ce qui suit correctifs appliqué.

Nous avons calculé le TCO en multipliant le coût par heure par le nombre d'instances dans le cluster et le temps nécessaire pour exécuter les requêtes sur le cluster. Nous avons utilisé la tarification à la demande dans la région USA Est (Virginie du Nord) pour toutes les instances.

Conclusion

Dans cet article, nous avons décrit comment nous avons estimé le rapport coût-performances de l'utilisation d'Amazon EMR avec des instances C7g par rapport à l'utilisation d'instances équivalentes de la génération précédente. L'utilisation de ces nouvelles instances avec Amazon EMR améliore le rapport coût-performance de 7 à 13 % supplémentaires.


À propos des auteurs

IA SMAl MS est chef de produit pour Amazon EMR chez Amazon Web Services.

Kyeong Hyun Ryoo est ingénieur en développement logiciel pour EMR chez Amazon Web Services. Il travaille principalement sur la conception et la construction d'outils d'automatisation pour les équipes internes et les clients afin de maximiser leur productivité. En dehors du travail, il est un champion du monde à la retraite du jeu professionnel qui aime toujours jouer aux jeux vidéo.

Yuzhou Soleil est ingénieur en développement logiciel pour EMR chez Amazon Web Services.

Steve Kooncé est responsable de l'ingénierie pour EMR chez Amazon Web Services.

Horodatage:

Plus de Big Data AWS