

# Registrar um catálogo de dados de outra conta
<a name="data-sources-glue-cross-account"></a>

Você pode usar o recurso de catálogo do AWS Glue entre contas do Athena para registrar um catálogo do AWS Glue de outra conta sua. Depois de configurar as permissões do IAM necessárias para o AWS Glue e registrar o catálogo como um recurso `DataCatalog` no Athena, você poderá usar o Athena para executar consultas entre contas. Para obter informações sobre como configurar as permissões necessárias, consulte [Configurar o acesso entre contas aos catálogos de dados do AWS Glue](security-iam-cross-account-glue-catalog-access.md).

O procedimento a seguir mostra como usar o Athena para configurar um AWS Glue Data Catalog em uma conta da Amazon Web Services diferente da sua fonte de dados.

## Registrar via console
<a name="data-sources-glue-cross-account-console"></a>

1. Siga as etapas em [Configurar o acesso entre contas aos catálogos de dados do AWS Glue](security-iam-cross-account-glue-catalog-access.md) para garantir que você tenha permissões para consultar o catálogo de dados na outra conta.

1. Abra o console do Athena em [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home).

1. Se o painel de navegação do console não estiver visível, escolha o menu de expansão à esquerda.  
![Escolha o menu de expansão.](http://docs.aws.amazon.com/pt_br/athena/latest/ug/images/nav-pane-expansion.png)

1. Escolha **Fontes de dados e catálogos**.

1. No canto superior direito do console, escolha **Create data source** (Criar fonte de dados).

1. Na página **Choose a data source** (Escolher uma fonte de dados), para **Data sources** (Fontes de dados), escolha **S3 - AWS Glue Data Catalog** e escolha **Next** (Próximo).

1. Na página **Enter data source details** (Inserir os detalhes da fonte de dados), na seção **AWS Glue Data Catalog**, para **Choose an AWS Glue Data Catalog** (Escolher um AWS Glue Data Catalog), escolha **AWS Glue Data Catalog in another account** (AWS Glue Data Catalog em outra conta).

1. Em **Data source details** (Detalhes da origemdos dados), forneça as seguintes informações:
   + **Data source name** (Nome da origem dos dados): insira o nome que você deseja usar em suas consultas SQL para fazer referência ao catálogo de dados na outra conta.
   + **Description** (Descrição): insira uma descrição do catálogo de dados na outra conta (opcional).
   + **Catalog ID** (ID do catálogo): insira o ID de 12 dígitos da conta da Amazon Web Services à qual o catálogo de dados pertence. O ID da conta da Amazon Web Services é o ID do catálogo.

1. (Opcional) Para **Tags**, adicione pares de chave-valor que você queira associar com a origem dos dados. Para obter mais informações sobre tags, consulte [Marcar recursos do Athena com tags](tags.md).

1. Escolha **Próximo**.

1. Na página **Review and create** (Revisar e criar), analise as informações fornecidas e selecione **Create data source** (Criar fonte de dados). A página **Data source details** (Detalhes da fonte de dados) lista os bancos de dados e etiquetas do catálogo de dados que você registrou.

1. Escolha **Fontes de dados e catálogos**. O catálogo de dados que você registrou está listado na coluna **Data source name** (Nome da fonte de dados).

1. Para visualizar ou editar as informações do catálogo de dados, escolha o catálogo e selecione **Actions** (Ações), **Edit** (Editar).

1. Para excluir o novo catálogo de dados, escolha o catálogo e selecione **Actions** (Ações) **Delete** (Excluir).

## Registrar usando operações da API
<a name="data-sources-glue-cross-account-api"></a>

1. O corpo da seguinte solicitação `CreateDataCatalog` registra um catálogo do AWS Glue para acesso entre contas:

   ```
   # Example CreateDataCatalog request to register a cross-account Glue catalog:
   {
       "Description": "{{Cross-account Glue catalog}}",
       "Name": "{{ownerCatalog}}",
       "Parameters": {"catalog-id" : "{{<catalogid>}}"  # Owner's account ID
       },
       "Type": "GLUE"
   }
   ```

1. O código de exemplo a seguir usa um cliente Java para criar o objeto `DataCatalog`.

   ```
   # Sample code to create the DataCatalog through Java client
   CreateDataCatalogRequest request = new CreateDataCatalogRequest()
       .withName("{{ownerCatalog}}")
       .withType(DataCatalogType.GLUE)
       .withParameters(ImmutableMap.of("catalog-id", "{{<catalogid>}}"));
   
   athenaClient.createDataCatalog(request);
   ```

   Após essas etapas, o mutuário deverá ver {{`ownerCatalog`}} ao chamar a operação de API [ListDataCatalogs](https://docs.aws.amazon.com/athena/latest/APIReference/API_ListDataCatalogs.html).

## Registrar via AWS CLI
<a name="data-sources-glue-cross-account-cli"></a>

Use o seguinte exemplo de comando da CLI para registrar um AWS Glue Data Catalog de outra conta

```
aws athena create-data-catalog \
  --name cross_account_catalog \
  --type GLUE \
  --description "{{Cross Account Catalog}}" \
  --parameters catalog-id={{<catalogid>}}
```

Para saber mais, consulte [Consultar entre contas AWS Glue Data Catalog usando o Amazon Athena](https://aws.amazon.com/blogs/big-data/query-cross-account-aws-glue-data-catalogs-using-amazon-athena/) no *AWS Blog Big Data*.