Compartilhar objetos do catálogo das Tabelas do S3 - AWS Glue

Compartilhar objetos do catálogo das Tabelas do S3

Ao usar o controle de acesso do IAM, você pode compartilhar objetos do catálogo das Tabelas do S3 com outros usuários usando links de recursos do AWS Glue para compartilhar a mesma conta. Para o compartilhamento entre contas, você pode compartilhar buckets de tabela do S3 com outra conta da AWS e o perfil do IAM ou o usuário na conta do destinatário pode criar um objeto de catálogo do AWS Glue usando o bucket de tabela compartilhado.

Os links de recursos permitem que você crie referências a bancos de dados do AWS Glue e tabelas no s3tablescatalog que aparecem em seu catálogo padrão do AWS Glue. Isso é útil para organizar o acesso aos dados ou criar agrupamentos lógicos de tabelas.

  1. Abra o console do AWS Glue em https://console.aws.amazon.com/glue/.

  2. No painel de navegação, escolha Catálogos.

  3. Na lista Catálogo, selecione s3tablescatalog.

  4. Selecione a tabela que você deseja compartilhar no s3tablescatalog.

  5. Escolha Ações e, em seguida, escolha Criar link de recurso.

  6. Em Nome do link de recurso, insira um nome para o link de recurso.

  7. Em Banco de dados de destino, selecione o banco de dados em que você deseja criar o link de recurso.

  8. (Opcional) Em Description (Descrição), insira uma descrição.

  9. Escolha Criar.

O link de recurso aparece no banco de dados de destino e aponta para a tabela original em s3tablescatalog.

Crie um link de recurso de banco de dados:

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" } }'

Crie um link de recurso de tabela:

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" } }'