View a markdown version of this page

Cómo compartir objetos del catálogo de Tablas de S3 - AWS Glue

Cómo compartir objetos del catálogo de Tablas de S3

Al utilizar el control de acceso de IAM, puede compartir objetos del catálogo de Tablas de S3 con otros usuarios mediante enlaces de recursos de AWS Glue para compartir dentro de la misma cuenta. Para el uso compartido entre cuentas, puede compartir buckets de tablas de S3 con otra cuenta de AWS, y el rol o usuario de IAM en la cuenta receptora puede crear un objeto de catálogo de AWS Glue por medio del bucket de tabla compartido.

Los enlaces de recursos permiten crear referencias a bases de datos y tablas de AWS Glue en s3tablescatalog que aparecen en el catálogo predeterminado de AWS Glue. Esto resulta útil para organizar el acceso a los datos o crear agrupaciones lógicas de tablas.

  1. Abra la consola de AWS Glue en https://console.aws.amazon.com/glue/.

  2. En el panel de navegación, seleccione Catálogos.

  3. En la lista Catálogos, seleccione s3tablescatalog.

  4. Seleccione la tabla que desea compartir desde s3tablescatalog.

  5. Seleccione Acciones y luego Crear enlace de recurso.

  6. En Nombre del enlace de recurso, ingrese un nombre para el enlace de recurso.

  7. En Base de datos de destino, seleccione la base de datos donde desea crear el enlace de recurso.

  8. (Opcional) En Description (Descripción), introduzca una descripción.

  9. Seleccione Crear.

El enlace de recurso aparece en la base de datos de destino y apunta a la tabla original en s3tablescatalog.

Crear un enlace de recurso de base de datos:

aws glue create-database \ --database-name "my-database-resource-link" \ --database-input '{ "Name": "sales_data_link", "TargetDatabase": { "CatalogId": "account-id:s3tablescatalog/analytics-bucket", "DatabaseName": "sales" } }'

Crear un enlace de recurso de tabla:

aws glue create-table \ --table-name "my-table-resource-link" \ --table-input '{ "Name": "sales_data_link", "TargetTable": { "CatalogId": "account-id:s3tablescatalog/analytics-bucket", "DatabaseName": "sales", "Name": "transactions" } }'