Qu'est-ce qu'Amazon EMR Serverless ? - 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.

Qu'est-ce qu'Amazon EMR Serverless ?

Amazon EMR Serverless est une option de déploiement pour Amazon EMR qui fournit un environnement d'exécution sans serveur. Cela simplifie le fonctionnement des applications d'analyse qui utilisent les derniers frameworks open source, tels qu'Apache Spark et Apache Hive. Avec EMR Serverless, vous n'avez pas besoin de configurer, d'optimiser, de sécuriser ou d'exploiter des clusters pour exécuter des applications avec ces frameworks.

EMRLe mode Serverless vous permet d'éviter le surprovisionnement ou le sous-provisionnement des ressources pour vos tâches de traitement des données. EMRServerless détermine automatiquement les ressources dont l'application a besoin, obtient ces ressources pour traiter vos tâches et libère les ressources une fois les tâches terminées. Pour les cas d'utilisation où les applications ont besoin d'une réponse en quelques secondes, comme l'analyse interactive des données, vous pouvez pré-initialiser les ressources dont l'application a besoin lorsque vous créez l'application.

Avec EMR Serverless, vous continuerez à bénéficier des avantages d'AmazonEMR, tels que la compatibilité open source, la simultanéité et des performances d'exécution optimisées pour les frameworks les plus courants.

EMRServerless convient aux clients qui souhaitent utiliser facilement des applications à l'aide de frameworks open source. Il permet un démarrage rapide des tâches, une gestion automatique des capacités et un contrôle simple des coûts.

Concepts

Dans cette section, nous abordons les termes et concepts du EMR sans serveur qui apparaissent tout au long de notre guide de l'utilisateur EMR sans serveur.

Version de sortie

Une EMR version d'Amazon est un ensemble d'applications open source issues de l'écosystème des mégadonnées. Chaque version inclut différentes applications, composants et fonctionnalités de Big Data que vous sélectionnez pour le déploiement et la configuration de EMR Serverless afin qu'ils puissent exécuter vos applications. Lorsque vous créez une application, vous devez spécifier sa version de publication. Choisissez la EMR version d'Amazon et la version du framework open source que vous souhaitez utiliser dans votre application. Pour en savoir plus sur les versions préliminaires, voirVersions publiées d'Amazon EMR Serverless.

Application

Avec EMR Serverless, vous pouvez créer une ou plusieurs applications EMR Serverless qui utilisent des frameworks d'analyse open source. Pour créer une application, vous devez spécifier les attributs suivants :

  • La EMR version publiée par Amazon pour la version du framework open source que vous souhaitez utiliser. Pour déterminer la version de votre version, voirVersions publiées d'Amazon EMR Serverless.

  • Le runtime spécifique que vous souhaitez que votre application utilise, tel qu'Apache Spark ou Apache Hive.

Après avoir créé une candidature, vous pouvez y soumettre des tâches de traitement des données ou des demandes interactives.

Chaque application EMR sans serveur s'exécute sur un Amazon Virtual Private Cloud (VPC) sécurisé, à l'exception des autres applications. De plus, vous pouvez utiliser AWS Identity and Access Management (IAM) politiques pour définir les utilisateurs et les rôles autorisés à accéder à l'application. Vous pouvez également définir des limites pour contrôler et suivre les coûts d'utilisation engagés par l'application.

Envisagez de créer plusieurs applications lorsque vous devez effectuer les opérations suivantes :

  • Utilisez différents frameworks open source

  • Utilisez différentes versions de frameworks open source pour différents cas d'utilisation

  • Effectuez des tests A/B lors de la mise à niveau d'une version à une autre

  • Maintenir des environnements logiques distincts pour les scénarios de test et de production

  • Fournissez des environnements logiques distincts aux différentes équipes avec des contrôles des coûts et un suivi de l'utilisation indépendants

  • Séparez les différentes line-of-business applications

EMRServerless est un service régional qui simplifie la manière dont les charges de travail s'exécutent dans plusieurs zones de disponibilité d'une région. Pour en savoir plus sur l'utilisation des applications avec EMR Serverless, consultezInteraction avec une application.

Exécution de tâche

Une exécution de tâche est une demande soumise à une application EMR sans serveur que l'application exécute de manière asynchrone et suit jusqu'à son achèvement. Parmi les tâches, citons une requête HiveQL que vous soumettez à une application Apache Hive ou un script de traitement de données que vous soumettez à PySpark une application Apache Spark. Lorsque vous soumettez une tâche, vous devez spécifier un rôle d'exécution, créé dansIAM, que la tâche utilise pour accéder AWS ressources, telles que les objets Amazon S3. Vous pouvez envoyer plusieurs demandes d'exécution de tâche à une application, et chaque exécution de tâche peut utiliser un rôle d'exécution différent pour accéder AWS ressources. Une application EMR sans serveur commence à exécuter des tâches dès qu'elle les reçoit et exécute plusieurs demandes de tâches simultanément. Pour en savoir plus sur la façon dont EMR Serverless exécute les tâches, consultezExécution de tâches.

Workers

Une application EMR sans serveur utilise en interne des travailleurs pour exécuter vos charges de travail. Les tailles par défaut de ces travailleurs sont basées sur votre type d'application et sur la EMR version publiée par Amazon. Lorsque vous planifiez l'exécution d'une tâche, vous pouvez modifier ces tailles.

Lorsque vous soumettez une tâche, EMR Serverless calcule les ressources dont l'application a besoin pour la tâche et planifie les travailleurs. EMRServerless décompose vos charges de travail en tâches, télécharge des images, approvisionne et configure les travailleurs, puis les met hors service une fois le travail terminé. EMRServerless augmente ou diminue automatiquement les effectifs en fonction de la charge de travail et du parallélisme requis à chaque étape du travail. Ce dimensionnement automatique vous évite d'avoir à estimer le nombre de travailleurs dont l'application a besoin pour exécuter vos charges de travail.

Capacité pré-initialisée

EMRServerless fournit une fonctionnalité de capacité pré-initialisée qui permet aux employés de rester initialisés et prêts à répondre en quelques secondes. Cette capacité crée efficacement un bassin de travailleurs chaleureux pour une application. Pour configurer cette fonctionnalité pour chaque application, définissez le initial-capacity paramètre d'une application. Lorsque vous configurez une capacité préinitialisée, les tâches peuvent démarrer immédiatement afin que vous puissiez implémenter des applications itératives et des tâches urgentes. Pour en savoir plus sur les travailleurs préinitialisés, consultez. Configuration d'une application

EMRStudio

EMRStudio est la console utilisateur que vous pouvez utiliser pour gérer vos applications EMR sans serveur. Si aucun EMR studio n'existe dans votre compte lorsque vous créez votre première application EMR Serverless, nous en créons un automatiquement pour vous. Vous pouvez accéder à EMR Studio soit depuis la EMR console Amazon, soit activer l'accès fédéré depuis votre fournisseur d'identité (IdP) IAM via IAM Identity Center. Dans ce cas, les utilisateurs peuvent accéder à Studio et gérer des applications EMR sans serveur sans accès direct à la EMR console Amazon. Pour en savoir plus sur le fonctionnement des applications EMR sans serveur avec EMR Studio, consultez Interaction avec votre application depuis la console EMR Studio etExécution de tâches depuis la console EMR Studio.