Passer au contenu

Comment surveiller et optimiser les coûts sur AWS Glue pour Apache Spark ?

Lecture de 4 minute(s)
0

Je souhaite surveiller mon utilisation de Spark avec AWS Glue et optimiser les coûts.

Résolution

Utilisation du moniteur

Pour obtenir un résumé du coût d'utilisation de Spark dans vos tâches AWS Glue, utilisez l’Explorateur de coûts AWS.

Procédez comme suit :

  1. Ouvrez la console Facturation et gestion des coûts AWS.
  2. Dans le volet de navigation, sélectionnez Explorateur de coûts.
  3. Sur le tableau de bord Coût, consultez les coûts mensuels d'AWS Glue.

Afficher l'utilisation par détail de tâche

Pour surveiller les détails d'une tâche AWS Glue, tels que son statut d'exécution, sa durée d'exécution ou l'utilisation de l'unité de traitement des données (DPU), procédez comme suit :

  1. Ouvrez la console AWS Glue.
  2. Sous Tâches ETL, choisissez Surveillance de l’exécution de la tâche.

Afficher le coût par type de tâche

Pour connaître les coûts d'un type spécifique de tâche AWS Glue, procédez comme suit :

  1. Ouvrez la console Facturation et gestion des coûts AWS.
  2. Dans Analyse des coûts et de l'utilisation, choisissez Explorateur de coûts.
  3. Sous Paramètres du rapport, dans la section Filtres, pour Service, choisissez Glue.
  4. Dans Type d'utilisation, sélectionnez le filtre correspondant à votre tâche et incluez votre région AWS :
    Pour une tâche standard, utilisez le filtre ETL-DPU-Heure. Par exemple, pour la région Ouest des États-Unis (Oregon), appliquez USW2-ETL-DPU-Heure.
    Pour une tâche flexible, utilisez le filtre ETL-Flex-DPU-Heure. Par exemple, appliquez USW2-ETL-Flex-DPU-Heure.
    Pour une session interactive, utilisez le paramètre GlueInteractiveSession-DPU-Heure. Par exemple, appliquez USW2-GlueInteractiveSession-DPU-Heure.

Obtenir l'utilisation et le coût d'une tâche spécifique

Pour connaître le coût d'une tâche AWS Glue spécifique, procédez comme suit :

  1. Ouvrez la console AWS Glue.
  2. Sous Tâches ETL, choisissez Surveillance de l’exécution de la tâche.
  3. Trouvez les heures DPU que vous avez utilisées pour la tâche.
  4. Sur la page Tarification d’AWS Glue, dans l'onglet Tâches ETL et sessions interactives, sélectionnez votre région.
  5. Notez le coût de chaque DPU-HEURE pour votre type de tâche.
  6. Pour calculer le coût, multipliez vos heures DPU par le coût de chaque DPU-HEURE.

Pour obtenir des métriques sur les tâches AWS Glue concernant l'utilisation de la mémoire ou du processeur ou le trafic de données, configurez une alarme CloudWatch.

Pour recevoir des notifications concernant votre tâche AWS Glue, consultez la section Comment puis-je recevoir des notifications Amazon SNS lorsque l'état de ma tâche AWS Glue change ?

Optimiser le code

Pour optimiser les coûts liés à l'utilisation de Spark dans les tâches AWS Glue, prenez les mesures suivantes :

  • Réglez la tâche AWS Glue pour réduire la durée d'exécution de la tâche et le nombre d’environnements de travail requis.
  • Définissez le type d'exécution de tâches AWS Glue comme Flex pour les tâches AWS Glue non critiques.
  • Activez Auto Scaling pour votre tâche AWS Glue.
  • Créez un profil d'utilisation d'AWS Glue pour restreindre les types d’environnements de travail, limiter le nombre maximum d’environnements de travail et limiter la durée d'exécution d'une tâche.
  • Définissez un délai d'expiration AWS Glue approprié pour votre API Tâches afin que la tâche ne s'exécute pas plus longtemps que le temps d'exécution prévu.
  • Utilisez un type d’environnement de travail et un nombre d’environnements de travail appropriés.
  • Pour tester et développer dans un environnement local, utilisez une image Docker. AWS Glue Docker utilise des ressources informatiques locales au lieu des services cloud AWS Glue.
  • Utilisez la fonctionnalité Signet de tâche AWS Glue pour traiter les données de manière incrémentielle.
  • Utilisez les métriques CloudWatch pour identifier la capacité DPU optimale et ajustez-la selon les besoins.
  • Arrêtez ou supprimez des sessions interactives lorsque vous ne les utilisez pas. Utilisez la magie Jupyter %stop_session, ou choisissez Arrêter la session sur la page Session interactive de la console AWS Glue. Vous pouvez également utiliser Arrêter le notebook pour mettre fin à la session.
    Remarque : La session reste active, même si vous fermez l'onglet du navigateur.

Informations connexes

Surveiller et optimiser les coûts sur AWS Glue pour Apache Spark

AWS OFFICIELA mis à jour il y a un an