Extensões de Segment do SQL
Você pode gerar uma extensão de Segment usando consultas de SQL do Snowflake de dados do Snowflake. O SQL pode ajudar a desbloquear novos casos de uso de segmentos porque oferece a flexibilidade de descrever as relações entre os dados de maneiras que não são possíveis por meio de outros recursos de segmentação.
Assim como as extensões de Segment padrão, você pode consultar eventos dos últimos dois anos (730 dias) na sua extensão de Segment SQL. Diferentemente das extensões de Segment padrão, as extensões de Segment SQL consomem créditos.
Pré-requisitos
Como é possível acessar dados de IPI por meio desse recurso, você deve ter permissões de IPI para executar consultas de SQL de Segment.
Criando uma extensão de Segment
Etapa 1: Escolha um editor
Existem dois tipos de editores SQL para escolher ao criar sua extensão de Segment SQL: o Editor SQL e o Editor SQL Incremental.
- Atualização completa: Cada vez que seu Segment é atualizado, a Braze consultará todos os dados disponíveis para atualizar seu Segment, o que usará mais créditos do que atualizações incrementais. Extensões de atualização completa podem regenerar automaticamente a associação diariamente, mas não podem ser atualizadas usando atualização incremental.
- Atualização incremental: A atualização incremental é uma forma mais eficiente em termos de custo para configurar sua consulta, embora a configuração envolva algumas etapas adicionais. Se você conseguir completar essas etapas adicionais ao construir seu Segment, vale a pena escolher essa opção porque sua consulta será executada usando menos créditos.
- Gerador de SQL com IA: O Gerador de SQL com IA permite que você escreva um prompt em linguagem natural e o transforme em uma consulta SQL para o seu Segment. É uma maneira rápida de começar sem precisar escrever o SQL você mesmo.

Você pode fazer uma atualização completa manual em todos os Segments SQL criados em qualquer editor SQL.
Para criar uma extensão de Segment SQL com atualização completa:
- Acesse Público > Extensões de Segment.
- Selecione Criar nova extensão e, em seguida, selecione Atualização completa.

- Adicione um nome para sua extensão de Segment e insira seu SQL. Consulte a Etapa 2 para requisitos e recursos.

- Salve sua extensão de Segment.
Para criar uma extensão de Segment SQL com atualização incremental:
- Acesse Público > Extensões de Segment.
- Selecione Criar nova extensão e selecione Atualização incremental.

- Adicione um nome para sua extensão de Segment e insira seu SQL. Consulte a seção Escrevendo SQL para requisitos e recursos.

- Se desejar, selecione Regenerar extensão diariamente.

Quando selecionada, a Braze atualizará a associação do Segment automaticamente a cada dia. Isso significa que todos os dias à meia-noite no fuso horário da sua empresa (com um possível atraso de uma hora), a Braze verificará se há novos usuários no seu Segment e os adicionará automaticamente ao seu Segment. Se uma extensão de Segment não for usada por 7 dias, a Braze pausará automaticamente a regeneração diária. Uma extensão de Segment não utilizada é aquela que não faz parte de uma Campaign ou Canvas (a Campaign ou Canvas não precisa estar ativa para que a extensão seja considerada “em uso”). - Salve sua extensão de Segment.

O gerador de SQL com IA está atualmente disponível como um recurso beta. Entre em contato com seu gerente de sucesso do cliente se tiver interesse em participar dessa versão beta.
O gerador de SQL com IA utiliza o GPT, desenvolvido pela OpenAI, para recomendar SQL para o seu Segment SQL.

Para usar o gerador de SQL com IA, faça o seguinte:
- Selecione Iniciar gerador de SQL com IA após criar um Segment SQL usando atualização completa ou incremental.
- Digite seu prompt e selecione Gerar para traduzir seu prompt em SQL.
- Revise o SQL gerado para verificar se está correto e, em seguida, salve seu Segment.
Exemplos de prompts
- Usuários que receberam um e-mail no último mês
- Usuários que fizeram menos de cinco compras no último ano
Dicas
- Familiarize-se com as tabelas de dados do Snowflake disponíveis. Pedir dados que não existem nessas tabelas pode fazer com que o ChatGPT invente uma tabela falsa.
- Familiarize-se com as regras de escrita SQL para este recurso. Não seguir essas regras causará um erro. Por exemplo, seu código SQL deve selecionar a coluna
user_id. Começar seu prompt com “usuários que” pode ajudar. - Você pode enviar até 20 prompts por minuto com o gerador de SQL com IA.
Como meus dados são usados e enviados para a OpenAI?
Para gerar saída de IA por meio dos recursos do BrazeAI que utilizam a OpenAI (“Saída”), a Braze enviará determinadas informações (“Entrada”) para a OpenAI. A Entrada consiste nos seus prompts e pode incluir o conteúdo exibido no dashboard e outros dados do espaço de trabalho relevantes para suas consultas, conforme aplicável. De acordo com os compromissos da plataforma de API da OpenAI, os dados enviados à API da OpenAI via Braze não são usados para treinar ou aprimorar os modelos da OpenAI. A OpenAI pode reter os dados por 30 dias para fins de monitoramento de abuso, após o que são excluídos. Entre você e a Braze, a Saída é sua propriedade intelectual. A Braze não fará nenhuma reivindicação de propriedade de direitos autorais sobre tal Saída. A Braze não oferece nenhuma garantia de qualquer tipo com relação a qualquer conteúdo gerado por IA, incluindo a Saída.

Consultas SQL que levam mais de 20 minutos para serem executadas atingirão o tempo limite.
Quando a extensão terminar de ser processada, você pode criar um Segment usando sua extensão de Segment e direcionar esse novo Segment com suas Campaigns e Canvas.
Etapa 2: Escreva seu SQL
Sua consulta SQL deve ser escrita usando a sintaxe do Snowflake. Consulte a referência de tabelas para uma lista completa de tabelas e colunas disponíveis para consulta.

Observe que as tabelas disponíveis para consulta contêm apenas dados de eventos. Se você deseja consultar atributos de usuário, deve combinar seu Segment SQL com filtros de atributos personalizados do segmentador clássico.
Seu SQL também deve seguir as seguintes regras:
- Escreva uma única instrução SQL. Não inclua ponto e vírgula.
- Seu SQL deve selecionar apenas uma coluna: a coluna
user_id. Isso significa que seu SQL deve conter:
SELECT DISTINCT user_id FROM "INSERT TABLE NAME"
- Não é possível consultar usuários com zero eventos, o que significa que qualquer consulta para usuários que realizaram um evento menos de X vezes precisaria seguir esta solução alternativa:
- Escreva uma consulta para selecionar usuários que realizaram o evento MAIS de X vezes.
- Ao referenciar sua extensão de Segment no seu Segment, selecione
doesn't includepara inverter o resultado.
Regras adicionais
Além disso, sua consulta SQL padrão deve seguir as seguintes regras:
- Você não pode usar instruções
DECLARE.
Todas as consultas de atualização incremental consistem em duas partes: uma consulta e detalhes do esquema.
- No editor, escreva uma consulta que selecione
user_ids da tabela desejada. - Adicione detalhes do esquema selecionando um Operador, Número de vezes e Período de tempo nos campos na parte superior do editor. A consulta verifica se a soma da coluna agregada atende à condição que você definiu com esses campos. Isso funciona de maneira similar ao fluxo de trabalho para criar extensões de Segment clássicas.
- Operador: Indique se o evento aconteceu mais do que, menos do que ou igual a um número de ocorrências.

- Número de vezes: Quantas vezes você gostaria de avaliar o evento em relação ao operador.

- Período de tempo: Número de dias de 1 a 730 em que você deseja verificar instâncias do evento. Esse período de tempo refere-se a dias passados em relação ao dia atual. O exemplo a seguir mostra a consulta de usuários que realizaram o evento mais de 5 vezes nos últimos 365 dias.

- Operador: Indique se o evento aconteceu mais do que, menos do que ou igual a um número de ocorrências.
No exemplo a seguir, o Segment resultante conteria usuários que realizaram o evento favorited mais de 3 vezes durante os últimos 30 dias, após uma data especificada.



A atualização incremental considera eventos atrasados — eventos que chegam após a janela de atualização diária, como eventos do SDK que não foram enviados quando foram capturados. Quando o Segment é atualizado, a Braze reprocessa as datas às quais esses eventos atrasados pertencem.
Como a atualização incremental rastreia usuários ao longo do tempo
Quando você usa a atualização incremental, a Braze armazena contagens diárias para cada usuário em uma tabela de contagens interna para poder avaliar seu Segment ao longo de todo o período de tempo sem precisar reconsultar todos os dados históricos a cada dia.
O que é armazenado: A Braze mantém uma tabela de contagens (similar a uma tabela de coortes de Segment) que acumula contagens diárias de qualificação de usuários no formato (date, user_id, count). Essa tabela persiste dados históricos fora da janela de atualização contínua de dois dias.
O que acontece em cada atualização: Quando uma atualização incremental é executada, a Braze limpa apenas os registros da janela de atualização contínua de dois dias da tabela de contagens. Em seguida, reexecuta sua consulta SQL com parâmetros de tempo atualizados (usando $start_date) para inserir novas linhas para essas datas. As linhas históricas fora da janela de atualização contínua de dois dias permanecem intactas na tabela de contagens.
Como a Braze decide quem está no Segment: A Braze avalia os critérios de associação do seu Segment em relação a toda a tabela de contagens acumulada, não apenas à carga útil mais recente da janela de atualização contínua de dois dias. Isso significa que os usuários que se qualificaram há mais de dois dias permanecem no Segment, a menos que as contagens agregadas não atendam mais aos seus critérios.
Escrevendo SQL que atualiza de forma confiável: Ao escrever SQL para atualização incremental, evite padrões de consulta que possam produzir resultados inconsistentes durante atualizações parciais. Por exemplo, agregações com janela como MAX(time) que dependem de dados entre os limites de $start_date podem alterar o estado da linha inesperadamente quando apenas um subconjunto de datas é recalculado. Estruture suas consultas de modo que a saída de cada data dependa apenas dos eventos daquela data, o que mantém resultados consistentes independentemente de a consulta processar dois dias ou 730 dias de dados.
Regras adicionais
Além disso, sua consulta de atualização incremental deve seguir as seguintes regras:
- Escreva uma única instrução SQL. Não inclua ponto e vírgula.
- Seu Segment SQL incremental pode referenciar apenas um evento. Seus menus suspensos de data e contagem se aplicam a esse evento.
- Seu SQL deve incluir o alias
$date()(por exemplo,$date(time)), selecionaruser_ide uma agregaçãoCOUNT(), agrupar por data euser_id, e filtrar com$start_datena sua coluna de tempo (por exemplo,time > $start_date). Salvar SQL sem$date()ou esses campos retornará um erro. - Você não pode usar instruções
DECLARE.

Se você estiver criando um Segment SQL que usa a tabela CATALOGS_ITEMS_SHARED, você deve especificar um ID de catálogo. Por exemplo:
SELECT * FROM CATALOGS_ITEMS_SHARED
WHERE CATALOG_ID = 'XYZ'
LIMIT 10
Etapa 3: Visualize a consulta
Antes de salvar, você pode executar uma prévia da sua consulta. As prévias de consulta são automaticamente limitadas a 100 linhas e atingirão o tempo limite após 60 segundos. O requisito da coluna user_id não se aplica ao executar uma prévia.
Para extensões de Segment SQL incrementais, a prévia não incluirá os critérios adicionais dos seus campos de operador, número de vezes e período de tempo.
Etapa 4: Determine se você precisa inverter o SQL
Em seguida, determine se você precisa inverter o SQL. Embora não seja possível consultar diretamente usuários com zero eventos, você pode usar Inverter SQL para direcionar esses usuários.

Por padrão, Inverter SQL não está ativado. No entanto, se você usar o gerador de SQL com IA para gerar uma instrução SQL que precisa ser negada, o ChatGPT pode retornar uma saída que ativa automaticamente esse recurso.
Por exemplo, para direcionar usuários que têm menos de três compras, primeiro escreva uma consulta para selecionar usuários que têm três ou mais compras. Em seguida, selecione Inverter SQL para direcionar usuários com menos de três compras (incluindo aqueles com zero compras).

A menos que você esteja especificamente tentando direcionar usuários com zero eventos, você não precisará inverter o SQL. Se Inverter SQL estiver selecionado, confirme que o recurso é necessário e que o Segment corresponde ao público desejado. Por exemplo, se uma consulta direciona usuários com pelo menos um evento, ela direcionará apenas usuários com zero eventos quando invertida.

Atualizando a associação ao segmento
Para atualizar a associação ao segmento de qualquer extensão de segmento criada usando SQL, abra a extensão de segmento e selecione Refresh.

Se você criou um segmento em que espera que os usuários entrem e saiam regularmente, atualize manualmente a extensão de segmento utilizada antes de direcionar esse segmento em uma Campaign ou Canvas.
Gerenciando suas extensões de segmento
Na página Extensões de Segment, os segmentos gerados usando SQL são indicados com ao lado do nome.
Selecione uma extensão de Segment SQL para ver onde a extensão está sendo usada, arquivar a extensão ou atualizar manualmente a associação do segmento.

Definindo configurações de atualização
Se não precisar que sua extensão seja atualizada regularmente, você pode salvá-la sem usar as configurações de atualização, e a Braze gerará sua extensão de Segment com base na associação do usuário naquele momento. Use o comportamento padrão se quiser gerar o público apenas uma vez e depois direcioná-lo com uma Campaign única.
Seu Segment sempre começará a ser processado após o salvamento inicial. Sempre que seu Segment for atualizado, a Braze executará novamente o Segment e atualizará a associação do Segment para refletir os usuários em seu Segment no momento da atualização. Isso pode ajudar suas Campaigns recorrentes a alcançar os usuários mais relevantes.
Configuração de uma atualização recorrente
Para definir uma programação recorrente designando configurações de atualização, selecione Ativar atualização. A opção de designar configurações de atualização está disponível para todos os tipos de extensões de Segment, incluindo segmentos SQL, extensões de Segment CDI e extensões de Segment simples baseadas em formulário.

Para otimizar seu gerenciamento de dados, as configurações de atualização são automaticamente desativadas para extensões de Segment não utilizadas. As extensões de Segment são consideradas não utilizadas quando:
- Não são usadas em nenhuma Campaign, Canvas ou Segment ativo ou inativo (rascunho, interrompido, arquivado); ou
- Não foram modificadas há mais de 7 dias
A Braze notificará o contato da empresa e o criador da extensão se essa configuração for desativada. A opção de regenerar extensões diariamente pode ser ativada novamente a qualquer momento.
Seleção das configurações de atualização

No painel Configurações de intervalo de atualização, você pode selecionar a frequência de atualização dessa extensão de Segment: por hora, diariamente, semanalmente ou mensalmente. Também será necessário selecionar o horário específico (no fuso horário da sua empresa) em que a atualização ocorrerá, como por exemplo:
- Se você tiver uma Campaign de e-mail que é enviada todas as segundas-feiras às 11h, horário da empresa, e quiser garantir que seu Segment seja atualizado logo antes do envio, escolha uma programação de atualização semanal às 10h das segundas-feiras.
- Se quiser que seu Segment seja atualizado todos os dias, selecione a frequência de atualização diária e, em seguida, escolha a hora do dia para atualizar.

A capacidade de definir uma programação de atualização por hora não está disponível para extensões de Segment baseadas em formulário (mas você pode definir programações diárias, semanais ou mensais).
Consumo de crédito e custos adicionais
Como as atualizações executam novamente a consulta do seu Segment, cada atualização para segmentos SQL consumirá créditos de Segment SQL, e cada atualização para extensões de Segment CDI incorrerá em um custo no seu data warehouse de terceiros.

Os segmentos podem levar até 60 minutos para serem atualizados devido ao tempo de processamento dos dados. Os segmentos que estão em processo de atualização terão o status “Processing” na lista de extensões de Segment. Isso tem algumas implicações:
- Para concluir o processamento do seu Segment antes de um horário específico, escolha um horário de atualização que seja 60 minutos antes.
- Somente uma atualização pode ocorrer de cada vez para uma extensão de Segment específica. Se houver um conflito em que uma nova atualização seja iniciada quando uma atualização existente já tiver começado a ser processada, a Braze cancelará a nova solicitação de atualização e continuará o processamento em andamento.
Critérios para desativar automaticamente extensões obsoletas
As atualizações programadas são automaticamente desativadas quando uma extensão de Segment se torna obsoleta. Uma extensão de Segment é considerada obsoleta se atender aos seguintes critérios:
- Não é usada em nenhuma Campaign ou Canvas ativo
- Não é usada em nenhum Segment que esteja em uma Campaign ou Canvas ativo
- Não é usada em nenhum Segment que tenha o rastreamento de análise de dados ativado
- Não foi modificada há mais de sete dias
- Não foi adicionada a uma Campaign ou Canvas (incluindo rascunhos) ou Segment há mais de sete dias
Se a atualização programada for desativada para uma extensão de Segment, essa extensão terá uma notificação informando isso.

Quando estiver pronto para usar uma extensão de Segment obsoleta, revise as configurações de atualização, selecione a programação de atualização que corresponda ao seu caso de uso e salve as modificações.
Créditos do Snowflake
Cada espaço de trabalho da Braze tem 5 créditos do Snowflake disponíveis por mês. Se precisar de mais créditos, entre em contato com o gerente da sua conta. Os créditos são usados sempre que você atualiza, ou salva e atualiza, a associação de um Segment SQL. Os créditos não são usados quando você executa prévias em um Segment SQL ou salva ou atualiza uma extensão de Segment clássica.

Os créditos do Snowflake não são compartilhados entre os recursos. Por exemplo, os créditos das extensões de Segment SQL e do Criador de consultas são independentes um do outro.
O uso de créditos está correlacionado ao tempo de execução da sua consulta de SQL. Quanto maior o tempo de execução, mais créditos a consulta custará. O tempo de execução pode variar de acordo com a complexidade e o tamanho das suas consultas ao longo do tempo. Quanto mais complexas e frequentes forem as consultas executadas, maior será a alocação de recursos e mais rápido será o tempo de execução.
Para economizar créditos, faça uma prévia da sua consulta para garantir que ela esteja correta antes de salvar a extensão de Segment SQL.
Seus créditos serão redefinidos para 5 no primeiro dia de cada mês, às 12h UTC. Você pode monitorar o uso dos seus créditos durante o mês no painel de uso de créditos. Na página Extensões de Segment, clique em Ver uso de créditos SQL.

O seguinte acontecerá quando seus créditos chegarem a zero:
- Todas as extensões de Segment SQL configuradas para atualização automática deixam de ser atualizadas, afetando a associação desses segmentos e todas as Campaigns ou Canvas direcionados a esses segmentos.
- Você só poderá salvar novas extensões de Segment SQL como rascunhos durante o restante do mês.
Todos os usuários da empresa que criaram um Segment SQL e os administradores da sua empresa receberão um e-mail de notificação quando você tiver usado 50%, 80% e 100% dos seus créditos. Depois que seus créditos forem redefinidos no início do mês seguinte, você poderá criar mais segmentos SQL, e as atualizações automáticas serão retomadas.
Se quiser comprar mais créditos de Segment SQL ou extensões de Segment adicionais, entre em contato com o gerente da sua conta.