Saltar al contenido principal
Si estás utilizando Snowflake con la integración heredada de OneSignal, consulta la guía de Integración heredada de Snowflake. Consulta Migración desde la versión heredada para obtener los pasos de migración.

Descripción general

La integración de OneSignal + Snowflake admite dos potentes canales de datos:
  • Salida: Envía automáticamente datos de eventos de mensajería (push, correo electrónico, SMS, in-app) desde OneSignal a Snowflake para análisis y generación de informes.
  • Entrada: Sincroniza eventos de usuario personalizados desde tus conjuntos de datos de Snowflake a OneSignal para activar Journeys automatizados y mensajería personalizada.
Juntas, estas integraciones te brindan control total sobre los datos de participación del usuario, lo que impulsa análisis avanzados y mensajería en tiempo real impulsada por el comportamiento.

Configuración de salida

Actualmente está en acceso temprano. Para solicitar acceso, contacta a support@onesignal.com con:
  • El nombre de tu empresa
  • Tu ID de organización de OneSignal
  • Los ID de aplicación que deseas habilitar
Exporta eventos de rendimiento y participación de mensajería (p. ej., envíos, aperturas, clics) a Snowflake para:
  • Crear paneles e informes personalizados
  • Rastrear tendencias de entrega y participación entre canales
  • Combinar datos de OneSignal con otros datos comerciales para análisis
Requisitos
  • Plan Professional de OneSignal (no disponible en aplicaciones gratuitas)
  • Cuenta de Snowflake
  • Rol SECURITYADMIN o ACCOUNTADMIN en Snowflake (para configuración)

1. Recopila los detalles de tu cuenta de Snowflake

Antes de configurar la integración, recopila la siguiente información de tu cuenta de Snowflake:
  • Host de Snowflake: La URL de tu cuenta en el formato <account_identifier>.snowflakecomputing.com
  • Nombre de la base de datos: La base de datos donde OneSignal escribirá los datos de eventos
  • Nombre del esquema: El esquema dentro de la base de datos para las tablas de OneSignal (esto será creado automáticamente por OneSignal)
  • Nombre del almacén: El almacén a utilizar para operaciones de carga de datos

Ubicación del identificador de cuenta de Snowflake

2. Ejecuta el script de configuración en Snowflake

Ejecuta el siguiente script SQL en tu almacén de Snowflake para crear el rol, usuario, almacén y base de datos necesarios para OneSignal:
Puedes personalizar los valores de las variables en la parte superior del script para que coincidan con tus convenciones de nomenclatura. Si estás utilizando un almacén o base de datos existentes, modifica el script en consecuencia.

3. Genera un par de claves para autenticación

OneSignal requiere autenticación de par de claves para un acceso seguro a tu cuenta de Snowflake. Sigue estos pasos para generar y configurar las claves:
1

Genera una clave privada

Ejecuta uno de los siguientes comandos para generar una clave privada:Clave privada sin cifrar (más simple, pero menos segura):
Clave privada cifrada (recomendado para producción):
Si utilizas una clave cifrada, se te pedirá que crees una frase de contraseña. Guarda esta frase de contraseña de forma segura: la necesitarás al configurar OneSignal.
2

Genera la clave pública

Genera la clave pública a partir de tu clave privada:
3

Asigna la clave pública a tu usuario de Snowflake

Copia el contenido del archivo de clave pública (excluyendo las líneas de encabezado y pie de página), luego ejecuta este comando SQL en Snowflake:
Reemplaza <YOUR_PUBLIC_KEY_CONTENT> con el contenido de la clave (sin las líneas -----BEGIN PUBLIC KEY----- y -----END PUBLIC KEY-----).
Almacena tu archivo de clave privada de forma segura. Necesitarás proporcionarlo a OneSignal en el siguiente paso. Nunca compartas tu clave privada públicamente ni la confirmes en el control de versiones.

4. Conecta OneSignal

1

Activa la integración

En OneSignal, navega a Data > Integrations > Snowflake.
2

Ingresa los detalles

  • Host: <your_account>.snowflakecomputing.com
  • Puerto: Opcional, por defecto es 443
  • Base de datos: p. ej., ONESIGNAL
  • Rol: Opcional, usa el rol predeterminado del usuario si se omite
  • Usuario: p. ej., ONESIGNAL_USER
  • Clave privada: Pega el contenido de tu archivo de clave privada (rsa_key.p8)
  • Frase de contraseña de clave privada: Opcional, solo si tu clave privada está cifrada
  • Ubicación de procesamiento de datos: Dónde se procesan los datos antes de enviarlos a Snowflake
3

Configura la integración

  • Frecuencia de sincronización: tan frecuente como cada 15 minutos
  • Nombres de esquema/tabla: preestablecidos como onesignal_events_<app-id> y message_events (editable)
  • Tipos de eventos: elige cuáles sincronizar: selecciona todos o solo los que necesitas
4

Selecciona eventos

Selecciona los eventos que deseas recibir en tu almacén de Snowflake.
5

Completa la configuración

Haz clic en Save y espera la confirmación de éxito
La sincronización de datos inicial puede tardar entre 15 y 30 minutos en aparecer en Snowflake.Mientras esperas, envía mensajes a través de push, correo electrónico, in-app o SMS para activar los eventos seleccionados.

5. Ver datos en Snowflake

Una vez que se complete la sincronización inicial, consulta los datos de eventos de OneSignal:
Si encuentras problemas como esquemas faltantes, errores de permisos o eventos con formato incorrecto, contacta a support@onesignal.com.

Eventos y propiedades de mensajes

Tipos de eventos de mensajes

Propiedad: event_kind Tipo: String El tipo de mensaje y evento (por ejemplo, message.push.received, message.push.sent).

Esquema de datos de eventos

Para cada evento de mensaje generado por un usuario, los siguientes metadatos se adjuntarán al registro.

Notas

  • Las sincronizaciones después de guardar/activar pueden tardar de 15 a 30 minutos adicionales en completarse.
  • Desactivar aún puede resultar en una sincronización final después de la desactivación.
  • Para garantizar una sincronización de datos eficiente, nuestro sistema crea y gestiona automáticamente conjuntos de datos de preparación. Estos conjuntos de datos, nombrados con un patrón como fivetran_{dos palabras aleatorias}_staging, almacenan temporalmente datos durante el procesamiento antes de que se integren en su esquema principal. Estos conjuntos de datos de preparación son esenciales para mantener un flujo de trabajo optimizado y no deben eliminarse, ya que se recrearán automáticamente.

Migración desde la versión heredada

Si actualmente estás usando la integración heredada de Snowflake, esta sección cubre las diferencias clave y cómo migrar tus consultas.

Diferencias clave

Cambios de esquema

La nueva integración crea columnas bajo demanda. Si ningún evento contiene datos para un campo particular, esa columna no existirá en tu tabla. Cuando aparezcan datos para ese campo, la columna se creará automáticamente.

Cambios de nombre de columnas

Inferencia de tipos

La nueva integración utiliza inferencia automática de tipos. Si todos los valores en una columna son numéricos (p. ej., todos tus valores EXTERNAL_ID son números), la columna puede ser tipada como NUMBER. Si aparece un valor no numérico más tarde, el tipo de columna se promociona a VARCHAR. Usa conversión explícita si es necesario:

Migración de consultas

Para migrar consultas existentes:
  1. Actualiza las referencias a la base de datos heredada para apuntar a tu nueva base de datos de Snowflake
  2. Ten en cuenta los cambios de nombre de columnas listados arriba
  3. Añade conversión de tipos explícita donde sea necesario
Opcionalmente, crea una vista de compatibilidad que haga alias de los nuevos nombres de columna a los nombres heredados:
Reemplaza ONESIGNAL_DB.ONESIGNAL_EVENTS_XXXXX.MESSAGE_EVENTS con tus nombres reales de base de datos, esquema y tabla.
Para desconectar tu compartición de datos heredada, contacta a snowflake-data-sharing@onesignal.com.

Configuración de entrada

Importa datos de eventos de comportamiento desde Snowflake a OneSignal para:
  • Activar Journeys basados en la actividad del usuario
  • Personalizar mensajes basados en datos de comportamiento
Requisitos
  • Cuenta de Snowflake con acceso al almacén
  • Datos de eventos almacenados en tablas o vistas de Snowflake
  • Conectividad de red desde OneSignal a tu instancia de Snowflake
  • Credenciales de usuario con los permisos apropiados
1

Crear rol dedicado para OneSignal

Crea una jerarquía de roles siguiendo las mejores prácticas de Snowflake:
2

Crear almacén dedicado

Crea un almacén optimizado en costos para las operaciones de OneSignal:
3

Crear usuario y otorgar permisos

Crea el usuario de OneSignal y otorga acceso a tus datos de eventos:
4

Crear base de datos de contabilidad (Motor de sincronización avanzado)

Crea una base de datos privada para la gestión del estado de sincronización de OneSignal:
Omite este paso si utilizas el motor de sincronización básico o el modo de solo lectura.
5

Configurar autenticación

Configura la autenticación de par de claves (recomendado) para mayor seguridad:
  1. Genera un par de claves pública/privada siguiendo la documentación de Snowflake
  2. Configura la clave pública en tu usuario de Snowflake
  3. Usa la clave privada en la configuración de conexión de OneSignal
Alternativamente, puedes usar autenticación por contraseña (obsoleto - se bloqueará en noviembre de 2025).
6

Conectar a OneSignal

En OneSignal, vaya a Datos > Integraciones y haga clic en Agregar integración.Selecciona Snowflake y proporciona los siguientes detalles de conexión:
  • Nombre de cuenta: Tu identificador de cuenta de Snowflake (p. ej., abc123.us-east-1)
  • Almacén: CENSUS_WAREHOUSE
  • Usuario: CENSUS
  • Base de datos: El nombre de tu base de datos de eventos
  • Esquema: El nombre de tu esquema de datos de eventos
  • Autenticación: Par de claves (proporciona la clave privada y la frase de contraseña opcional)

Mapeo de datos de eventos

Mapee su de al formato de eventos personalizados de OneSignal:

Esquema de tabla de eventos de ejemplo

Modo de consulta SQL

Escribe consultas SQL personalizadas para transformar tus datos de eventos:

Configuración avanzada

Gestión de costos del almacén

  • Usa tamaño de almacén X-Small para optimización de costos
  • Configura suspensión automática (60 segundos) y reanudación automática
  • Programa sincronizaciones durante horas de menor actividad
  • Considera compartir el almacén con otros sistemas de procesamiento por lotes

Soporte de sincronizaciones en vivo

Para el procesamiento de eventos en tiempo real, habilita el seguimiento de cambios en tus tablas de eventos:

Seguridad de red

Si utilizas la política de red de IPs permitidas de Snowflake, agrega las direcciones IP de OneSignal a tu lista de permitidos. Contacta al soporte de OneSignal para conocer los rangos de IP actuales.

Limitaciones

  • Las consultas analíticas complejas pueden afectar el rendimiento y los costos del almacén
  • La autenticación por Usuario/Contraseña quedará obsoleta en noviembre de 2025
  • La base de datos CENSUS está reservada solo para operaciones de OneSignal

Preguntas frecuentes

¿Qué método de autenticación debo usar?

Usa autenticación de par de claves (recomendado). La autenticación por Usuario/Contraseña será bloqueada por Snowflake a partir de noviembre de 2025.

¿Puedo usar un almacén existente?

Sí, puedes compartir un almacén con otros sistemas de procesamiento por lotes como dbt o Fivetran para optimizar costos. Asegúrate de que el almacén tenga capacidad suficiente para tus necesidades de procesamiento de eventos.

¿Cómo puedo optimizar los costos?

  • Usa tamaño de almacén X-Small
  • Configura suspensión automática agresiva (60 segundos)
  • Programa sincronizaciones durante horas de menor actividad
  • Usa sincronizaciones por hora/diarias en lugar de sincronización continua