Skip to content

Snowflake

O Snowflake é um data warehouse de nuvem SQL criado para fins específicos e disponibilizado como software como serviço (SaaS). O Snowflake fornece um data warehouse mais rápido, mais fácil de usar e muito mais flexível do que as ofertas tradicionais. Com a arquitetura exclusiva e patenteada do Snowflake, é fácil reunir todos os seus dados, executar análises rápidas e obter insights orientados por dados para todos os seus usuários.

A Braze oferece duas integrações com o Snowflake. Juntas, elas fornecem um pipeline de dados bidirecional completo entre seus ambientes da Braze e do Snowflake.

Escolhendo uma integração

Compartilhamento de dados (da Braze para o Snowflake)

O Compartilhamento Seguro de Dados do Snowflake oferece acesso seguro e em tempo real aos dados de engajamento e de Campaigns da Braze diretamente na sua instância do Snowflake. Nenhum dado é copiado ou transferido entre contas — todo o compartilhamento é realizado por meio da camada de serviços e do repositório de metadados exclusivos do Snowflake.

Use o Compartilhamento de Dados quando quiser:

  • Consultar dados de eventos e de Campaigns da Braze usando SQL do Snowflake
  • Criar relatórios complexos e realizar modelagem de atribuição
  • Combinar dados da Braze com outros dados no seu data warehouse do Snowflake
  • Fazer benchmarking dos seus dados de engajamento entre canais, setores e plataformas de dispositivos

Para instruções de configuração, consulte Compartilhamento de dados do Snowflake.

Ingestão de dados na nuvem (do Snowflake para a Braze)

A Ingestão de dados na nuvem (CDI) permite sincronizar dados da sua instância do Snowflake diretamente na Braze. Isso permite manter atributos de usuários, eventos e compras na Braze atualizados com o seu data warehouse de referência.

Use a Ingestão de dados na nuvem quando quiser:

  • Sincronizar atributos de usuários do Snowflake para perfis de usuário na Braze
  • Enviar dados de eventos ou compras do Snowflake para a Braze
  • Manter a Braze sincronizada com as transformações de dados que acontecem no seu data warehouse
  • Evitar a construção e manutenção de pipelines de ETL personalizados do Snowflake para a Braze

Para saber mais sobre o compartilhamento de dados do Snowflake, consulte Introdução ao Compartilhamento Seguro de Dados.

Pré-requisitos

Antes de usar esse recurso, você precisará concluir o seguinte:

Requisito Descrição
Acesso à Braze Para acessar esse recurso na Braze, você precisará entrar em contato com o gerente de conta da Braze ou o gerente de sucesso do cliente.
Conta Snowflake Uma conta Snowflake com permissões de admin. Para clientes não HIPAA, o Snowflake Standard ou Enterprise Edition é suportado. Para compartilhamento de dados em conformidade com HIPAA, o Business Critical Edition é necessário.

Configurando o Compartilhamento Seguro de Dados

Para o Snowflake, o compartilhamento de dados acontece entre um provedor de dados e um consumidor de dados. Nesse contexto, sua conta da Braze é o provedor de dados, pois cria e envia o compartilhamento de dados — enquanto sua conta do Snowflake é o consumidor de dados, pois utiliza o compartilhamento para criar um banco de dados. Para mais detalhes, consulte Snowflake: Consuming Shared Data.

Etapa 1: Enviar o compartilhamento de dados a partir da Braze

  1. Na Braze, acesse Partner Integrations > Data Sharing.
  2. Insira os detalhes e o localizador da sua conta Snowflake. Para obter o localizador da conta, execute SELECT CURRENT_ACCOUNT() na conta de destino.
  3. Se estiver usando um compartilhamento CRR, especifique o provedor de nuvem e a região.
  4. Quando terminar, selecione Create Datashare. Isso enviará o compartilhamento de dados para a sua conta Snowflake.

Etapa 2: Criar o banco de dados no Snowflake

  1. Após alguns minutos, você deverá receber o compartilhamento de dados de entrada na sua conta do Snowflake.
  2. Usando o compartilhamento de dados de entrada, crie um banco de dados para visualizar e consultar as tabelas. Por exemplo:
    1
    
     CREATE DATABASE <name> FROM SHARE <provider_account>.<share_name>
    
  3. Conceda privilégios para consultar o novo banco de dados.

Uso e visualização

Após o compartilhamento de dados ser provisionado, você precisará criar um banco de dados a partir do compartilhamento de dados recebido, fazendo com que todas as tabelas compartilhadas apareçam na sua instância do Snowflake e possam ser consultadas como qualquer outro dado armazenado na sua instância. No entanto, lembre-se de que os dados compartilhados são somente leitura e só podem ser consultados, não modificados ou excluídos de forma alguma.

Assim como o Currents, você pode usar o Compartilhamento Seguro de Dados do Snowflake para:

  • Criar relatórios complexos
  • Realizar modelagem de atribuição
  • Compartilhar dados de forma segura dentro da sua empresa
  • Mapear dados brutos de eventos ou dados de usuários para um CRM (como o Salesforce)
  • E muito mais

Para uma lista completa de tabelas e colunas disponíveis, consulte a referência de tabelas SQL. O Compartilhamento de Dados do Snowflake inclui todas as tabelas dessa referência, além de tabelas exclusivas do Snowflake para snapshots, changelogs de Campaigns e Canvas, eventos do console de agentes e eventos de repetição de mensagens.

Você também pode baixar os esquemas brutos de tabelas como um arquivo de texto.

Esquema de ID de usuário

Observe as seguintes diferenças entre as convenções de nomenclatura da Braze e do Snowflake para IDs de usuário.

Esquema da Braze Esquema do Snowflake Descrição
braze_id "USER_ID" O identificador exclusivo atribuído automaticamente pela Braze.
external_id "EXTERNAL_USER_ID" O identificador exclusivo do perfil de um usuário definido pelo cliente.

Informações importantes e limitações

Alterações que causam quebra versus alterações que não causam quebra

Alterações que não causam quebra

Alterações não disruptivas podem acontecer a qualquer momento e geralmente fornecem funcionalidades adicionais. Exemplos de alterações não disruptivas:

  • Adição de uma nova tabela ou visualização
  • Adição de uma coluna a uma tabela ou visualização existente

Alterações que causam quebra

Sempre que possível, mudanças incompatíveis são precedidas por um anúncio e um período de migração. Exemplos de mudanças incompatíveis incluem:

  • Remoção de uma tabela ou visualização
  • Remoção de uma coluna de uma tabela ou visualização existente
  • Alteração do tipo ou da nulabilidade de uma coluna existente

Regiões do Snowflake

Atualmente, a Braze hospeda todos os dados no nível de usuário nas regiões AWS US East-1, EU-Central (Frankfurt), AP-Northeast-1 (Tóquio), AP-Southeast-2 (Sydney) e AP-Southeast-3 (Jacarta) do Snowflake. Para usuários fora dessas regiões, a Braze pode fornecer compartilhamento de dados para clientes conjuntos que hospedam sua infraestrutura Snowflake em qualquer região AWS, Azure ou GCP.

Retenção de dados

Política de retenção

Quaisquer dados com mais de dois anos serão arquivados e movidos para armazenamento de longo prazo. Como parte do processo de arquivamento, todos os eventos são anonimizados e quaisquer campos sensíveis de informações de identificação pessoal (IPI) são removidos (isso inclui campos opcionalmente IPI como properties). Os dados arquivados ainda contêm o campo user_id, o que permite análises por usuário em todos os dados de eventos.

Você poderá consultar os dois anos mais recentes de dados de cada evento na view USERS_*_SHARED correspondente. Além disso, cada evento terá uma view USERS_*_SHARED_ALL que pode ser consultada para retornar tanto dados anonimizados quanto não anonimizados.

Dados históricos

O arquivo de dados históricos de eventos no Snowflake remonta a abril de 2019. Nos primeiros meses em que a Braze armazenou dados no Snowflake, foram feitas alterações no produto que podem ter resultado em alguns desses dados parecendo ligeiramente diferentes ou tendo alguns valores nulos (pois não estávamos passando dados para todos os campos disponíveis naquele momento). É melhor assumir que quaisquer resultados que incluam dados anteriores a agosto de 2019 podem parecer ligeiramente diferentes do esperado.

Conformidade com o Regulamento Geral de Proteção de Dados (GDPR)

Quase todos os registros de eventos armazenados pelo Braze incluem alguns campos que representam informações de identificação pessoal (IPI) dos usuários. Alguns eventos podem incluir endereço de e-mail, número de telefone, ID do dispositivo, idioma, gênero e local. Se a solicitação de esquecimento de um usuário for enviada ao Braze, anularemos esses campos de IPI para qualquer evento pertencente a esses usuários. Dessa forma, não removemos o registro histórico do evento, mas agora o evento jamais poderá ser vinculado a um indivíduo específico.

Consultando dados compartilhados: TIME e desempenho de consultas

Os dados de eventos nas views de compartilhamento de dados (por exemplo, USERS_BEHAVIORS_CUSTOMEVENT_SHARED) são clusterizados pelo campo TIME. Ao filtrar por quando o evento ocorreu, use TIME como o filtro preferencial. Consultas que restringem linhas usando TIME geralmente têm desempenho superior ao de consultas que filtram por SF_CREATED_AT, porque a clusterização está alinhada com o horário do evento.

Campo Significado
TIME Timestamp Unix do momento em que o evento ocorreu. Prefira este campo ao filtrar por horário de ocorrência.
SF_CREATED_AT Timestamp de quando a linha foi carregada no Snowflake (horário de ingestão).

Velocidade, desempenho e custo de consultas

A velocidade, o desempenho e o custo de qualquer consulta executada sobre os dados são determinados pelo tamanho do warehouse que você usa para consultar os dados. Em alguns casos, dependendo da quantidade de dados que você está acessando para análise, pode ser necessário usar um warehouse de tamanho maior para que a consulta seja bem-sucedida. O Snowflake possui excelentes recursos disponíveis sobre como determinar o melhor tamanho a ser usado, incluindo Visão geral dos warehouses e Considerações sobre warehouses.

Para um conjunto de consultas de exemplo como referência ao configurar o Snowflake, confira nossos exemplos de consultas de exemplo e configuração do pipeline de eventos ETL.

Para instruções de configuração, consulte Ingestão de dados da nuvem: integrações de data warehouse.

New Stuff!