Esta página descreve como carregar dados de uma instância do Amazon Redshift para oGoogle Cloud com o Cloud Data Fusion. O conector de origem do Redshift permite sincronizar tabelas do seu conjunto de dados do Redshift com o destino, como o BigQuery. O conector também permite criar uma consulta SQL configurável.
Antes de começar
- As versões 6.9.0 e mais recentes do Cloud Data Fusion são compatíveis com a origem do Redshift.
Ao configurar o conector de origem do Redshift, você pode selecionar uma conexão atual e reutilizável ou criar uma nova conexão única. Para mais informações, consulte Gerenciar conexões. Ao reutilizar uma conexão, observe o seguinte:
- Não é necessário fornecer credenciais.
- A conexão atual fornece as informações de esquema e nome da tabela usadas para gerar a consulta de importação.
Configurar o plug-in
Acesse a interface da Web do Cloud Data Fusion e clique em Studio.
Verifique se a opção Pipeline de dados – lote está selecionada (não Tempo real).
No menu Origem, clique em Redshift. O nó do Redshift aparece no seu pipeline. Se a origem do Redshift não aparecer na página Studio, implante o conector de origem do Redshift no Hub do Cloud Data Fusion.
Para configurar a origem, acesse o nó do Redshift e clique em Propriedades.
Insira as seguintes propriedades. Para uma lista completa, consulte Propriedades.
- Insira um rótulo para o nó do Redshift, por exemplo,
Redshift tables
. Insira os detalhes da conexão. É possível configurar uma nova conexão única ou uma conexão existente e reutilizável.
Nova conexão
Para adicionar uma conexão única ao Redshift, siga estas etapas:
- Mantenha a opção Usar conexão desativada.
- No campo Nome do driver JDBC, insira o nome do driver. O Redshift oferece suporte a dois tipos de drivers JDBC: CData e Amazon. Para mais informações, consulte Fazer upload de um driver JDBC.
- No campo Host, insira o endpoint do cluster do Redshift, por exemplo,
cdf-redshift-new.example-endpoint.eu-west-1.redshift.amazonaws.com
. - Opcional: no campo Port, insira um número de porta do banco de dados,
por exemplo,
5439
. Se o banco de dados do Redshift exigir autenticação, faça o seguinte:
- No campo Nome de usuário, insira o nome do banco de dados.
- No campo Senha, insira a senha do banco de dados.
- Opcional: no campo Argumentos, insira argumentos de valor de chave. Para usar o driver CData, forneça os argumentos de conexão, como RTK ou OEMKey, se aplicável.
- No campo Nome, insira um nome, por exemplo,
SN-PC-Source-01-01-2024
. - Insira o nome do banco de dados de destino no campo Database,
por exemplo,
datafusiondb
.
Conexão reutilizável
Para reutilizar uma conexão existente, siga estas etapas:
- Ative a opção Usar conexão.
- Clique em Procurar conexões.
Clique no nome da conexão.
Opcional: se uma conexão não existir e você quiser criar uma nova conexão reutilizável, clique em Adicionar conexão e consulte as etapas na guia Nova conexão desta página.
No campo Import query, insira uma consulta usando os nomes do esquema e da tabela da sua origem do Redshift, por exemplo,
Select * from "public"."users"
.Opcional: insira propriedades Avançadas, como uma consulta de limite ou o número de divisões. Para todas as descrições de propriedade, consulte Propriedades.
- Insira um rótulo para o nó do Redshift, por exemplo,
Opcional: clique em Validar e corrija os erros encontrados.
Clique em
Fechar. As propriedades são salvas, e você pode continuar criando seu pipeline de dados na interface da Web do Cloud Data Fusion.
Propriedades
Propriedade | Suporte a macros para automação | Propriedade obrigatória | Descrição |
---|---|---|---|
Rótulo | Não | Sim | O nome do nó no pipeline de dados. |
Usar conexão | Não | Não | Procure uma conexão com a fonte. Se a opção Usar conexão estiver ativada, não será necessário fornecer credenciais. |
Conexão | Sim | Sim | Nome da conexão a ser usada. Se a opção Usar conexão estiver selecionada, esse campo vai aparecer. As informações do banco de dados e da tabela são fornecidas pela conexão. |
Nome do driver JDBC | Sim | Sim | Nome do driver JDBC a ser usado. Se a opção Usar conexão não estiver selecionada, esse campo vai aparecer. |
Host | Sim | Sim | O endpoint do cluster do Amazon Redshift. Se a opção Usar conexão não estiver selecionada, esse campo vai aparecer. |
Port | Sim | Não | Porta em que o Redshift está sendo executado. Se a opção Usar conexão não estiver selecionada, esse campo vai aparecer. |
Nome de usuário | Sim | Não | Identidade do usuário para se conectar ao banco de dados especificado. Se a opção Usar conexão não estiver selecionada, esse campo vai aparecer. |
Senha | Sim | Não | Senha a ser usada para se conectar ao banco de dados especificado. Se a opção Usar conexão não estiver selecionada, esse campo vai aparecer. |
Argumentos de conexão | Sim | Não | Uma lista de pares de chave-valor de string arbitrários como argumentos de conexão. Esses argumentos são transmitidos para o driver JDBC como argumentos de conexão para drivers JDBC que podem precisar de configurações adicionais. Se a opção Usar conexão não estiver selecionada, esse campo vai aparecer. |
Nome de referência | Não | Sim | Identifica exclusivamente essa origem para definir linhagem, anotação de metadados e outros serviços. |
banco de dados | Sim | Sim | Nome do banco de dados do Redshift. Para selecionar dados, clique em Procurar banco de dados. |
Importar consulta | Sim | Sim | A consulta SELECT a ser usada para importar dados da tabela especificada. |
Consulta delimitadora | Sim | Não | Consulta SQL que retorna os valores mínimo e máximo do campo
splitBy . Por exemplo,
SELECT MIN(id),MAX(id) FROM table . Não é necessário se
numSplits estiver definido como um. |
Dividir coluna | Sim | Não | Nome do campo usado para gerar divisões. Não é necessário se
numSplits estiver definido como um. |
Número de divisões | Sim | Não | Número de divisões a serem geradas. |
Tamanho | Sim | Não | O número de linhas a serem extraídas por divisão. Um tamanho de busca maior
pode resultar em uma importação mais rápida, com a compensação de maior uso
de memória. Se não for especificado, o padrão será 1000 . |
Mapeamentos de tipo de dados
A tabela a seguir é uma lista de tipos de dados do Redshift com os tipos CDAP correspondentes:
Tipo de dados do Redshift | Tipo de dados do esquema CDAP |
---|---|
bigint |
long |
boolean |
boolean |
character |
string |
character varying |
string |
date |
date |
double precision |
double |
geometry |
bytes |
hllsketch |
string |
integer |
int |
json |
string |
numeric (precisão,
escala)/decimal (precisão, escala) |
decimal |
numeric com precisão 0 |
string |
real |
float |
smallint |
int |
super |
string |
text |
string |
time [ (p) ] sem fuso horário |
time |
time [ (p) ] com fuso horário |
string |
timestamp [ (p) ] sem fuso horário |
timestamp |
timestamp [ (p) ] com fuso horário |
timestamp |
varbyte |
byte |
xml |
string |
Práticas recomendadas
As práticas recomendadas a seguir se aplicam quando você se conecta a um cluster do Redshift do Google Cloud.
Usar listas de permissões de endereços IP
Para impedir o acesso de fontes não autorizadas e restringir o acesso a endereços IP específicos, ative os controles de acesso no cluster do Redshift.
Se você usa controles de acesso do Redshift, siga estas etapas para acessar o cluster no Cloud Data Fusion:
- Encontre os endereços IP externos dos serviços ou máquinas no Google Cloud que precisam se conectar ao cluster do Redshift, como o IP do servidor proxy (consulte Como conferir endereços IP). Para clusters do Dataproc, obtenha os endereços IP de todos os nós mestre e filhos.
Adicione os endereços IP a uma lista de permissões nos grupos de segurança criando as regras de entrada para os endereços IP da máquina Google Cloud .
Adicione e teste as propriedades de conexão no Wrangler:
- Abra a instância do Cloud Data Fusion na interface da Web.
- Clique em Wrangler > Adicionar conexão e crie a nova conexão para o Redshift.
- Insira todas as propriedades de conexão.
- Clique em Testar conexão e resolva os problemas.
Para criar várias divisões, use consultas de limite
Para várias divisões, use consultas de limite para gerenciar o cluster de vários nós. Em situações em que você extrai dados do Redshift e distribui a carga uniformemente em cada nó, configure uma consulta de limite nas propriedades do conector de origem do Redshift.
- No pipeline do Cloud Data Fusion na página Studio, acesse o nó do Redshift e clique em Properties.
Nas propriedades Avançado, especifique o seguinte:
- Insira o número de divisões a serem criadas.
- Insira o tamanho de busca de cada divisão.
- Insira uma consulta de limite para aplicar ao cluster do Redshift com vários nós.
- Insira o nome do campo Coluna dividida.
Por exemplo, suponha que você tenha o seguinte caso de uso:
- Você tem uma tabela com 10 milhões de registros.
- Ela tem uma coluna de ID exclusiva chamada
id
. - O cluster do Redshift tem quatro nós.
Objetivo: para aproveitar o potencial do cluster, você planeja gerar várias divisões. Para isso, use as seguintes configurações de propriedade:
No campo Consulta de limite, insira a seguinte consulta:
SELECT MIN(id), MAX(id) FROM tableName
Nesta consulta,
id
é o nome da coluna em que as divisões são aplicadas.No campo Coluna dividida, insira o nome da coluna,
id
.Insira o número de divisões e o tamanho de busca. Essas propriedades são interligadas, permitindo calcular divisões com base em um tamanho de busca ou vice-versa. Neste exemplo, insira o seguinte.
No campo Número de divisões, digite
40
. Neste exemplo, em que a tabela tem dez milhões de registros, a criação de 40 divisões resulta em cada divisão contendo 250.000 registros.No campo Tamanho da busca, digite
250,000
.
A seguir
- Confira os plug-ins do Cloud Data Fusion.