Exemples de commandes programmatiques pour les notebooks EMR - 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.

Exemples de commandes programmatiques pour les notebooks EMR

Présentation

Vous pouvez exécuter des blocs-notes EMR à APIs partir d'un script ou d'une ligne de commande. Lorsque vous démarrez, arrêtez, listez et décrivez des exécutions de blocs-notes EMR en dehors de la AWS console, vous pouvez contrôler un bloc-notes EMR par programme. Vous pouvez transmettre différentes valeurs de paramètres à un bloc-notes avec une cellule de bloc-notes paramétrée. Il n'est donc plus nécessaire de créer une copie du bloc-notes pour chaque nouvel ensemble de valeurs de paramètres. Pour plus d'informations, consultez la rubrique Actions de l'API Amazon EMR.

Vous pouvez planifier ou regrouper les exécutions de blocs-notes EMR avec Amazon CloudWatch Events et. AWS Lambda Pour plus d'informations, consultez Utilisation AWS Lambda avec Amazon CloudWatch Events.

Note

Les notebooks EMR sont disponibles sous forme d'espaces de travail EMR Studio dans la console. Le bouton Créer un espace de travail de la console vous permet de créer de nouveaux blocs-notes. Pour accéder aux Workspaces ou en créer, les utilisateurs EMR Notebooks doivent disposer d'autorisations de rôle IAM supplémentaires. Pour plus d'informations, consultez Amazon EMR Notebooks are Amazon EMR Studio Workspaces dans la console et Amazon EMR.

Autorisations de rôle pour l'exécution par programmation

Pour utiliser l'exécution par programmation avec les blocs-notes EMR, vous devez configurer les autorisations des utilisateurs avec les politiques suivantes :

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowExecutionActions", "Effect": "Allow", "Action": [ "elasticmapreduce:StartNotebookExecution", "elasticmapreduce:DescribeNotebookExecution", "elasticmapreduce:ListNotebookExecutions" ], "Resource": "*" }, { "Sid": "AllowPassingServiceRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::account-id:role/EMR_Notebooks_DefaultRole" } ] }

Lorsque vous exécutez par programmation des blocs-notes EMR sur un cluster de blocs-notes EMR, vous devez ajouter ces autorisations supplémentaires :

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRetrievingManagedEndpointCredentials", "Effect": "Allow", "Action": [ "emr-containers:GetManagedEndpointSessionCredentials" ], "Resource": [ "arn:aws:emr-containers:region:account-id:/virtualclusters/virtual-cluster-id/endpoints/managed-endpoint-id" ], "Condition": { "StringEquals": { "emr-containers:ExecutionRoleArn": [ "arn:aws:iam::account-id:role/emr-on-eks-execution-role" ] } } }, { "Sid": "AllowDescribingManagedEndpoint", "Effect": "Allow", "Action": [ "emr-containers:DescribeManagedEndpoint" ], "Resource": [ "arn:aws:emr-containers:region:account-id:/virtualclusters/virtual-cluster-id/endpoints/managed-endpoint-id" ] } ] }

Limites de l'exécution par programmation

  • Un maximum de 100 exécutions simultanées sont prises en charge Région AWS par compte.

  • Une exécution est terminée si elle dure plus de 30 jours.

  • L'exécution par programmation des blocs-notes n'est pas prise en charge par les applications interactives Amazon EMR sans serveur.

Exemples d'exécution par programmation d'un bloc-notes EMR

Les sections suivantes fournissent plusieurs exemples d'exécution programmatique d'un bloc-notes EMR avec AWS CLI le SDK Boto3 (Python) et Ruby :

Vous pouvez également exécuter des blocs-notes paramétrés dans le cadre de flux de travail planifiés à l'aide d'un outil d'orchestration tel qu'Apache Airflow ou Amazon Managed Workflows for Apache Airflow (MWAA). Pour plus d'informations, consultez la rubrique Orchestration des tâches d'analyse sur les blocs-notes EMR à l'aide de MWAA sur le blog AWS Big Data.