Requisitos previos para generar estadísticas de columnas - AWS Glue

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Requisitos previos para generar estadísticas de columnas

Para generar o actualizar las estadísticas de las columnas, la tarea de generación de estadísticas adopta un rol de AWS Identity and Access Management (IAM) en su nombre. Según los permisos concedidos al rol, la tarea de generación de estadísticas de columnas puede leer los datos del almacén de datos de Amazon S3.

nota

Para generar estadísticas para las tablas administradas por Lake Formation, el rol de IAM utilizado para generar estadísticas requiere acceso total a las tablas.

Al configurar la tarea de generación de estadísticas de la columna, AWS Glue le permite crear un rol que incluye la política administrada por AWS AWSGlueServiceRole, más la política insertada necesaria para el origen de datos especificado. También puede crear un rol y adjuntar los permisos que se indican en la política siguiente y agregarlo a la tarea de generación de estadísticas de la columna.

Para crear un rol de IAM para generar estadísticas de columnas
  1. Para crear un rol de IAM;, consulte Crear un rol de IAM para AWS Glue.

  2. Para actualizar un rol existente, en la consola de IAM, vaya al rol de IAM que está utilizando el proceso de generación de estadísticas de columnas.

  3. En la sección Agregar permisos, elija Asociar políticas. En la ventana del navegador que se acaba de abrir, elija la política administrada AWSGlueServiceRole AWS.

  4. También debe incluir los permisos de lectura de los datos de la ubicación de datos de Amazon S3.

    En la sección Agregar permisos, elija Crear política. En la ventana del navegador que se acaba de abrir, cree una nueva política para utilizarla con su rol.

  5. En la página Crear política, elija la pestaña JSON. Copie el siguiente código JSON en el campo del editor de política.

    nota

    En las políticas a continuación, reemplace la ID de cuenta con una Cuenta de AWS válida, region con la Región de la tabla y bucket-name con el nombre del bucket de Amazon S3.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "S3BucketAccess", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetObject" ], "Resource": [ "arn:aws:s3:::<bucket-name>/*", "arn:aws:s3:::<bucket-name>" ] } ] }
  6. (Opcional) Si utiliza los permisos de Lake Formation para acceder a sus datos, el rol de IAM requiere permisos lakeformation:GetDataAccess.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationDataAccess", "Effect": "Allow", "Action": "lakeformation:GetDataAccess", "Resource": [ "*" ] } ] }

    Si la ubicación de datos de Amazon S3 está registrada en Lake Formation y el rol de IAM que asume la tarea de generación de estadísticas de columnas no tiene permisos de grupos IAM_ALLOWED_PRINCIPALS concedidos en la tabla, el rol requiere los permisos de Lake Formation ALTER y DESCRIBE en la tabla. El rol utilizado para registrar el bucket de Amazon S3 requiere los permisos de Lake Formation INSERT y DELETE en la tabla.

    Si la ubicación de datos de Amazon S3 no está registrada en Lake Formation y el rol de IAM no tiene permisos de grupo IAM_ALLOWED_PRINCIPALS otorgados en la tabla, el rol requiere los permisos de Lake Formation ALTER, DESCRIBE, INSERT y DELETE en la tabla.

  7. (Opcional) La tarea de generación de estadísticas de columnas que escribe Amazon CloudWatch Logs cifrado necesita los siguientes permisos en la política de claves.

    { "Version": "2012-10-17", "Statement": [{ "Sid": "CWLogsKmsPermissions", "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:AssociateKmsKey" ], "Resource": [ "arn:aws:logs:<region>:111122223333:log-group:/aws-glue:*" ] }, { "Sid": "KmsPermissions", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt", "kms:Encrypt" ], "Resource": [ "arn:aws:kms:<region>:111122223333:key/"arn of key used for ETL cloudwatch encryption" ], "Condition": { "StringEquals": { "kms:ViaService": ["glue.<region>.amazonaws.com"] } } } ] }
  8. El rol que utilice para ejecutar las estadística de columnas debe contener el permiso iam:PassRole en el rol.

    { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::111122223333:role/<columnstats-role-name>" ] }] }
  9. Al crear un rol de IAM para generar estadísticas de columnas, el rol también debe tener la siguiente política de confianza que permita al servicio asumirlo.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "TrustPolicy", "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": "sts:AssumeRole", } ] }