View a markdown version of this page

Stratégies pour optimiser les performances professionnelles de Spark -

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Stratégies pour optimiser les performances professionnelles de Spark

Lors de la préparation du réglage des paramètres, tenez compte des bonnes pratiques suivantes :

  • Déterminez vos objectifs de performance avant de commencer à identifier les problèmes.

  • Utilisez des métriques pour identifier les problèmes avant de tenter de modifier les paramètres de réglage.

Pour obtenir des résultats plus cohérents lors du réglage d'une tâche, élaborez une stratégie de base pour votre travail de réglage.

Stratégie de base pour le réglage des performances

En général, le réglage des performances est effectué dans le flux de travail suivant :

  1. Déterminez les objectifs de performance.

  2. Mesurez les métriques.

  3. Identifiez les goulots d’étranglement.

  4. Réduisez l’impact des goulots d’étranglement.

  5. Répétez les étapes 2 à 4 jusqu’à ce que vous atteigniez l’objectif prévu.

Tout d'abord, déterminez vos objectifs de performance. Par exemple, l'un de vos objectifs peut être de terminer l'exécution d'une AWS Glue tâche en 3 heures. Après avoir défini vos objectifs, mesurez les indicateurs de performance au travail. Identifiez les tendances en matière de métriques et les goulots d'étranglement pour atteindre les objectifs. En particulier, l'identification des goulots d'étranglement est essentielle pour le dépannage, le débogage et le réglage des performances. Pendant l'exécution d'une application Spark, Spark enregistre le statut et les statistiques de chaque tâche dans le journal des événements Spark.

Dans AWS Glue, vous pouvez consulter les métriques de Spark via l'interface utilisateur Web de Spark fournie par le serveur d'historique Spark. AWS Glue pour les tâches Spark, vous pouvez envoyer les journaux d'événements Spark à un emplacement que vous spécifiez dans Amazon S3. AWS Glue fournit également un exemple de AWS CloudFormation modèle et de Dockerfile pour démarrer le serveur d'historique Spark sur une instance Amazon EC2 ou sur votre ordinateur local, afin que vous puissiez utiliser l'interface utilisateur de Spark avec les journaux d'événements.

Une fois que vous avez défini vos objectifs de performance et identifié les indicateurs permettant d'évaluer ces objectifs, vous pouvez commencer à identifier et à corriger les obstacles en utilisant les stratégies décrites dans les sections suivantes.

Pratiques d'optimisation pour les performances professionnelles de Spark

Vous pouvez utiliser les stratégies suivantes pour optimiser les performances AWS Glue des tâches Spark :

Avant d'utiliser ces stratégies, vous devez avoir accès aux métriques et à la configuration de votre tâche Spark. Vous trouverez ces informations dans la AWS Glue documentation.

Du point de vue AWS Glue des ressources, vous pouvez améliorer les performances en ajoutant AWS Glue des collaborateurs et en utilisant la dernière AWS Glue version.

Du point de vue de l'application Apache Spark, vous avez accès à plusieurs stratégies susceptibles d'améliorer les performances. Si des données inutiles sont chargées dans le cluster Spark, vous pouvez les supprimer pour réduire la quantité de données chargées. Si vous avez sous-utilisé les ressources du cluster Spark et que vous disposez de peu de données I/O, vous pouvez identifier les tâches à paralléliser. Vous souhaiterez peut-être également optimiser les opérations de transfert de données lourdes, telles que les jointures, si elles prennent beaucoup de temps. Vous pouvez également optimiser votre plan de requêtes d'emploi ou réduire la complexité informatique des tâches Spark individuelles.

Pour appliquer efficacement ces stratégies, vous devez déterminer quand elles sont applicables en consultant vos indicateurs. Pour plus de détails, consultez chacune des sections suivantes. Ces techniques permettent non seulement d'optimiser les performances, mais également de résoudre des problèmes courants tels que les erreurs de mémoire insuffisante (OOM).