Extensiones de segmentos SQL
Puedes generar una extensión de segmento utilizando consultas SQL de Snowflake sobre datos de Snowflake. SQL puede ayudarte a desbloquear nuevos casos de uso de segmentos, ya que ofrece la flexibilidad necesaria para describir las relaciones entre los datos de formas que no son posibles con otras características de segmentación.
Al igual que las extensiones de segmento estándar, puedes consultar eventos de hasta los dos últimos años (730 días) en tu extensión de segmento SQL. A diferencia de las extensiones de segmento estándar, las extensiones de segmento SQL consumen créditos.
Requisitos previos
Dado que es posible acceder a datos PII a través de esta característica, debes tener permisos de PII para ejecutar consultas SQL de segmento.
Crear una extensión de segmento
Paso 1: Elige un editor
Existen dos tipos de editores SQL entre los que puedes elegir al crear tu extensión de segmento SQL: el Editor SQL y el Editor SQL Incremental.
- Actualización completa: Cada vez que tu segmento se actualiza, Braze consultará todos los datos disponibles para actualizar tu segmento, lo que usará más créditos que las actualizaciones incrementales. Las extensiones de actualización completa pueden regenerar automáticamente la pertenencia de forma diaria, pero no pueden actualizarse mediante actualización incremental.
- Actualización incremental: La actualización incremental es una forma más eficiente en costos de configurar tu consulta, aunque la configuración implica algunos pasos adicionales. Si puedes completar estos pasos adicionales al construir tu segmento, vale la pena elegir esta opción porque tu consulta se ejecutará usando menos créditos.
- Generador de SQL con IA: El generador de SQL con IA te permite escribir una indicación en lenguaje natural y la convierte en una consulta SQL para tu segmento. Es una forma rápida de empezar sin necesidad de escribir el SQL tú mismo.

Puedes hacer una actualización completa manual en todos los Segments SQL creados en cualquiera de los editores SQL.
Para crear una extensión de segmento SQL de actualización completa:
- Ve a Audiencia > Extensiones de segmento.
- Selecciona Crear nueva extensión y luego selecciona Actualización completa.

- Añade un nombre para tu extensión de segmento e ingresa tu SQL. Consulta el Paso 2 para los requisitos y recursos.

- Guarda tu extensión de segmento.
Para crear una extensión de segmento SQL de actualización incremental:
- Ve a Audiencia > Extensiones de segmento.
- Selecciona Crear nueva extensión y selecciona Actualización incremental.

- Añade un nombre para tu extensión de segmento e ingresa tu SQL. Consulta la sección Escribir SQL para los requisitos y recursos.

- Si lo deseas, selecciona Regenerar extensión diariamente.

Cuando se selecciona, Braze actualizará la pertenencia al segmento cada día automáticamente. Esto significa que cada día a medianoche en la zona horaria de tu empresa (con un posible retraso de una hora), Braze verificará si hay nuevos usuarios en tu segmento y los añadirá automáticamente. Si una extensión de segmento no se ha utilizado en 7 días, Braze pausará automáticamente la regeneración diaria. Una extensión de segmento sin usar es aquella que no forma parte de una Campaign o Canvas (la Campaign o el Canvas no necesitan estar activos para que la extensión se considere “en uso”). - Guarda tu extensión de segmento.

El generador de SQL con IA está disponible actualmente como una característica en beta. Contacta a tu administrador de éxito de cliente si estás interesado en participar en esta prueba beta.
El generador de SQL con IA aprovecha GPT, impulsado por OpenAI, para recomendar SQL para tu segmento SQL.

Para usar el generador de SQL con IA, haz lo siguiente:
- Selecciona Iniciar generador de SQL con IA después de crear un segmento SQL utilizando actualización completa o incremental.
- Escribe tu indicación y selecciona Generar para traducir tu indicación a SQL.
- Revisa el SQL generado para asegurarte de que se vea correcto y luego guarda tu segmento.
Ejemplos de indicaciones
- Usuarios que recibieron un correo electrónico en el último mes
- Usuarios que hicieron menos de cinco compras en el último año
Consejos
- Familiarízate con las tablas de datos de Snowflake disponibles. Solicitar datos que no existen en estas tablas puede resultar en que ChatGPT invente una tabla ficticia.
- Familiarízate con las reglas de escritura SQL para esta característica. No seguir estas reglas causará un error. Por ejemplo, tu código SQL debe seleccionar la columna
user_id. Empezar tu indicación con “usuarios que” puede ayudar. - Puedes enviar hasta 20 indicaciones por minuto con el generador de SQL con IA.
¿Cómo se utilizan y envían mis datos a OpenAI?
Para generar resultados de IA a través de las características de BrazeAI que aprovechan OpenAI (“Resultados”), Braze enviará cierta información (“Entrada”) a OpenAI. La Entrada consiste en tus indicaciones y puede incluir el contenido mostrado en el dashboard, así como otros datos del espacio de trabajo relevantes para tus consultas, según corresponda. Según los compromisos de la plataforma API de OpenAI, los datos enviados a la API de OpenAI a través de Braze no se utilizan para entrenar ni mejorar los modelos de OpenAI. OpenAI puede conservar los datos durante 30 días con fines de supervisión de abusos, tras lo cual se eliminan. Entre tú y Braze, los Resultados son tu propiedad intelectual. Braze no hará valer ninguna reclamación de propiedad de derechos de autor sobre dichos Resultados. Braze no ofrece garantías de ningún tipo con respecto a ningún contenido generado por IA, incluidos los Resultados.

Las consultas SQL que tarden más de 20 minutos en ejecutarse se agotarán por tiempo de espera.
Cuando la extensión termine de procesarse, puedes crear un segmento usando tu extensión de segmento y dirigir este nuevo segmento con tus Campaigns y Canvas.
Paso 2: Escribe tu SQL
Tu consulta SQL debe escribirse usando sintaxis de Snowflake. Consulta la referencia de tablas para obtener una lista completa de tablas y columnas disponibles para consultar.

Ten en cuenta que las tablas disponibles para consultar solo contienen datos de eventos. Si deseas consultar atributos de usuario, debes combinar tu segmento SQL con filtros de atributos personalizados del segmentador clásico.
Tu SQL debe cumplir adicionalmente con las siguientes reglas:
- Escribe una sola sentencia SQL. No incluyas puntos y comas.
- Tu SQL debe seleccionar solo una columna: la columna
user_id. Esto significa que tu SQL debe contener:
SELECT DISTINCT user_id FROM "INSERT TABLE NAME"
- No es posible consultar usuarios con cero eventos, lo que significa que cualquier consulta para usuarios que hayan realizado un evento menos de X veces necesitaría seguir esta solución alternativa:
- Escribe una consulta para seleccionar usuarios que tengan el evento MÁS de X veces.
- Al hacer referencia a tu extensión de segmento en tu segmento, selecciona
doesn't includepara invertir el resultado.
Requisitos de la columna user_id
La columna user_id debe ser una referencia directa y sin cambios a user_id desde una tabla de origen. Braze rechaza consultas donde la columna final user_id es:
- Una columna calculada con un alias, como
COALESCE(m.orphaned_by_id, c.user_id) AS user_id - Una columna diferente renombrada a
user_id, comom.orphaned_by_id AS user_id - Una columna de subconsulta con alias
user_id, como seleccionar de una subconsulta que devuelve unuser_idcalculado
Si recibes el error “sql - Please select only the following columns: user_id” pero tu consulta ya selecciona la columna user_id, verifica si tu consulta usa alguno de estos patrones. La vista previa puede funcionar incluso si la consulta no se guarda.

Usa GROUP BY c.user_id o DISTINCT c.user_id directamente desde tu tabla de origen en lugar de crear alias o calcular la columna user_id.
Reglas adicionales
Además, tu consulta SQL estándar debe cumplir con las siguientes reglas:
- No puedes usar sentencias
DECLARE.
Todas las consultas de actualización incremental constan de dos partes: una consulta y detalles del esquema.
- En el editor, escribe una consulta que seleccione
user_ids de tu tabla deseada. - Añade los detalles del esquema seleccionando un Operador, Número de veces y Período de tiempo de los campos en la parte superior del editor. La consulta verifica si la suma de la columna de agregación cumple con la condición que estableciste con esos campos. Esto funciona de manera similar al flujo de trabajo para crear extensiones de segmento clásicas.
- Operador: Indica si el evento ha ocurrido más de, menos de o igual a un número de ocurrencias.

- Número de veces: Cuántas veces deseas evaluar el evento en relación con el operador.

- Período de tiempo: Número de días de 1 a 730 en los que quieres verificar instancias del evento. Este período de tiempo se refiere a días pasados en relación con el día actual. El siguiente ejemplo muestra la consulta de usuarios que realizaron el evento más de 5 veces en los últimos 365 días.

- Operador: Indica si el evento ha ocurrido más de, menos de o igual a un número de ocurrencias.
En el siguiente ejemplo, el segmento resultante contendría usuarios que realizaron el evento favorited más de 3 veces durante los últimos 30 días, después de una fecha especificada.



La actualización incremental tiene en cuenta eventos tardíos: eventos que llegan después de la ventana de actualización diaria, como eventos del SDK que no se enviaron cuando fueron capturados. Cuando el segmento se actualiza, Braze reprocesa las fechas a las que pertenecen esos eventos tardíos.
Cómo la actualización incremental rastrea usuarios a lo largo del tiempo
Cuando usas la actualización incremental, Braze almacena conteos diarios para cada usuario en una tabla de conteos interna para poder evaluar tu segmento a lo largo de todo tu período de tiempo sin volver a consultar todos los datos históricos cada día.
Qué se almacena: Braze mantiene una tabla de conteos (similar a una tabla de cohortes de segmento) que acumula conteos diarios de calificación de usuarios en el formato (date, user_id, count). Esta tabla conserva datos históricos fuera de la ventana de actualización continua de dos días.
Qué sucede en cada actualización: Cuando se ejecuta una actualización incremental, Braze borra solo los registros dentro de la ventana de actualización continua de dos días de la tabla de conteos. Luego vuelve a ejecutar tu consulta SQL con parámetros de tiempo actualizados (usando $start_date) para insertar filas nuevas para esas fechas. Las filas históricas fuera de la ventana de actualización continua de dos días permanecen intactas en la tabla de conteos.
Cómo Braze decide quién está en el segmento: Braze evalúa los criterios de pertenencia a tu segmento contra toda la tabla de conteos acumulada, no solo la carga útil de la ventana de actualización continua de dos días más reciente. Esto significa que los usuarios que calificaron hace más de dos días permanecen en el segmento a menos que los conteos agregados ya no cumplan con tus criterios.
Escribir SQL que se actualice de manera confiable: Al escribir SQL para actualización incremental, evita patrones de consulta que puedan producir resultados inconsistentes durante actualizaciones parciales. Por ejemplo, agregaciones con ventana como MAX(time) que dependen de datos a través de los límites de $start_date pueden alterar el estado de las filas inesperadamente cuando solo se recalcula un subconjunto de fechas. Estructura tus consultas para que la salida de cada fecha dependa solo de los eventos de esa fecha, lo que mantiene resultados consistentes ya sea que la consulta procese dos días o 730 días de datos.
Reglas adicionales
Además, tu consulta de actualización incremental debe cumplir con las siguientes reglas:
- Escribe una sola sentencia SQL. No incluyas puntos y comas.
- Tu segmento SQL incremental solo puede referirse a un evento. Tus menús desplegables de fecha y conteo se aplican a ese evento.
- Tu SQL debe incluir el alias
$date()(por ejemplo,$date(time)), seleccionaruser_idy una agregaciónCOUNT(), agrupar por fecha yuser_id, y filtrar con$start_dateen tu columna de tiempo (por ejemplo,time > $start_date). Guardar SQL sin$date()o estos campos devuelve un error. - No puedes usar sentencias
DECLARE.

Si estás creando un segmento SQL que usa la tabla CATALOGS_ITEMS_SHARED, debes especificar un ID de catálogo. Por ejemplo:
SELECT * FROM CATALOGS_ITEMS_SHARED
WHERE CATALOG_ID = 'XYZ'
LIMIT 10
Paso 3: Vista previa de la consulta
Antes de guardar, puedes ejecutar una vista previa de tu consulta. Las vistas previas de consultas están limitadas automáticamente a 100 filas y se agotarán por tiempo de espera después de 60 segundos. El requisito de la columna user_id no aplica al ejecutar una vista previa.
Para las extensiones de segmento SQL incrementales, la vista previa no incluirá los criterios adicionales de tu operador, número de veces y campos de período de tiempo.
Paso 4: Determina si necesitas invertir SQL
A continuación, determina si necesitas invertir SQL. Aunque no es posible consultar directamente usuarios con cero eventos, puedes usar Invertir SQL para dirigirte a estos usuarios.

Por defecto, Invertir SQL no está activado. Sin embargo, si usas el generador de SQL con IA para generar una sentencia SQL que necesita ser negada, ChatGPT podría devolver una salida que active automáticamente esta característica.
Por ejemplo, para dirigirte a usuarios que tienen menos de tres compras, primero escribe una consulta para seleccionar usuarios que tengan tres o más compras. Luego, selecciona Invertir SQL para dirigirte a usuarios con menos de tres compras (incluyendo aquellos con cero compras).

A menos que estés intentando específicamente dirigirte a usuarios con cero eventos, no necesitarás invertir SQL. Si Invertir SQL está seleccionado, confirma que la característica es necesaria y que el segmento coincide con tu audiencia deseada. Por ejemplo, si una consulta se dirige a usuarios con al menos un evento, solo se dirigirá a usuarios con cero eventos cuando se invierta.

Actualización de la membresía de segmento
Para actualizar la membresía de segmento de cualquier extensión de segmento creada con SQL, abre la extensión de segmento y selecciona Actualizar.

Si creaste un segmento en el que esperas que los usuarios entren y salgan con regularidad, actualiza manualmente la extensión de segmento que utiliza antes de segmentar ese segmento en una Campaign o Canvas.
Gestión de tus extensiones de segmento
En la página Extensiones de segmento, los segmentos generados mediante SQL se identifican con junto a su nombre.
Selecciona una extensión de segmento SQL para ver dónde se está utilizando la extensión, archivarla o actualizar manualmente la pertenencia al segmento.

Designar la configuración de actualización
Si no necesitas que tu extensión se actualice de forma periódica, puedes guardarla sin utilizar la configuración de actualización, y Braze generará por defecto tu extensión de segmento basándose en la pertenencia de usuarios en ese momento. Utiliza el comportamiento predeterminado si solo quieres generar la audiencia una vez y luego dirigirte a ella con una campaña puntual.
Tu segmento siempre empezará a procesarse después del guardado inicial. Cada vez que se actualice tu segmento, Braze volverá a ejecutar el segmento y actualizará la pertenencia al mismo para reflejar los usuarios de tu segmento en el momento de la actualización. Esto puede ayudar a que tus campañas recurrentes lleguen a los usuarios más relevantes.
Configurar una actualización periódica
Para establecer una programación recurrente designando la configuración de actualización, selecciona Habilitar actualización. La opción de designar la configuración de actualización está disponible para todos los tipos de extensiones de segmento, incluidos los segmentos SQL, las extensiones de segmento CDI y las extensiones de segmento basadas en formularios simples.

Para optimizar tu gestión de datos, la configuración de actualización se desactiva automáticamente para las extensiones de segmento no utilizadas. Las extensiones de segmento se consideran no utilizadas cuando:
- No se utilizan en ninguna campaña, Canvas o segmento activo o inactivo (borrador, detenido, archivado).
- No se han modificado en más de 7 días.
Braze notificará al contacto de la empresa y al creador de la extensión si se desactiva esta configuración. La opción de regenerar las extensiones diariamente puede volver a activarse en cualquier momento.
Seleccionar tu configuración de actualización

En el panel Configuración del intervalo de actualización, puedes seleccionar la frecuencia con la que se actualizará esta extensión de segmento: cada hora, cada día, cada semana o cada mes. También se te pedirá que selecciones la hora concreta (que corresponde a la zona horaria de tu empresa) a la que se produciría la actualización, por ejemplo:
- Si tienes una campaña de correo electrónico que se envía todos los lunes a las 11 de la mañana, hora de la empresa, y quieres asegurarte de que tu segmento se actualiza justo antes de enviarlo, debes elegir un programa de actualización semanal a las 10 de la mañana de los lunes.
- Si quieres que tu segmento se actualice todos los días, selecciona la frecuencia de actualización diaria y, a continuación, elige la hora del día en que se actualizará.

La posibilidad de establecer un programa de actualización por horas no está disponible para las extensiones de segmento basadas en formularios (pero puedes establecer programas diarios, semanales o mensuales).
Consumo de créditos y costes adicionales
Como las actualizaciones vuelven a ejecutar la consulta de tu segmento, cada actualización de segmentos SQL consumirá créditos de segmentos SQL, y cada actualización de extensiones de segmento CDI supondrá un coste dentro de tu almacén de datos de terceros.

La actualización de los segmentos podría requerir hasta 60 minutos debido a los tiempos de procesamiento de los datos. Los segmentos que estén actualmente en proceso de actualización tendrán un estado de “Procesando” dentro de tu lista de extensiones de segmento. Esto tiene un par de implicaciones:
- Para terminar de procesar tu segmento antes de una hora determinada, elige una hora de actualización que sea 60 minutos antes.
- Solo puede producirse una actualización a la vez para una extensión de segmento específica. Si hay un conflicto en el que se inicia una nueva actualización cuando una actualización existente ya ha comenzado a procesarse, Braze cancelará la nueva solicitud de actualización y continuará el procesamiento en curso.
Criterios para desactivar automáticamente las extensiones obsoletas
Las actualizaciones programadas se desactivan automáticamente cuando una extensión de segmento queda obsoleta. Una extensión de segmento se considera obsoleta si cumple los siguientes criterios:
- No se utiliza en ninguna campaña o Canvas activos
- No se utiliza en ningún segmento que esté en una campaña o Canvas activos
- No se utiliza en ningún segmento que tenga activado el seguimiento de análisis
- No se ha modificado en más de siete días
- No se ha añadido a una campaña o Canvas (incluidos borradores), ni a un segmento en más de siete días
Si la actualización programada está desactivada para una extensión de segmento, dicha extensión tendrá una notificación que así lo indique.

Cuando estés listo para utilizar una extensión de segmento obsoleta, revisa la configuración de actualización, selecciona el programa de actualización que se ajuste a tu caso de uso y, a continuación, guarda las modificaciones.
Créditos de Snowflake
Cada espacio de trabajo de Braze dispone de 5 créditos de Snowflake al mes. Si necesitas más créditos, ponte en contacto con tu director de cuentas. Los créditos se utilizan cada vez que actualizas, o guardas y actualizas, la membresía de un segmento SQL. Los créditos no se utilizan cuando ejecutas vistas previas dentro de un segmento SQL o guardas o actualizas una extensión de segmento clásica.

Los créditos de Snowflake no se comparten entre características. Por ejemplo, los créditos de las extensiones de segmento SQL y del Generador de consultas son independientes entre sí.
El uso de créditos está correlacionado con el tiempo de ejecución de tu consulta SQL. Cuanto mayor sea el tiempo de ejecución, más créditos costará una consulta. El tiempo de ejecución puede variar en función de la complejidad y el tamaño de tus consultas a lo largo del tiempo. Cuanto más complejas y frecuentes sean las consultas que ejecutes, mayor será la asignación de recursos y más rápido será el tiempo de ejecución.
Para ahorrar créditos, previsualiza tu consulta para asegurarte de que es correcta antes de guardar la extensión de segmento SQL.
Tus créditos se restablecerán a 5 el primer día de cada mes a las 12 am UTC. Puedes monitorizar el uso de tus créditos a lo largo del mes en el panel de uso de créditos. Desde la página Extensiones de segmento, haz clic en Ver uso de créditos SQL.

Cuando tus créditos lleguen a cero, ocurrirá lo siguiente:
- Todas las extensiones de segmento SQL configuradas para actualizarse automáticamente dejarán de actualizarse, lo que afectará a la membresía de estos segmentos y a cualquier Campaign o Canvas que se dirija a estos segmentos.
- Solo podrás guardar nuevas extensiones de segmento SQL como borradores durante el resto del mes.
Todos los usuarios de la empresa que hayan creado un segmento SQL y los administradores de la empresa recibirán una notificación por correo electrónico cuando se haya utilizado el 50 %, el 80 % y el 100 % de los créditos. Después de que tus créditos se restablezcan al inicio del mes siguiente, podrás crear más segmentos SQL y se reanudarán las actualizaciones automáticas.
Si deseas adquirir más créditos de segmento SQL o extensiones de segmento adicionales, ponte en contacto con tu director de cuentas.