Catálogo de datos de AWS Glue
Conéctese a su catálogo de datos de AWS Glue para utilizarlo como objetivo en sus proyectos de Qlik Open Lakehouse.
El uso de AWS Glue Data Catalog como destino proporciona integración con el ecosistema de análisis de AWS y permite a Qlik Open Lakehouse interoperar con un almacén de metadatos centralizado. El catálogo de datos de AWS Glue actúa como capa unificada de metadatos, permitiendo a Qlik escribir tablas Iceberg que pueden ser consultadas inmediatamente por servicios nativos de AWS como Amazon Athena, sin necesidad de configuración adicional. Los datos escritos por Qlik también están disponibles para herramientas de terceros sin replicación.
Requisitos previos
Para crear una conexión con el Catálogo de datos de AWS Glue, necesita:
-
Un depósito de destino de Amazon S3.
-
Si utiliza la autenticación basada en roles para acceder al depósito, necesitará:
-
Permiso de acceso a la integración de red que desea utilizar para la conexión.
-
El ARN del rol.
-
-
Si utiliza la autenticación por clave de acceso para acceder al depósito, necesitará:
-
Su ID de clave de acceso a AWS.
-
Su clave de acceso secreta de AWS.
-
Configuración de las propiedades de conexión del catálogo de datos de AWS Glue
Para configurar la conexión, haga lo siguiente:
-
En Conexiones, haga clic en Crear conexión.
-
Seleccione el Espacio en el que desea crear la conexión o elija Crear nuevo espacio de datos.
-
Seleccione Catálogo de datos de AWS Glue en la lista Nombre del conector o utilice el cuadro Buscar.
-
Haga clic en Crear y configure las propiedades:
-
Región del catálogo: en la lista, seleccione la región para su catálogo.
-
Depósito de destino S3: indique el nombre del depósito.
-
Configure el tipo de autenticación. En la lista, seleccione Autenticación basada en roles o en clave de acceso y complete la siguiente información para su selección:
Basada en roles
-
Integración de red: seleccione la integración de red de la lista.
-
ARN del rol: indique el rol de ARN creado en AWS.
Crear un rol de AWS
Para crear un rol de AWS, haga lo siguiente:
-
En la consola de AWS, vaya a IAM.
-
En Roles, haga clic en Crear rol.
-
En Tipo de entidad de confianza, seleccione Política de confianza personalizada.
-
En Qlik Cloud, en el diálogo Crear un rol de AWS, copie la entidad de confianza, que es la entidad asignada a los clústeres en su integración.Péguelo en la consola de AWS.
-
Haga clic en Roles y seleccione el rol que creó anteriormente.
-
En Políticas de permisos, haga clic en Añadir permisos y seleccione Crear política inline.
-
En Qlik Cloud, en el cuadro de diálogo Crear un rol de AWS, copie la política inline que aparece a continuación y péguela en la consola de AWS, y cambie el valor <bucket_name> por la ubicación de su depósito:
-
En la página Rol, en Resumen, copie el ARN.
-
En Qlik Cloud, cierre el diálogo Crear un rol de AWS y pegue el valor ARN en el rol de ARN.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"glue:CreateTable",
"glue:UpdateTable",
"glue:DeleteTable",
"glue:BatchDeleteTable",
"glue:GetTable",
"glue:GetTables",
"glue:CreateDatabase",
"glue:UpdateDatabase",
"glue:GetDatabase",
"glue:GetDatabases",
"glue:GetUserDefinedFunction"
],
"Resource": [
"arn:aws:glue:us-east-2:*:catalog",
"arn:aws:glue:us-east-2:*:database/*",
"arn:aws:glue:us-east-2:*:table/*/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::<bucket_name>"
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:DeleteObject",
"s3:DeleteObjectVersion",
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": "arn:aws:s3:::<bucket_name>/*"
}
]
}
Clave de acceso
-
Clave de acceso: agregue su identificador único de clave de acceso de AWS que utilizará para la autenticación.
-
Clave secreta: indique su clave de acceso secreta de AWS para utilizarla junto con su clave de acceso.
Definir los permisos de usuario
Para crear una política inline en AWS, haga lo siguiente:
-
En la consola de AWS, vaya a IAM.
-
Vaya a Políticas > Crear política.
-
En Qlik Cloud, en el diálogo Crear un rol de AWS, copie la política.
-
En AWS, en el editor de políticas, pegue la política y cambie el parámetro <bucket_name> por la ubicación de su depósito:
-
Añada la política al usuario que da acceso a Qlik.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"glue:CreateTable",
"glue:UpdateTable",
"glue:DeleteTable",
"glue:BatchDeleteTable",
"glue:GetTable",
"glue:GetTables",
"glue:CreateDatabase",
"glue:UpdateDatabase",
"glue:GetDatabase",
"glue:GetDatabases",
"glue:GetUserDefinedFunction"
],
"Resource": [
"arn:aws:glue:us-east-2:*:catalog",
"arn:aws:glue:us-east-2:*:database/*",
"arn:aws:glue:us-east-2:*:table/*/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::<bucket_name>"
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:DeleteObject",
"s3:DeleteObjectVersion",
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": "arn:aws:s3:::<bucket_name>/*"
}
]
}
En Nombre, indique el nombre que desee mostrar en la conexión.
Tipos de datos que admite
La tabla siguiente muestra los tipos de datos de origen de Iceberg admitidos y su asignación predeterminada a tipos de datos de Qlik Talend Data Integration.
| Tipos de datos Iceberg | Tipos de datos Qlik Talend Data Integration. |
|---|---|
| BOOLEAN | BOOLEAN |
| BYTES | BINARY |
| DATE | DATE |
| TIME | TIME |
| DATETIME | TIMESTAMP |
| INT1 | INT |
| INT2 | INT |
| INT4 | INT |
| INT8 | LONG |
| NUMERIC | DECIMAL(precisión, escala) |
| REAL4 | FLOAT |
| REAL8 | DOUBLE |
| UINT1 | INT |
| UINT2 | LONG |
| UINT4 | LONG |
| UINT8 | DECIMAL(20, 0) |
| STRING | STRING |
| WSTRING | STRING |
| BLOB | BINARY |
| NCLOB | STRING |
| CLOB | STRING |