Exemplos de comandos programáticos para cadernos do EMR - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Exemplos de comandos programáticos para cadernos do EMR

Visão geral

Você pode executar Cadernos do EMR com APIs de execução usando um script ou a linha de comando. Ao iniciar, interromper, listar e descrever as execuções do Caderno do EMR de forma externa ao console da AWS, você poderá controlar programaticamente um Caderno do EMR. É possível transferir valores de parâmetros diferentes para um caderno com uma célula de caderno parametrizada. Isto elimina a necessidade de criar uma cópia do caderno para cada novo conjunto de valores de parâmetros. Para obter mais informações, consulte Amazon EMR API actions.

Você pode programar ou agrupar execuções de Cadernos do EMR com os eventos do Amazon CloudWatch e o AWS Lambda. Para obter mais informações, consulte Uso do AWS Lambda com o Amazon CloudWatch Events.

nota

Os cadernos do EMR estão disponíveis como Workspaces do EMR Studio no console. O botão Criar Workspace no console permite criar cadernos. Para acessar ou criar Workspaces, os usuários dos Cadernos do EMR precisam de permissões adicionais de perfil do IAM. Para obter mais informações, consulte Amazon EMR Notebooks are Amazon EMR Studio Workspaces in the console e console do Amazon EMR.

Permissões de perfil para a execução programática

Para usar a execução programática com os Cadernos do EMR, você deve configurar as permissões de usuário com as seguintes políticas:

{ "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" } ] }

Ao executar Cadernos do EMR programaticamente em um cluster de Cadernos do EMR, você deve adicionar estas permissões adicionais:

{ "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" ] } ] }

Limitações da execução programática

  • Há suporte para, no máximo, cem execuções simultâneas por Região da AWS e por conta.

  • Uma execução será encerrada se for executada por mais de 30 dias.

  • A execução programática de cadernos não é compatível com as aplicações interativas do Amazon EMR Serverless.

Exemplos de execução programática para Cadernos do EMR

As seguintes seções fornecem diversos exemplos de execução programática para Cadernos do EMR com a AWS CLI, o SDK para Python (Boto3) e o Ruby:

Você também pode executar cadernos parametrizados como parte dos fluxos de trabalho programados com uma ferramenta de orquestração, como o Apache Airflow ou o Amazon Managed Workflows for Apache Airflow (MWAA). Para obter mais informações, consulte Orchestrating analytics jobs on EMR Notebooks using MWAA no blog de Big Data da AWS.