[Ultimate]{class="badge positive"}
Fonte de transmissão Snowflake
O Adobe Experience Platform permite que os dados sejam assimilados de fontes externas e, ao mesmo tempo, fornece a capacidade de estruturar, rotular e aprimorar os dados recebidos usando os serviços da plataforma. Você pode assimilar dados de várias fontes, como aplicativos Adobe, armazenamento baseado em nuvem, bancos de dados e muitas outras.
O Experience Platform fornece suporte para streaming 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:
Atualizar sua lista de permissões de endereço IP
Uma lista de endereços IP deve ser adicionada a uma lista de permissões antes de trabalhar com conectores de origem. Falha ao adicionar endereços IP específicos da região à lista de permissões pode levar a erros ou ao não desempenho ao usar origens. Consulte a página lista de permissões de endereço IP para obter mais informações.
A documentação abaixo fornece informações sobre como conectar o Amazon Redshift à Plataforma 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:
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
database
username
password
role
public
.connectionSpec.id
51ae16c2-bdad-42fd-9fce-8d5dfddaf140
.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:
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
ouTIMESTAMP_NTZ
. Se a coluna de carimbo de data/hora estiver definida comoTIMESTAMP_NTZ
, o fuso horário correspondente no qual os valores são armazenados deverá ser passado por meio do parâmetrotimezoneValue
. 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
O tutorial a seguir fornece etapas sobre como conectar sua fonte de transmissão do Snowflake ao Experience Platform usando a API: