Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Requisitos previos para configurar una integración sin ETL

Modo de enfoque
Requisitos previos para configurar una integración sin ETL - AWS Glue

La configuración de una integración entre el origen y el destino requiere algunos requisitos previos, como la configuración de los roles de IAM, que AWS Glue utiliza para acceder a los datos del origen y escribir en el destino, y el uso de claves KMS para cifrar los datos en la ubicación intermedia o de destino.

Configuración de los recursos de origen

Realice en el origen las siguientes tareas de configuración según sea necesario.

Configuración del rol de origen

En esta sección se describe cómo se transfiere un rol de origen para permitir que la integración sin ETL acceda a la conexión. Esto también se aplica solo a los orígenes de SaaS.

nota

Para restringir el acceso a unas pocas conexiones, primero puede crear la conexión para obtener el ARN de conexión. Consulte Configuración de un origen para una integración sin ETL.

Cree un rol que tenga permisos para que la integración acceda a la conexión:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GlueConnections", "Effect": "Allow", "Action": [ "glue:GetConnections", "glue:GetConnection" ], "Resource": [ "arn:aws:glue:*:<accountId>:catalog", "arn:aws:glue:us-east-1:<accountId>:connection/*" ] }, { "Sid": "GlueActionBasedPermissions", "Effect": "Allow", "Action": [ // Fetch entities: "glue:ListEntities", // Refresh connection credentials: "glue:RefreshOAuth2Tokens" ], "Resource": [ "*" ] } ] }

Política de confianza:

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

Configuración de los recursos de destino

Realice las siguientes tareas de configuración según sea necesario para el destino de integración del almacenamiento de datos de Data Catalog de AWS Glue o Amazon Redshift.

Para integraciones con un destino de base de datos de AWS Glue:

En el caso de las integraciones con un objetivo de almacenamiento de datos de Amazon Redshift:

Configuración de una base de datos de AWS Glue

Para las integraciones que utilizan una base de datos de AWS Glue:

Para configurar una base de datos de destino en el catálogo de datos de AWS Glue con una ubicación de Amazon S3:

  1. En la página de inicio de la consola de AWS Glue, seleccione Base de datos en el catálogo de datos.

  2. Seleccione Añadir base de datos en la parte superior derecha. Si ya ha creado una base de datos, asegúrese de que la ubicación con el URI de Amazon S3 esté configurada para la base de datos.

  3. Introduzca un nombre y una ubicación (URI de S3). Tenga en cuenta que la ubicación es necesaria para la integración sin ETL. Haga clic en Crear base de datos cuando haya terminado.

    nota

    El bucket de Amazon S3 debe estar en la misma región que la base de datos de AWS Glue.

Para obtener información sobre cómo crear una nueva base de datos en AWS Glue, consulte Introducción al catálogo de datos de AWS Glue.

También puede usar la CLI de create-database para crear la base de datos en AWS Glue. Tenga en cuenta que es obligatorio incluir LocationUri en --database-input.

Optimización de las tablas de Iceberg

Una vez AWS Glue cree una tabla en la base de datos de destino, puede habilitar la compactación para acelerar las consultas en Amazon Athena. Para obtener información sobre cómo configurar los recursos (rol de IAM) para la compactación, consulte los requisitos previos de optimización de la tabla.

Para obtener más información sobre cómo configurar la compactación en la tabla de AWS Glue que creó la integración, consulte Optimización de las tablas de Iceberg.

Cómo proporcionar una política de acceso basado en recursos (RBAC) al catálogo

En el caso de las integraciones que utilizan una base de datos de AWS Glue, añada los siguientes permisos a la política de RBAC del catálogo para permitir las integraciones entre el origen y el destino.

nota

Para las integraciones entre cuentas, tanto la política de roles de Alice (el usuario que crea la integración) como la política de recursos del catálogo deben permitir glue:CreateInboundIntegration en el recurso. En el caso de que sean las mismas cuentas, basta con una política de recursos o una política de roles que permita glue:CreateInboundIntegration en el recurso. Aun así, es necesario que ambos escenarios permitan glue.amazonaws.com en glue:AuthorizeInboundIntegration.

Puede acceder a la configuración del catálogo en Catálogo de datos. A continuación, proporcione los siguientes permisos y rellene la información que falta.

{ "Version": "2012-10-17", "Statement": [ { // Allow Alice to create Integration on Target Database "Principal": { "AWS": [ "arn:aws:iam::<source-account-id>:user/Alice" ] }, "Effect": "Allow", "Action": [ "glue:CreateInboundIntegration" ], "Resource": [ "arn:aws:glue:<region>:<Target-Account-Id>:catalog", "arn:aws:glue:<region>:<Target-Account-Id>:database/DatabaseName" ], "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:dynamodb:<region>:<Account>:table/<table-name>" } } }, { // Allow Glue to Authorize the Inbound Integration on behalf of Bob "Principal": { "Service": [ "glue.amazonaws.com" ] }, "Effect": "Allow", "Action": [ "glue:AuthorizeInboundIntegration" ], "Resource": [ "arn:aws:glue:<region>:<Target-Account-Id>:catalog", "arn:aws:glue:<region>:<Target-Account-Id>:database/DatabaseName" ], "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:dynamodb:<region>:<account-id>:table/<table-name>" } } } ] }

Creación de un rol de IAM de destino

Cree un rol de IAM de destino con los siguientes permisos y relaciones de confianza:

{ "Version": "2012-10-17", "Statement": [ { "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::<target iceberg table s3 bucket>", "Effect": "Allow" }, { "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject" ], "Resource": "arn:aws:s3:::<target iceberg table s3 bucket>/prefix/*", "Effect": "Allow" }, { "Action": [ "glue:GetDatabase" ], "Resource": [ "arn:aws:glue:<region>:<account-id>:catalog", "arn:aws:glue:<region>:<account-id>:database/DatabaseName" ], "Effect": "Allow" }, { "Action": [ "glue:CreateTable", "glue:GetTable", "glue:UpdateTable", "glue:GetTableVersion", "glue:GetTableVersions", "glue:GetResourcePolicy" ], "Resource": [ "arn:aws:glue:<region>:<account-id>:catalog", "arn:aws:glue:<region>:<account-id>:database/<DatabaseName>", "arn:aws:glue:<region>:<account-id>:table/<DatabaseName>/*" ], "Effect": "Allow" }, { "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*", "Condition": { "StringEquals": { "cloudwatch:namespace": "AWS/Glue/ZeroETL" } }, "Effect": "Allow" }, { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "*", "Effect": "Allow" } ] }

Agregue la siguiente política de confianza para permitir que el servicio AWS Glue asuma el rol:

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

Creación de un almacenamiento de datos de Amazon Redshift

Si su destino de integración sin ETL es un almacenamiento de datos de Amazon Redshift, cree el almacenamiento de datos si aún no tiene uno. Para crear un grupo de trabajo de Amazon Redshift sin servidor, consulte Creación de un grupo de trabajo con un espacio de nombres. Para crear un clúster de Amazon Redshift, consulte Creación de un clúster.

Para que la integración funcione, el clúster o el grupo de trabajo de Amazon Redshift de destino debe tener el parámetro enable_case_sensitive_identifier activado. Para obtener más información sobre cómo habilitar la distinción entre mayúsculas y minúsculas, consulte Turn on case sensitivity for your data warehouse en la Guía de administración de Amazon Redshift.

Una vez completada la configuración del grupo de trabajo o clúster de Amazon Redshift, debe configurar el almacenamiento de datos. Para obtener más información, consulte Introducción a las integraciones sin ETL en la Guía de administración de Amazon Redshift.

Configuración de una VPC en su integración sin ETL

Para configurar una VPC en su integración sin ETL:

  1. Vaya a VPC > Sus VPC y seleccione Crear VPC.

    1. Seleccione VPC y más.

    2. Establezca el nombre de la VPC.

    3. Configure el CIDR de IPv4: 10.0.0.0/16.

    4. Establezca el número de AZ en 1.

    5. Establezca el número de subredes públicas y privadas en 1.

    6. Establezca las puertas de enlace NAT en Ninguna.

    7. Establezca los puntos de conexión de VPC en Puerta de enlace de S3.

    8. Habilite los nombres de host DNS y la resolución de DNS.

  2. Vaya a Puntos de conexión y elija Crear punto de conexión.

  3. Cree puntos de conexión para estos servicios en la subred privada de su VPC (utilice el grupo de seguridad predeterminado):

    1. com.amazonaws.us-east-1.lambda

    2. com.amazonaws.us-east-1.glue

    3. com.amazonaws.us-east-1.sts

Creación de la conexión de AWS Glue

  1. Vaya a AWS Glue > Conexiones de datos y seleccione Crear conexión.

  2. Elija Red.

  3. Seleccione la VPC, la subred (privada) y el grupo de seguridad predeterminado que creó.

Configuración del rol de destino para la VPC

El rol de destino debe tener los siguientes permisos (además del resto de permisos que requieren las integraciones sin ETL):

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CustomerVpc", "Effect": "Allow", "Action": [ "ec2:CreateTags", "ec2:DeleteTags", "ec2:DescribeRouteTables", "ec2:DescribeVpcEndpoints", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface", "glue:GetConnection" ], "Resource": [ "*" ] } ] }

Configuración de las propiedades de los recursos del tramo de destino

Si utiliza la CLI, establezca las propiedades de recursos del tramo de destino en la base de datos de AWS Glue de destino que creó. Pase el ARN del rol de destino, así como el nombre de la conexión de AWS Glue.

aws glue create-integration-resource-property \ --resource-arn arn:aws:glue:us-east-1:<account-id>:database/exampletarget \ --target-processing-properties '{"RoleArn" : "arn:aws:iam::<account-id>:role/example-role", "ConnectionName":"example-vpc-3"}' \ --endpoint-url https://example.amazonaws.com --region us-east-1

Posibles errores de cliente

A continuación, se muestra una serie de posibles errores de cliente para una integración que se haya configurado con una VPC.

Mensaje de error Acción requerida
El rol proporcionado no está autorizado para ejecutar glue:GetConnection en la conexión. Agregue este permiso a la política de roles y, a continuación, espere a que se recupere la integración. Actualización de la política de roles
El rol proporcionado no tiene permiso para ejecutar ec2:DescribeSubnets. Agregue este permiso a la política de roles y, a continuación, espere a que se recupere la integración. Actualización de la política de roles
El rol proporcionado no está autorizado para ejecutar ec2:DescribeSecurityGroups. Agregue este permiso a la política de roles y, a continuación, espere a que se recupere la integración. Actualización de la política de roles
El rol proporcionado no está autorizado para ejecutar ec2:DescribeVpcEndpoints. Agregue este permiso a la política de roles y, a continuación, espere a que se recupere la integración. Actualización de la política de roles
El rol proporcionado no está autorizado para ejecutar ec2:DescribeRouteTables. Agregue este permiso a la política de roles y, a continuación, espere a que se recupere la integración. Actualización de la política de roles
El rol proporcionado no está autorizado para ejecutar ec2:CreateTags. Agregue este permiso a la política de roles y, a continuación, espere a que se recupere la integración. Actualización de la política de roles
El rol proporcionado no está autorizado para ejecutar ec2:CreateNetworkInterface. Agregue este permiso a la política de roles y, a continuación, espere a que se recupere la integración. Actualización de la política de roles
La subred de conexión proporcionada no contiene un punto de conexión S3 o una puerta de enlace NAT válidos. Actualice la subred y, a continuación, espere a que se recupere la integración. Actualización de los puntos de conexión de la subred de la VPC
No se encontró la subred de conexión. Actualice la subred de la conexión y, a continuación, espere a que se recupere la integración. Actualice la conexión de &GLU;
No se encontró el grupo de seguridad de conexión. Actualice el grupo de seguridad de la conexión y, a continuación, espere a que se recupere la integración. Actualice la conexión de &GLU;
No se puede conectar a S3 a través de la conexión de VPC proporcionada. Actualice las configuraciones de la subred y, a continuación, espere a que se recupere la integración. Actualización de los puntos de conexión de la subred de la VPC
No se puede conectar a Lambda a través de la conexión de VPC proporcionada. Actualice las configuraciones de la subred y, a continuación, espere a que se recupere la integración. Actualización de los puntos de conexión de la subred de la VPC

Configuración de una integración sin ETL entre cuentas

Para configurar una integración sin ETL entre cuentas:

  1. Configure una política de recursos de destino, tal como se describe en Cómo proporcionar una política de acceso basado en recursos (RBAC) al catálogo. Asegúrese de que el rol de la cuenta de origen esté explícitamente permitido en el recurso de destino.

  2. Compruebe que el rol de la cuenta de origen (el rol que se utiliza para crear la integración) tenga lo siguiente:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt123456789012", "Action": [ "glue:CreateInboundIntegration" ], "Effect": "Allow", "Resource": [ "arn:aws:glue:<region>:<target-account-id>:catalog", "arn:aws:glue:<region>:<target-account-id>:database/DatabaseName" ] }] }
  3. Cree la integración, tal y como se describe en Creación de una integración.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.