

# Conectar ao Amazon Redshift no AWS Glue Studio
<a name="connecting-to-data-redshift"></a>

**nota**  
 Você pode usar o AWS Glue para Spark para ler e gravar tabelas nos Amazon Redshift bancos de dados do AWS Glue Studio. Para configurar Amazon Redshift com AWS Glue trabalhos de forma programática, consulte [Conexões do Redshift](aws-glue-programming-etl-connect-redshift-home.md). 

 O AWS Glue fornece suporte integrado para o Amazon Redshift. O AWS Glue Studio fornece uma interface visual para se conectar ao Amazon Redshift, criar trabalhos de integração de dados e executá-los no runtime do AWS Glue Studio Spark sem servidor. 

**Topics**
+ [Criar uma conexão do Amazon Redshift](creating-redshift-connection.md)
+ [Criar um nó de origem do Amazon Redshift](creating-redshift-source-node.md)
+ [Criar um nó de destino do Amazon Redshift](creating-redshift-target-node.md)
+ [Opções avançadas](creating-redshift-connection-advanced-options.md)

# Criar uma conexão do Amazon Redshift
<a name="creating-redshift-connection"></a>

## Permissões necessárias
<a name="creating-redshift-connection-permissions"></a>

 São necessárias permissões adicionais para usar clusters do Amazon Redshift clusters e ambientes sem servidor do Amazon Redshift. Para obter mais informações sobre como adicionar permissões a trabalhos de ETL, consulte [Review IAM permissions needed for ETL jobs](https://docs.aws.amazon.com/glue/latest/ug/setting-up.html#getting-started-min-privs-job). 
+  redshift:DescribeClusters 
+  redshift-serverless:ListWorkgroups 
+  redshift-serverless:ListNamespaces 

## Visão geral
<a name="w2aac25c27c13c11b5"></a>

 Ao adicionar uma conexão do Amazon Redshift, você pode escolher uma do Amazon Redshift existente ou criar uma nova conexão ao adicionar um nó **Fonte de dados - Redshift** no AWS Glue Studio. 

 O AWS Glue oferece suporte a clusters do Amazon Redshift e ambientes sem servidor do Amazon Redshift. Quando você cria uma conexão, os ambientes sem servidor do Amazon Redshift exibem o rótulo **serverless** ao lado da opção de conexão. 

 Para obter mais informações sobre como criar uma conexão do Amazon Redshift, consulte [ Moving data to and from Amazon Redshift](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-redshift.html#aws-glue-programming-etl-redshift-using). 

# Criar um nó de origem do Amazon Redshift
<a name="creating-redshift-source-node"></a>

## Permissões necessárias
<a name="creating-redshift-source-node-permissions"></a>

 Trabalhos do AWS Glue Studio usando fontes de dados do Amazon Redshift exigem permissões adicionais. Para obter mais informações sobre como adicionar permissões a trabalhos de ETL, consulte [Review IAM permissions needed for ETL jobs](https://docs.aws.amazon.com/glue/latest/ug/setting-up.html#getting-started-min-privs-job). 

 As seguintes permissões são necessárias para usar uma conexão com Amazon Redshift. 
+  redshift-data:ListSchemas 
+  redshift-data:ListTables 
+  redshift-data:DescribeTable 
+  redshift-data:ExecuteStatement 
+  redshift-data:DescribeStatement 
+  redshift-data:GetStatementResult 

## Adicionar de uma fonte de dados do Amazon Redshift
<a name="creating-redshift-source-node-add"></a>

**Para adicionar um nó **fonte de dados - Amazon Redshift**:**

1.  Escolha o tipo de acesso ao Amazon Redshift: 
   +  Conexão direta de dados (recomendada): escolha essa opção se quiser acessar seus dados do Amazon Redshift diretamente. Essa é a opção recomendada e também a padrão. 
   +  Data Catalog tables: escolha essa opção se você tiver tabelas do catálogo de dados que deseja usar. 

1.  Se você escolher Conexão de dados direta, escolha a conexão para sua fonte de dados do Amazon Redshift. Isso pressupõe que a conexão já exista e que você possa selecionar entre as conexões existentes. Se precisar criar uma conexão, escolha **Criar conexão com o Redshift**. Para obter mais informações, consulte [Visão geral do uso de conectores e conexões](https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html#using-connectors-overview). 

    Depois de escolher uma conexão, você pode visualizar as propriedades da conexão clicando em **Exibir propriedades**. As informações sobre a conexão estão visíveis, incluindo URL, grupos de segurança, sub-rede, zona de disponibilidade, descrição e timestamps de criação (UTC) e última atualização (UTC). 

1.  Escolha uma opção de origem do Amazon Redshift: 
   +  **Escolher uma única tabela**: essa é a tabela que contém os dados que você deseja acessar de uma única tabela do Amazon Redshift. 
   +  **Inserir consulta personalizada**: permite que você acesse um conjunto de dados de várias tabelas do Amazon Redshift com base na sua consulta personalizada. 

1.  Se você escolheu uma única tabela, escolha o esquema do Amazon Redshift. A lista de esquemas disponíveis para escolha é determinada pela tabela selecionada. 

    Ou escolha **Inserir consulta personalizada**. Escolha essa opção para acessar um conjunto de dados personalizado de várias tabelas do Amazon Redshift. Ao escolher essa opção, insira a consulta do Amazon Redshift. 

    Ao se conectar a um ambiente Amazon Redshift sem servidor, adicione a seguinte permissão à consulta personalizada: 

   ```
               GRANT SELECT ON ALL TABLES IN <schema> TO PUBLIC
   ```

    Você pode escolher **Inferir esquema** para ler o esquema com base na consulta que você inseriu. Você também pode escolher **Abrir editor de consultas do Redshift** para inserir uma consulta do Amazon Redshift. Para obter mais informações, acesse [Consultar um banco de dados usando o editor de consultas](https://docs.aws.amazon.com/redshift/latest/mgmt/query-editor.html). 

1.  Em **Desempenho e segurança**, escolha o diretório de teste do Amazon S3 e o perfil do IAM. 
   +  **Diretório de teste do Amazon S3**: escolha o local do Amazon S3 para armazenar temporariamente os dados do teste. 
   +  **Perfil do IAM**: escolha o perfil do IAM que pode gravar no local do Amazon S3 que você selecionou. 

1.  Em **Parâmetros personalizados do Redshift - opcional**, insira o parâmetro e o valor. 

# Criar um nó de destino do Amazon Redshift
<a name="creating-redshift-target-node"></a>

## Permissões necessárias
<a name="creating-redshift-target-node-permissions"></a>

 Trabalhos do AWS Glue Studio usando destino de dados do Amazon Redshift exigem permissões adicionais. Para obter mais informações sobre como adicionar permissões a trabalhos de ETL, consulte [Review IAM permissions needed for ETL jobs](https://docs.aws.amazon.com/glue/latest/ug/setting-up.html#getting-started-min-privs-job). 

 As seguintes permissões são necessárias para usar uma conexão com Amazon Redshift. 
+  redshift-data:ListSchemas 
+  redshift-data:ListTables 

## Adicionar um nó de destino do Amazon Redshift
<a name="w2aac25c27c13c15b5"></a>

**Para criar um nó de destino do Amazon Redshift:**

1.  Escolha uma tabela existente do Amazon Redshift como destino ou insira um novo nome de tabela. 

1.  Ao usar o nó de destino **Destino de dados: Redshift**, você pode escolher entre as seguintes opções: 
   +  **APPEND**: se uma tabela já existir, despejar todos os novos dados na tabela como uma inserção. Se a tabela não existir, criar e inserir todos os novos dados. 

      Além disso, marque a caixa se quiser atualizar (UPSERT) os registros existentes na tabela de destino. A tabela deve existir primeiro, caso contrário, a operação falhará. 
   +  **MERGE**: o AWS Glue atualizará ou anexará dados à sua tabela de destino com base nas condições que você especificar. 
**nota**  
 Para usar a ação de mesclagem no AWS Glue, você deve habilitar a funcionalidade de mesclagem do Amazon Redshift. Para obter instruções sobre como habilitar a mesclagem para sua instância do Amazon Redshift, consulte [MERGE (pré-visualização)](https://docs.aws.amazon.com/redshift/latest/dg/r_MERGE.html). 

      Escolha as opções: 
     + **Escolher chaves e ações simples**: escolha as colunas a serem usadas como chaves de correspondência entre os dados de origem e seu conjunto de dados de destino. 

       Especifique as seguintes opções quando correspondidas:
       + Atualizar o registro em seu conjunto de dados de destino com os dados da fonte.
       + Excluir o registro em seu conjunto de dados de destino.

       Especifique as seguintes opções quando não correspondidas:
       + Inserir os dados de origem como uma nova linha em seu conjunto de dados de destino.
       + Não executar nenhuma ação.
     + **Inserir declaração MERGE personalizada**: você pode então escolher **Validar declaração de Merge** para verificar se a declaração é válida ou inválida.
   +  **TRUNCATE**: se uma tabela já existir, truncar os dados da tabela limpando primeiro o conteúdo da tabela de destino. Se o truncamento for bem-sucedido, inserir todos os dados. Se a tabela não existir, criar a tabela e inserir todos os novos dados. Se o truncamento não tiver sucesso, a operação falhará. 
   +  **DROP**: se uma tabela já existir, excluir os metadados e os dados da tabela. Se a exclusão for bem-sucedida, inserir todos os dados. Se a tabela não existir, criar a tabela e inserir todos os novos dados. Se o drop não tiver sucesso, a operação falhará. 
   +  **CREATE**: Criar uma nova tabela com o nome padrão. Se o nome da tabela já existir, criar uma nova tabela com um aposto do nome de `job_datetime` para fins de exclusividade. Isso inserirá todos os dados na nova tabela. Se a tabela existir, o nome final da tabela terá o aposto anexado. Se a tabela não existir, uma tabela será criada. Em ambos os casos, uma nova tabela será criada. 

# Opções avançadas
<a name="creating-redshift-connection-advanced-options"></a>

 Consulte [Using the Amazon Redshift Spark connector AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-redshift.html#aws-glue-programming-etl-redshift-using). 