[Ultimate]{class="badge positive"}

Fonte de transmissão Snowflake

IMPORTANT
  • A fonte de transmissão Snowflake está disponível na API para usuários que compraram o Real-Time CDP Ultimate.

  • Agora você pode usar a fonte de streaming Snowflake ao executar o Adobe Experience Platform no Amazon Web Services (AWS). O Experience Platform em execução no AWS está disponível atualmente para um número limitado de clientes. Para saber mais sobre a infraestrutura do Experience Platform compatível, consulte a visão geral da nuvem múltipla do Experience Platform.

A Adobe Experience Platform permite a assimilação de dados de fontes externas, além de permitir estruturar, rotular e aprimorar os dados recebidos por meio dos serviços da Experience Platform. Você pode assimilar dados de várias fontes, como aplicativos da Adobe, armazenamento baseado em nuvem, bancos de dados e muitas outras.

O Experience Platform fornece suporte para a transmissão de dados de um banco de dados Snowflake.

Compreendendo a fonte de streaming Snowflake

A fonte de transmissão Snowflake funciona com dados carregados executando periodicamente uma consulta SQL e criando um registro de saída para cada linha no conjunto resultante.

Ao usar o Kafka Connect, a fonte de streaming Snowflake rastreia o registro mais recente que recebe de cada tabela, para que possa iniciar no local correto para a próxima iteração. A fonte usa essa funcionalidade para filtrar dados e obter apenas as linhas atualizadas de uma tabela em cada iteração.

Pré-requisitos

A seção a seguir descreve as etapas de pré-requisito a serem concluídas antes que você possa transmitir dados do banco de dados do Snowflake para o Experience Platform:

INCLUIR NA LISTA DE PERMISSÕES endereço IP

Você deve adicionar endereços IP específicos da sua região ao incluo na lista de permissões antes de conectar suas fontes à Experience Platform. Para obter mais informações, leia o guia sobre como ler os endereços IP de incluir na lista de permissões para se conectar ao Experience Platform para obter mais informações.

A documentação abaixo fornece informações sobre como conectar o Amazon Redshift ao Experience Platform usando APIs ou a interface do usuário:

Coletar credenciais necessárias

Para que Flow Service se conecte a Snowflake, você deve fornecer as seguintes propriedades de conexão:

Autenticação básica
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2
Credencial Descrição
account

O identificador de conta completo (nome da conta ou localizador de conta) da sua conta do Snowflake foi acrescentado com o sufixo snowflakecomputing.com. O identificador da conta pode ter diferentes formatos:

  • {ORG_NAME}-{ACCOUNT_NAME}.snowflakecomputing.com (por exemplo, acme-abc12345.snowflakecomputing.com)
  • {ACCOUNT_LOCATOR}.{CLOUD_REGION_ID}.snowflakecomputing.com (por exemplo, acme12345.ap-southeast-1.snowflakecomputing.com)
  • {ACCOUNT_LOCATOR}.{CLOUD_REGION_ID}.{CLOUD}.snowflakecomputing.com (por exemplo, acme12345.east-us-2.azure.snowflakecomputing.com)

Para obter mais informações, leia o Snowflake document on account identifiers.

warehouse O warehouse Snowflake gerencia o processo de execução da consulta para o aplicativo. Cada warehouse Snowflake é independente um do outro e deve ser acessado individualmente ao trazer dados para a Experience Platform.
database O banco de dados Snowflake contém os dados que você deseja trazer para a Experience Platform.
username O nome de usuário da conta Snowflake.
password A senha da conta de usuário Snowflake.
role (Opcional) Uma função definida personalizada que pode ser fornecida para um usuário, para uma determinada conexão. Se não for fornecido, o padrão será public.
connectionSpec.id A especificação de conexão retorna as propriedades do conector de uma origem, incluindo especificações de autenticação relacionadas à criação das conexões de base e de origem. A ID da especificação de conexão para Snowflake é 51ae16c2-bdad-42fd-9fce-8d5dfddaf140.
Autenticação de par de chaves

Para usar a autenticação de par de chaves, você deve gerar um par de chaves RSA de 2048 bits e fornecer os seguintes valores ao criar uma conta para sua origem Snowflake.

table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
Credencial Descrição
account Um nome de conta identifica exclusivamente uma conta na organização. Nesse caso, você deve identificar exclusivamente uma conta em diferentes organizações do Snowflake. Para fazer isso, você deve anexar o nome da organização ao nome da conta. Por exemplo: orgname-account_name. Leia o guia em recuperando seu Snowflake identificador de conta para obter orientação adicional. Para obter mais informações, consulte a Snowflake documentação.
username O nome de usuário da sua conta Snowflake.
privateKey A chave privada Base64-codificada da sua conta Snowflake. Você pode gerar chaves privadas criptografadas ou não. Se você estiver usando uma chave privada criptografada, também deverá fornecer uma senha de chave privada ao autenticar no Experience Platform. Leia o guia em recuperando sua Snowflake chave privada para obter mais informações.
passphrase A senha é uma camada adicional de segurança que você deve usar ao autenticar com uma chave privada criptografada. Não é necessário fornecer a senha se você estiver usando uma chave privada não criptografada.
database O banco de dados Snowflake que contém os dados que você deseja assimilar na Experience Platform.
warehouse O warehouse Snowflake gerencia o processo de execução da consulta para o aplicativo. Cada warehouse Snowflake é independente um do outro e deve ser acessado individualmente ao trazer dados para a Experience Platform.

Para obter mais informações sobre esses valores, consulte o Snowflake guia de autenticação de par de chaves.

Recupere o identificador da sua conta retrieve-your-account-identifier

Para autenticar sua instância do Snowflake com o Experience Platform, obtenha o identificador de conta no painel da interface do usuário do Snowflake.

Siga estas etapas para encontrar o identificador da conta:

  • Navegue até sua conta no Snowflake painel da interface do usuário do aplicativo.
  • Na navegação à esquerda, selecione Accounts, seguido por Active Accounts no cabeçalho.
  • Em seguida, selecione o ícone de informações e selecione e copie o nome de domínio do URL atual.

Recuperar sua chave privada retrieve-your-private-key

Se você planeja usar a autenticação de par de chaves para sua conexão do Snowflake, é necessário gerar uma chave privada antes de se conectar ao Experience Platform.

Criar uma chave privada criptografada

Para gerar sua chave privada Snowflake criptografada, execute o seguinte comando no terminal:

code language-shell
openssl genrsa 2048 | openssl pkcs8 -topk8 -v2 des3 -inform PEM -out rsa_key.p8

Se tiver êxito, você deverá receber sua chave privada no formato PEM.

code language-shell
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIE6T...
-----END ENCRYPTED PRIVATE KEY-----
Criar uma chave privada não criptografada

Para gerar sua chave privada Snowflake não criptografada, execute o seguinte comando no terminal:

code language-shell
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt

Se tiver êxito, você deverá receber sua chave privada no formato PEM.

code language-shell
-----BEGIN PRIVATE KEY-----
MIIE6T...
-----END PRIVATE KEY-----

Depois de gerar sua chave privada, codifique-a diretamente no Base64 sem fazer alterações no formato ou conteúdo. Antes de codificar, verifique se não há espaços extras ou linhas em branco (incluindo novas linhas à direita) no final da chave privada.

Verificar configurações

Antes de criar uma conexão de origem para seus dados do Snowflake, você também deve garantir que as seguintes configurações sejam atendidas:

  • O depósito padrão atribuído a um determinado usuário deve ser igual ao depósito inserido ao autenticar no Experience Platform.
  • A função padrão atribuída a um determinado usuário deve ter acesso ao mesmo banco de dados inserido ao autenticar no Experience Platform.

Para verificar sua função e depósito:

  • Selecione Admin na navegação à esquerda e Users & Roles.
  • Selecione o usuário apropriado e, em seguida, selecione as reticências (...) no canto superior direito.
  • Na janela Edit user que aparece, navegue até Default Role para exibir a função associada ao usuário fornecido.
  • Na mesma janela, navegue até Default Warehouse para exibir o depósito associado ao usuário especificado.

Depois de codificada com êxito, você pode usar essa chave privada codificada em Base64 no Experience Platform para autenticar sua conta do Snowflake.

Definir configurações de função configure-role-settings

Você deve configurar privilégios para uma função, mesmo que a função pública padrão seja atribuída, para permitir que sua conexão de origem acesse o banco de dados, o esquema e a tabela Snowflake relevantes. Os vários privilégios para diferentes entidades Snowflake são os seguintes:

Entidade Snowflake
Exigir privilégio de função
Warehouse
OPERAR, USO
Banco de dados
USO
Esquema
USO
Tabela
SELECIONE
NOTE
O reinício automático e a suspensão automática devem estar ativados na configuração avançada do seu warehouse.

Para obter mais informações sobre o gerenciamento de funções e privilégios, consulte a Snowflake Referência da API.

Limitações e perguntas frequentes limitations-and-frequently-asked-questions

  • A taxa de transferência de dados para a origem Snowflake é de 2000 registros por segundo.

  • A precificação pode variar dependendo da quantidade de tempo em que um depósito está ativo e do tamanho do depósito. Para a integração de origem Snowflake, o menor warehouse, de tamanho x-pequeno, é suficiente. Sugere-se ativar a suspensão automática para que o depósito possa suspender por conta própria quando não estiver em uso.

  • A origem Snowflake pesquisa o banco de dados em busca de novos dados a cada 10 segundos.

  • Opções de configuração:

    • Você pode habilitar um sinalizador booleano backfill para sua origem Snowflake ao criar uma conexão de origem.

      • Se o preenchimento retroativo for definido como verdadeiro, o valor de timestamp.initial será definido como 0. Isso significa que os dados com uma coluna de carimbo de data e hora maior que 0 época são buscados.
      • Se o preenchimento retroativo for definido como falso, o valor de timestamp.initial será definido como -1. Isso significa que os dados com uma coluna de carimbo de data e hora maior que a hora atual (a hora em que a fonte começa a assimilar) são buscados.
    • A coluna de carimbo de data/hora deve ser formatada como tipo: TIMESTAMP_LTZ ou TIMESTAMP_NTZ. Se a coluna de carimbo de data/hora estiver definida como TIMESTAMP_NTZ, o fuso horário correspondente no qual os valores são armazenados deverá ser passado por meio do parâmetro timezoneValue. Se não fornecido, o valor padrão será UTC.

      • TIMESTAMP_TZ não pode ser usada uma coluna de carimbo de data/hora ou em um mapeamento.

Próximas etapas

NOTE
Depois de criar ou atualizar um fluxo de dados de transmissão, é necessária uma breve pausa de 5 minutos na assimilação de dados para evitar possíveis instâncias de perda ou perda de dados.

O tutorial a seguir fornece etapas sobre como conectar sua fonte de streaming do Snowflake ao Experience Platform usando a API:

recommendation-more-help
337b99bb-92fb-42ae-b6b7-c7042161d089