

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Criação de um catálogo gerenciado do Amazon Redshift no AWS Glue Data Catalog
<a name="create-rms-catalog"></a>

 Talvez você não tenha um cluster produtor do Amazon Redshift ou uma unidade de compartilhamento de dados do Amazon Redshift disponível atualmente, mas queira criar e gerenciar tabelas do Amazon Redshift usando o AWS Glue Data Catalog. Você pode começar criando um catálogo AWS Glue gerenciado usando a `glue:CreateCatalog` API ou o AWS Lake Formation console definindo o tipo de catálogo como `Managed` e `Catalog source` como **Redshift**. Essa etapa faz o seguinte:
+ Cria um catálogo no Data Catalog
+ Registra o catálogo como um local de dados do Lake Formation.
+ cria um grupo de trabalho gerenciado do Amazon Redshift sem servidor
+ Vincula o grupo de trabalho do Amazon Redshift sem servidor e o Data Catalog usando um objeto de unidade de compartilhamento de dados.

**Como criar um catálogo gerenciado e configurar permissões (console)**

1. Abra o console do Lake Formation em [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

1. No painel de navegação, escolha **Catálogos**, em **Data Catalog**.

1. Selecione a opção **Criar catálogo**. 

1. Na página de detalhes **Definir catálogo**, insira as seguintes informações: 
   + **Nome**: um nome exclusivo para seu catálogo gerenciado. O nome não pode ser alterado e deve estar em letras minúsculas. O nome pode ter no máximo 255 caracteres. 
   + **Tipo**: escolha `Managed catalog` como o tipo de catálogo.
   + **Armazenamento**: escolha `Redshift` para armazenamento.
   + **Descrição**: insira uma descrição para o catálogo criado por meio da fonte de dados.

1. Você pode usar aplicações Apache Spark em execução no Amazon EMR no Amazon EC2 para acessar os bancos de dados Amazon Redshift no AWS Glue Data Catalog.

   Para permitir que o Apache Spark leia e grave no armazenamento gerenciado do Amazon Redshift, o AWS Glue cria um cluster gerenciado do Amazon Redshift com os recursos computacionais e de armazenamento necessários para realizar operações de leitura e gravação sem prejudicar as workloads do data warehouse do Amazon Redshift. Também é preciso fornecer um perfil do IAM com as permissões necessárias para transferir dados de e para o bucket do Amazon S3. Para conhecer as permissões necessárias para o perfil de transferência de dados, consulte a etapa 5 na seção [Pré-requisitos para gerenciar namespaces do Amazon Redshift no AWS Glue Data Catalog](redshift-ns-prereqs.md). 

1. Por padrão, os dados no cluster do Amazon Redshift são criptografados usando uma chave AWS gerenciada. O Lake Formation oferece uma opção para criar sua chave do KMS personalizada para criptografia. Se você estiver usando uma chave gerenciada pelo cliente, deverá adicionar políticas de chave específicas à chave. 

1.  Escolha Personalizar configurações de criptografia se você estiver usando uma chave gerenciada pelo cliente para criptografar os dados no armazenamento gerenciado do Amazon Redshift. Para usar uma chave personalizada, você deve adicionar outra política de chave gerenciada personalizada à sua chave do KMS. Para obter mais informações, consulte [Pré-requisitos para gerenciar namespaces do Amazon Redshift no AWS Glue Data Catalog](redshift-ns-prereqs.md).

1. **Opções de criptografia**: escolha a opção **Personalizar configurações de criptografia** se quiser usar uma chave personalizada para criptografar o catálogo. Para usar uma chave personalizada, você deve adicionar outra política de chave gerenciada personalizada à sua chave do KMS. 

1. Escolha **Próximo** para conceder permissões a outras entidades principais. 

1. Na página **Conceder permissões**, escolha **Adicionar permissões**.

1.  Na tela **Adicionar permissões**, escolha as entidades principais e os tipos de permissões a serem concedidas.   
![A página de permissões do catálogo com o tipo de entidade principal e as opções de concessão.](http://docs.aws.amazon.com/pt_br/lake-formation/latest/dg/images/catalog-permissions.png)
   +  Na seção **Entidades principais**, escolha um tipo de entidade principal e, em seguida, especifique as entidades principais para conceder permissões. 
     + **Usuários e perfis do IAM**: escolha um ou mais usuários ou perfis na lista de usuários e perfis do IAM.
     + **Usuários e grupos do SAML** — Para SAML e Amazon Quick usuários e grupos, insira um ou mais nomes de recursos da Amazon (ARNs) para usuários ou grupos federados por meio do SAML ou para usuários ou grupos do ARNs Amazon Quick. Pressione **Enter** após cada ARN.

       Para obter informações sobre como construir o ARNs, consulte os AWS CLI comandos AWS CLI grant e revoke. 
   +  Na seção **Permissões**, selecione permissões e permissões concedidas.

     Em **Permissões do catálogo**, selecione uma ou mais permissões a serem concedidas.

     Escolha **Superusuário** para conceder permissões administrativas irrestritas em todos os recursos do catálogo.

      Em **Permissões concedidas, selecione as permissões** que o beneficiário do subsídio pode conceder a outros diretores em sua conta. AWS Essa opção não é compatível quando você está concedendo permissões a uma entidade principal do IAM a partir de uma conta externa. 

1. Escolha **Próximo** para revisar as informações e criar o catálogo. A lista **Catálogos** mostra o novo catálogo gerenciado.

**Como criar um catálogo federado (CLI)**
+  O exemplo a seguir mostra como criar um catálogo federado. 

  ```
  aws glue create-catalog --cli-input-json file://input.json
  
  {
      "Name": {{"CatalogName"}}, 
      "CatalogInput": {
        "Description": {{"Redshift published Catalog"}},
        "CreateDatabaseDefaultPermissions" : [],
        "CreateTableDefaultPermissions": [],
        "CatalogProperties": {
          "DataLakeAccessProperties" : {
            "DataLakeAccess" : "true",
            "DataTransferRole" : {{"DTR arn"}},
            "KMSKey": {{"kms key arn"}},  // Optional
            "CatalogType": "aws:redshift"
          }  
        }
      }
  }
  ```

  Resposta get-catalog do Glue 

  ```
  aws glue get-catalog \
    --catalog-id {{account-id}}:{{catalog-name}} \
    --region {{us-east-1}}
  
  Response:
  {
      "Catalog": {
          "Name": "CatalogName", 
          "Description": "Glue Catalog for Redshift z-etl use case",
          "CreateDatabaseDefaultPermissions" : [],
          "CreateTableDefaultPermissions": [],
           "CatalogProperties": {
            "DataLakeAccessProperties" : {
              "DataLakeAccess": "true",
              "DataTransferRole": "DTR arn",
              "KMSKey": "kms key arn",
              "ManagedWorkgroupName": "MWG name",
              "ManagedWorkgroupStatus": "MWG status",
              "RedshiftDatabaseName": "RS db name",
              "NamespaceArn": "namespace key arn",
              "CatalogType": "aws:redshift"
           }
         }
      }
  ```