Snowflake
Você pode usar o Snowflake como uma plataforma de dados de destino em um pipeline de dados ou em uma tarefa de replicação. Em um pipeline de dados, várias operações ELT podem ser executadas na plataforma de destino, incluindo armazenamento de dados, transformação de dados, criação de data marts e registro de dados. Uma tarefa de replicação, por outro lado, envolve a replicação de dados diretamente de um sistema de origem para um sistema de destino com capacidades básicas de transformação, mas sem suporte para operações ELT.
A configuração do Snowflake como um destino envolve:
- Configurando o Permissões necessárias no banco de dados.
- Instalando o driver necessário. Observe que isso só será necessário se você estiver se conectando ao Snowflake via Data Movement gateway.
- Configurando uma conexão com o Snowflake
Configurando propriedades de conexão
Para configurar o conector, faça o seguinte:
-
Em Conexões, clique em Criar conexão.
-
Selecione o conector de destino do Snowflake e forneça as seguintes configurações:
Gateway Data Movement
Gateway de dados
O Data Movement gateway apenas será necessário se o banco de dados de destino não estiver acessível a partir do Qlik Cloud e somente pode ser acessado através de um link privado (por exemplo, se estiver localizado em uma nuvem privada virtual). Se esse for o caso, selecione o Data Movement gateway através do qual você deseja acessar o banco de dados de destino.
Dependendo do seu caso de uso, será o mesmo Data Movement gateway implementado para mover dados da fonte de dados ou de uma fonte diferente.
Para obter informações sobre casos de uso do Data Movement gateway, consulte Quando o Data Movement gateway é necessário? e Casos de uso comuns.
Se o banco de dados de destino estiver acessível diretamente no Qlik Cloud, selecione Nenhum.
Propriedades da conexão
-
Servidor: sua URL para acessar o Snowflake. Por exemplo, myaccount.snowflakecomputing.com.
-
Porta: a porta pela qual você deseja acessar seu banco de dados Snowflake. O padrão é 443.
Autenticação
Há diferentes maneiras de autenticar uma conexão:
-
Nome de usuário e senha
-
Par de chaves
Seu banco de dados Snowflake deve ser configurado para usar a autenticação de par de chaves. O processo está descrito na documentação do Snowflake:
Nota informativaSe você usar o Data Movement gateway, será necessária a versão 2024.5.14 ou superior para usar a autenticação de par de chaves.
Propriedades da conta
Nome de usuário e senha
Nome de usuário e Senha: o nome de usuário e a senha de um usuário autorizado a acessar o banco de dados Snowflake.
Par de chaves
Propriedade da conta | Descrição |
---|---|
Usuário | Usuário no Snowflake |
Arquivo de chave privada | Clique em Procurar para selecionar o arquivo de chave privada. |
Senha do arquivo de chave privada | A senha para descriptografar sua chave privada, se ela estiver criptografada. |
Propriedades do banco de dados
- Warehouse padrão: O nome do seu warehouse do Snowflake. Você pode substituir isso nas configurações do seu projeto.
-
Nome do banco de dados: há dois métodos que você pode usar para especificar um banco de dados:
-
Método 1 - Selecionar em uma lista: Clique em Carregar bancos de dados e selecione um banco de dados.
- Método 2 - Manualmente: Selecione Inserir nome do banco de dados manualmente e insira o nome do banco de dados.
-
Propriedades internas
Propriedades internas são para casos de uso especiais e, portanto, não são expostas na caixa de diálogo. Você só deve usá-las se instruído pelo Suporte da Qlik.
Use os botões e à direita dos campos para adicionar ou remover propriedades conforme necessário.
Nome
O nome de exibição da conexão.
Pré-requisitos
Permissões necessárias
As seguintes permissões são necessárias:
Permissões necessárias se você quiser esquemas que não existem sejam criados automaticamente
- USAGE ON DATABASE
- CREATE SCHEMA ON DATABASE
Permissões necessárias se o esquema já existir
- USAGE ON DATABASE
- USAGE ON SCHEMA
- CREATE FILE FORMAT ON SCHEMA
- CREATE STAGE ON SCHEMA
- CREATE TABLE ON SCHEMA
Configuração do driver
Um driver apenas será necessário se você estiver acessando o banco de dados via Data Movement gateway.
Você pode instalar o driver usando o utilitário de instalação do driver (recomendado) ou manualmente. A instalação manual só deve ser tentada no caso improvável de você encontrar um problema com o utilitário de instalação do driver.
Usando o utilitário de instalação de driver para instalar o driver
Esta seção descreve como instalar os driver necessários. O processo envolve o download do driver, sua cópia para a pasta necessária (veja abaixo) e a execução de um script que o instalará e configurará automaticamente. Você também pode executar scripts para atualizar e desinstalar o driver como necessário.
Preparando a instalação
-
Certifique-se de que o Python 3.6.x ou mais recente esteja instalado no servidor de gateway do Movimentação de dados.
O Python vem pré-instalado na maioria das distribuições do Linux. Você pode verificar qual versão do Python está instalada em seu sistema executando o seguinte comando:
python3 --version
-
Baixe o arquivo "snowflake-odbc-<versão>.x86_64.rpm" do driver ODBC para Snowflake. Você pode encontrar um link de download direto para a versão compatível em binary-artifacts em /opt/qlik/gateway/movement/drivers/manifests/snowflake.yaml. Assim que o download for concluído, copie o arquivo para:
/opt/qlik/gateway/movement/drivers/snowflake
Instalando o driver
Para o driver:
-
Pare o serviço do Gateway Data Movement:
sudo systemctl stop repagent
-
Opcionalmente, confirme se o serviço foi interrompido:
sudo systemctl status repagent
O status deverá ser o seguinte:
Active: inactive (dead) since <timestamp> ago
-
Na máquina do gateway do Movimentação de dados, altere o diretório de trabalho para:
opt/qlik/gateway/movement/drivers/bin
-
Execute o seguinte comando:
Sintaxe:
./install snowflake
Caso contrário, o EULA do driver será exibido.
-
Realize uma das seguintes ações:
- Pressione [Enter] repetidamente para percorrer lentamente o EULA.
- Pressione a barra de espaço repetidamente para rolar rapidamente pelo EULA.
- Pressione q para sair do texto da licença e ser apresentado às opções de aceitação do EULA.
-
Realize uma das seguintes ações:
- Digite "y" e pressione [Enter] para aceitar o EULA e iniciar a instalação.
- Digite "n" e pressione [Enter] para rejeitar o EULA e sair da instalação.
-
Digite "v" e pressione [Enter] para visualizar o EULA novamente.
-
Aguarde a conclusão da instalação (indicada por "Concluído!") e inicie o serviço do Gateway Data Movement:
sudo systemctl start repagent
-
Opcionalmente, confirme se o serviço foi iniciado:
sudo systemctl status repagent
O status deverá ser o seguinte:
Active: active (running) since <timestamp> ago
O driver será instalado.
Atualizando o driver
Execute o comando de atualização se quiser desinstalar versões anteriores do driver antes de instalar o driver fornecido.
Para atualizar o driver:
-
Pare o serviço do Gateway Data Movement:
sudo systemctl stop repagent
-
Opcionalmente, confirme se o serviço foi interrompido:
sudo systemctl status repagent
O status deverá ser o seguinte:
Active: inactive (dead) since <timestamp> ago
-
Na máquina do gateway do Movimentação de dados, altere o diretório de trabalho para:
opt/qlik/gateway/movement/drivers/bin
-
Execute o seguinte comando:
Sintaxe:
./update snowflake
Caso contrário, o EULA do driver será exibido.
-
Realize uma das seguintes ações:
- Pressione [Enter] repetidamente para percorrer lentamente o EULA.
- Pressione a barra de espaço repetidamente para rolar rapidamente pelo EULA.
- Pressione q para sair do texto da licença e ser apresentado às opções de aceitação do EULA.
-
Realize uma das seguintes ações:
- Digite "y" e pressione [Enter] para aceitar o EULA e iniciar a instalação.
- Digite "n" e pressione [Enter] para rejeitar o EULA e sair da instalação.
- Digite "v" e pressione [Enter] para revisar o EULA desde o início.
-
Aguarde a conclusão da instalação (indicada por "Concluído!") e inicie o serviço do Gateway Data Movement:
sudo systemctl start repagent
-
Opcionalmente, confirme se o serviço foi iniciado:
sudo systemctl status repagent
O status deverá ser o seguinte:
Active: active (running) since <timestamp> ago
O driver antigo será desinstalado, e o novo driver será instalado.
Desinstalando o driver
Execute o comando de desinstalação se quiser desinstalar o driver.
Para desinstalar o driver:
-
Pare todas as tarefas configuradas para usar esse conector.
-
Na máquina do gateway do Movimentação de dados, altere o diretório de trabalho para:
opt/qlik/gateway/movement/drivers/bin
-
Execute o seguinte comando:
Sintaxe:
./uninstall snowflake
O driver será desinstalado.
Instalando manualmente o driver
Você só deve tentar instalar o driver manualmente se a instalação automática do driver não for concluída com êxito.
Você precisa instalar um driver ODBC e um driver JDBC.
Instalar o driver ODBC
- Após a instalação do Data Movement gateway, baixe o arquivo de driver snowflake-odbc-<version>x86_64.rpm listado em binary-artifacts em /opt/qlik/gateway/movement/drivers/manifests/snowflake.yaml e copie-o para a máquina do Data Movement gateway.
- Instale o driver na máquina do Data Movement gateway.
Instalar o driver JDBC
-
Baixe o arquivo snowflake-jdbc-<version>.jar listado em binary-artifacts em /opt/qlik/gateway/movement/drivers/manifests/snowflake.yaml e copie-o para a seguinte pasta na máquina do Data Movement gateway:
/opt/qlik/gateway/movement/qcs_agents/qdi-db-commands/lib
-
Reinicie o serviço Data Movement gateway e verifique se ele foi iniciado executando os comandos descritos em Comandos de serviço do Data Movement gateway
Porta
A porta 443 do firewall precisa ser aberta para comunicação de saída.
Otimização de desempenho e uso de serviços em nuvem
Para obter informações sobre cobranças incorridas ao usar o Snowflake Cloud Services, consulte Snowflake: Impacto de cobrança adicional (camada de serviços de nuvem)
Limitações e considerações
As seguintes limitações se aplicam ao mover dados para um destino do Snowflake:
- Não há suporte para a replicação de tabelas com barras invertidas em seus nomes (por exemplo, SPECIAL\\TABLE\N).
Tipos de dados
A tabela a seguir mostra os tipos de dados do Snowflake que são suportados durante o uso do Qlik Cloud e o mapeamento padrão dos tipos de dados do Qlik Cloud.
As informações do tipo de dados nativo são preservadas e exibidas na coluna Tipo de dados nativo nas visualizações do conjunto de dados. Se a coluna não estiver visível, será necessário abrir o seletor de colunas da visualização do conjunto de dados e selecionar a coluna Tipo de dados nativo.
Tipos de dados do Qlik Cloud | Tipos de dados do Snowflake |
---|---|
BOOLEAN |
BOOLEAN |
BYTES |
BINARY (comprimento em bytes) |
DATE |
DATE |
TIME |
TIME (precisão) |
DATETIME |
TIMESTAMP_NTZ (precisão) |
INT1 |
BYTEINT |
INT2 |
SMALLINT |
INT4 |
INTEGER |
INT8 |
BIGINT |
NUMERIC |
NUMBER (precisão, escala) |
REAL4 |
FLOAT4 |
REAL8 |
FLOAT8 |
UINT1 |
BYTEINT |
UINT2 |
INTEGER |
UINT4 |
INTEGER |
UINT8 |
BIGINT |
STRING |
VARCHAR (comprimento em bytes) |
WSTRING |
NVARCHAR (comprimento em bytes) |
BLOB |
BINARY (8388608) |
NCLOB |
NVARCHAR (8388608) |
CLOB |
VARCHAR (8388608) |