Esta página descreve como carregar dados de uma instância do Amazon Redshift no Google 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
- O Cloud Data Fusion versão 6.9.0 e mais recentes têm suporte à 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 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 nome da tabela e do esquema usado para gerar a consulta de importação.
Configurar o plug-in
Acessar a interface da Web do Cloud Data Fusion e clique em Studio.
Verifique se Pipeline de dados - Lote está selecionado (não Tempo real).
No menu Origem, clique em Redshift. O nó do Redshift aparece 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. Você pode configurar uma nova conexão única, ou uma conexão atual 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 Faça upload de um driver JDBC.
- No campo Host, insira o endpoint do Redshift
cluster, por exemplo,
cdf-redshift-new.example-endpoint.eu-west-1.redshift.amazonaws.com
- Opcional: no campo Porta, insira uma porta do banco de dados
número, 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 no seu 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, digite 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, 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 um delimitador 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 resolva 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 | Oferece 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 origem. Se Usar conexão está ativado, não é necessário fornecer credenciais. |
Conexão | Sim | Sim | Nome da conexão a ser usada. Se Usar conexão for selecionado, esse campo será exibido. 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 Usar conexão não estiver selecionada, este campo será exibido. |
Host | Sim | Sim | O endpoint do cluster do Amazon Redshift. Se Usar conexão não estiver selecionada, este campo será exibido. |
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 passados para o driver JDBC como conexão argumentos 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 no banco de dados. |
Importar consulta | Sim | Sim | A consulta SELECT a ser usada para importar dados do
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. Tamanhos de busca maiores
podem resultar em 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 o CDAP correspondente tipos:
Tipo de dados do Redshift | Tipo de dados do esquema do CDAP |
---|---|
bigint |
long |
boolean |
boolean |
character |
string |
character varying |
string |
date |
date |
double precision |
double |
geometry |
bytes |
hllsketch |
string |
integer |
int |
json |
string |
numeric (precision,
scale)/decimal (precision, scale) |
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 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:
- Obtenha 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 visualizar endereços IP). Para clusters do Dataproc, acesse os endereços IP de todos os nós mestres 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 do 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 todos 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 da busca para cada divisão.
- Insira uma consulta delimitadora para aplicar ao cluster do Redshift de vários nós.
- Digite o nome do campo Dividir coluna.
Por exemplo, suponha que você tenha o seguinte caso de uso:
- Uma tabela contém 10 milhões de registros.
- Ela tem uma coluna de ID exclusivo 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 a seguinte propriedade de configuração:
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 Dividir coluna, insira o nome da coluna,
id
.Insira o número de divisões e o tamanho de busca. Essas propriedades são interconectadas, o que permite calcular divisões com base no tamanho da busca, ou vice-versa. Para este exemplo, digite o seguinte:
No campo Número de divisões, insira
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, insira
250,000
.
A seguir
- Confira os plug-ins do Cloud Data Fusion.