Caractéristiques et capacités - Amazon EMR

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.

Caractéristiques et capacités

Technologies prises en charge

  • Langages : applications Python et Scala

  • Systèmes de construction : Maven et SBT pour les projets Scala ; requirements.txt, Pipfile et Setuptools pour les projets Python

  • Plateformes cibles : Amazon EMR et EMR Serverless

  • Versions prises en charge : nous prenons en charge les mises à niveau d'Apache Spark de la version 2.4 à la version 3.5. Les mappages de mode de déploiement correspondants sont les suivants :

    • Pour EMR- EC2

      • Version source : EMR 5.20.0 et versions ultérieures

      • Version cible : EMR 7.12.0 et versions antérieures, devraient être plus récentes que EMR 5.20.0

    • Pour EMR Serverless

      • Version source : EMR Serverless 6.6.0 et versions ultérieures

      • Version cible : EMR Serverless 7.12.0 et versions antérieures

Ce que nous améliorons

L'agent de mise à niveau fournit des mises à niveau complètes des applications Spark :

  • Configuration de construction : met automatiquement à jour les fichiers de gestion des dépendances (pom.xml, requirements.txt, etc.)

  • Code source : corrige les problèmes de compatibilité des API et l'utilisation de méthodes obsolètes

  • Code de test : garantit que les tests unitaires et d'intégration fonctionnent avec la version cible de Spark

  • Dépendances : met à niveau les dépendances packagées vers des versions compatibles avec la version EMR cible

  • Validation : compile et valide les applications sur les clusters EMR cibles

  • Analyse de la qualité des données : détecte les différences de schéma, les dérives statistiques au niveau des valeurs (min/max/mean) et les incohérences entre les nombres de lignes agrégés, avec des rapports d'impact détaillés.

Régions disponibles

L'agent de mise à niveau Spark est disponible dans les régions suivantes :

  • Asie-Pacifique : Tokyo (ap-northeast-1), Séoul (ap-northeast-2), Singapour (ap-southeast-1), Sydney (ap-southeast-2) et Mumbai (ap-southeast-1)

  • Amérique du Nord : Canada (ca-central-1)

  • Europe : Stockholm (eu-nord-1), Irlande (eu-west-1), Londres (eu-west-2), Paris (eu-west-3) et Francfort (eu-central-1)

  • Amérique du Sud : São Paulo (sa-east-1)

  • États-Unis : Virginie du Nord (us-east-1), Ohio (us-east-2) et Oregon (us-west-2)

Étendue des mises à niveau et exigences des utilisateurs

  • Gestion des clusters : Spark Upgrade Agent se concentre sur les mises à niveau du code des applications. Les clusters EMR cibles pour les nouvelles versions doivent être créés et gérés par les utilisateurs.

  • Actions de démarrage : l'agent de mise à niveau Spark ne met pas à niveau les scripts de démarrage personnalisés en dehors du code de l'application Spark. Ils doivent être mis à jour par l'utilisateur.

  • Mise à niveau pour la compilation et les tests : l'agent de mise à niveau effectuera la compilation et exécutera vos tests unitaires et d'intégration sur votre environnement de développement localement pour valider que les applications se compilent correctement avec la version cible de Spark. Si vous avez des restrictions (politiques de sécurité, limites de ressources, restrictions réseau ou directives d'entreprise) concernant le code d'application Spark pour une exécution locale, pensez à utiliser Amazon SageMaker Unified Studio VSCode IDE Spaces ou EC2 à exécuter l'agent de mise à niveau. L'agent de mise à niveau utilise votre EC2 cluster EMR cible ou vos applications EMR-S pour valider et mettre à niveau. end-to-end

  • Approche axée sur les erreurs : l'agent de mise à niveau utilise une méthodologie basée sur les erreurs, apportant un correctif à la fois en fonction d'erreurs de compilation ou d'exécution plutôt que de plusieurs correctifs à la fois. Cette approche itérative garantit que chaque problème est correctement traité avant de passer au suivant.

  • Dépendances privées : les dépendances installées à partir de référentiels d'artefacts privés ne peuvent pas être mises à niveau automatiquement dans le cadre de ce processus. Ils doivent être mis à jour par l'utilisateur.

  • Ressources régionales : l'agent de mise à niveau Spark est régional et utilise les ressources EMR sous-jacentes de cette région pour le processus de mise à niveau. Les mises à niveau entre régions ne sont pas prises en charge.