> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Starburst Galaxy

> Sincroniza eventos personalizados desde Starburst Galaxy a OneSignal para activar Journeys automatizados y campañas de mensajería personalizadas basadas en el comportamiento del usuario.

export const PLATFORM_0 = "Starburst Galaxy"

export const DATA_TYPE_0 = "event data"

export const COLUMN_HEADER_0 = "Galaxy Column"

export const PROPERTIES_DESCRIPTION_0 = "Event metadata as JSON"

## Descripción general

La integración OneSignal + Starburst Galaxy habilita la sincronización de eventos personalizados desde tu clúster de Starburst Galaxy a OneSignal para activar campañas de mensajería automatizadas y Journeys basados en el comportamiento del usuario.

Starburst Galaxy es una plataforma de análisis en la nube completamente gestionada basada en Trino, diseñada para consultas SQL rápidas a través de data lakes y warehouses en la nube.

***

## Requisitos

* Access to [Event Streams](/docs/en/event-streams) for outbound message events (Plan limitations and overages apply)
* Access to [Custom Events](/docs/en/custom-events) for inbound event syncing (Plan limitations and overages apply)
* [Updated Account Plan](https://onesignal.com/pricing) (not available on free apps)

### Starburst Galaxy

* **Clúster de Starburst Galaxy** con acceso de red
* **Credenciales de usuario** con permisos apropiados
* **Soporte de conexión TLS** (integrado en Galaxy)
* **Datos de eventos** accesibles a través de catálogos de Galaxy

***

## Configuración

<Steps>
  <Step title="Obtener detalles de conexión JDBC de Galaxy">
    En tu consola de Starburst Galaxy, navega a los detalles de conexión de tu clúster.

    **Ejemplo de URL JDBC:**

    ```
    jdbc:trino://census-example-cluster.trino.galaxy.starburst.io:[email protected]/accountadmin
    ```

    **Extraer hostname para OneSignal:**

    ```
    census-example-cluster.trino.galaxy.starburst.io
    ```

    <Info>
      OneSignal usa JDBC para conectarse a Starburst Galaxy. Solo necesitas la porción de hostname de la URL JDBC de Galaxy.
    </Info>
  </Step>

  <Step title="Configurar conexión de Starburst Galaxy">
    In OneSignal, go to **Data > Integrations** and click **Add Integration**.

    Selecciona **Starburst Galaxy** y proporciona los siguientes detalles de conexión:

    * **Host:** El hostname de tu clúster de Galaxy (del Paso 1)
    * **Username:** Tu nombre de usuario de Galaxy
    * **Password:** Tu contraseña de Galaxy
    * **Port:** 443 (predeterminado para Galaxy)
  </Step>

  <Step title="Configurar Motor de Sincronización Avanzado (Opcional)">
    Para rendimiento mejorado, configura un catálogo CENSUS dedicado en Galaxy:

    1. Crea un catálogo llamado `CENSUS` conteniendo un esquema llamado `CENSUS`
    2. Asegúrate de que tu conector soporte:
       * Operaciones `CREATE TABLE` y `DROP TABLE`
       * Escrituras de tabla (INSERT, DELETE, UPDATE)
       * Declaración `CREATE OR REPLACE TABLE`
    3. Otorga permisos completos en el esquema `CENSUS.CENSUS` a tu usuario de OneSignal

    <Info>
      Las configuraciones probadas incluyen catálogos de MySQL, PostgreSQL, Snowflake, Iceberg y Starburst Galaxy.
    </Info>
  </Step>
</Steps>

***

### Event data mapping

Map your {PLATFORM_0} {DATA_TYPE_0} to OneSignal's custom events format:

| OneSignal Field | {COLUMN_HEADER_0} | Description                | Required |
| --------------- | ----------------- | -------------------------- | -------- |
| `name`          | `event_name`      | Event identifier           | Yes      |
| `external_id`   | `user_id`         | User identifier            | Yes      |
| `timestamp`     | `event_timestamp` | When event occurred        | No       |
| `properties`    | `event_data`      | {PROPERTIES_DESCRIPTION_0} | No       |

### Ejemplo de consulta de eventos

```sql theme={null}
-- Ejemplo: Eventos recientes de alto valor a través de catálogos de Galaxy
SELECT
    event_name,
    user_id,
    event_timestamp,
    CAST(event_properties AS JSON) as event_properties
FROM catalog.schema.user_events
WHERE event_timestamp >= current_timestamp - INTERVAL '7' DAY
    AND JSON_EXTRACT_SCALAR(event_properties, '$.value') > '100'
ORDER BY event_timestamp DESC;
```

### Consultas de Data Lake en la nube

```sql theme={null}
-- Ejemplo: Consulta federada a través de fuentes de datos en la nube
SELECT
    'cloud_activity' as event_name,
    u.user_id,
    current_timestamp as event_timestamp,
    JSON_FORMAT(JSON_OBJECT(
        's3_interactions', s.interaction_count,
        'snowflake_orders', sf.order_count,
        'bigquery_analytics', bq.score_value
    )) as event_properties
FROM s3_catalog.users.profiles u
LEFT JOIN s3_catalog.interactions.summary s ON u.user_id = s.user_id
LEFT JOIN snowflake_catalog.orders.summary sf ON u.user_id = sf.user_id
LEFT JOIN bigquery_catalog.analytics.scores bq ON u.user_id = bq.user_id
WHERE u.created_date >= current_date - INTERVAL '30' DAY;
```

***

## Opciones de motor de sincronización

### Motor de Sincronización Básico

* Funciona con cualquier catálogo y conector de Galaxy
* Seguimiento de estado gestionado por infraestructura de OneSignal
* Configuración más simple sin requisitos adicionales

### Motor de Sincronización Avanzado

* Rendimiento mejorado con seguimiento de estado local
* Requiere catálogo y esquema `CENSUS.CENSUS` dedicado
* Soporta conectores con operaciones de escritura de tabla
* Recomendado para procesamiento de eventos en la nube de alto volumen

***

## Conectores soportados

El Motor de Sincronización Avanzado de OneSignal ha sido probado con:

* **Conector MySQL** (modo lectura-escritura)
* **Conector PostgreSQL** (modo lectura-escritura)
* **Conector Snowflake** (modo lectura-escritura)
* **Conector Iceberg** (con S3 y AWS Glue)
* **Catálogo Starburst Galaxy** (almacenamiento nativo de Galaxy)

***

## Características de plataforma en la nube

### Federación multi-nube

* Consulta a través de fuentes de datos de AWS, Azure y GCP
* Combina datos de S3, Snowflake, BigQuery y Azure
* Análisis de eventos unificado a través de proveedores de nube

### Infraestructura gestionada

* Clústeres Trino completamente gestionados con auto-escalado
* Características de seguridad y cumplimiento integradas
* No se requiere gestión de infraestructura

### Catálogos nativos de Galaxy

* Almacenamiento nativo de Galaxy de alto rendimiento
* Integración perfecta con el ecosistema de Galaxy
* Optimizado para cargas de trabajo de análisis en la nube

***

## Limitaciones

* Conexión TLS requerida (integrada en Galaxy)
* El Motor de Sincronización Avanzado requiere soporte de `CREATE OR REPLACE TABLE`
* Warehouse Writeback aún no soportado (próximamente)
* No se pueden proporcionar opciones de tabla personalizadas en la cláusula `WITH`

***

## FAQ

### ¿Cómo obtengo mi hostname de clúster de Galaxy?

En tu consola de Starburst Galaxy, ve a los detalles de conexión de tu clúster y copia la URL JDBC. Extrae solo la porción de hostname (sin el prefijo `jdbc:trino://`) para usar en OneSignal.

### ¿Puedo consultar múltiples fuentes de datos en la nube?

¡Sí! Las capacidades de consulta federada de Starburst Galaxy te permiten combinar datos de eventos de múltiples fuentes en la nube (S3, Snowflake, BigQuery, etc.) en una sola consulta.

### ¿Galaxy soporta auto-escalado para cargas de trabajo de OneSignal?

Sí, Starburst Galaxy escala automáticamente los clústeres según la carga de consultas, asegurando rendimiento óptimo para tu procesamiento de eventos de OneSignal sin intervención manual.
