Ir al contenido

Configuración de tablas de ingesta de datos en la nube

Usa esta página para elegir cómo la ingesta de datos en la nube (CDI) lee tus datos y para configurar una tabla de origen con una columna PAYLOAD si utilizas ese método.

Elige una opción de definición de datos

Cuando creas una sincronización desde un almacén de datos, en el paso Definición de datos eliges cómo lee Braze tus datos. Las opciones disponibles dependen del tipo de sincronización.

Opción Cómo funciona Disponible para
Visual Introduce una tabla o vista y asigna sus columnas a campos de Braze en el panel, sin escribir SQL. Para más detalles, consulta Asignador visual. Sincronizaciones de atributos de usuario, eventos personalizados y desencadenantes de Canvas en almacenes de datos.
SQL Escribe una consulta sobre tu origen. Las columnas que devuelve tu consulta se convierten en campos de Braze. Para más detalles, consulta Editor SQL. Todos los tipos de sincronización en almacenes de datos.
Columna PAYLOAD Crea una tabla o vista en tu origen con columnas de identificadores aceptados por Braze, UPDATED_AT y PAYLOAD, donde PAYLOAD contiene un objeto JSON en un formato de la REST API de Braze, como /users/track para sincronizaciones de atributos de usuario. Después, crea una sincronización de CDI, selecciona Tabla o Visual en el paso Definición de datos e introduce el nombre de la tabla. Para conocer los requisitos, consulta las secciones siguientes. Todos los tipos de sincronización en todos los orígenes, incluido el almacenamiento de archivos.

Orientación sobre la organización de datos

Cada sincronización de CDI actualiza un tipo de datos a la vez, como atributos de usuario, eventos personalizados, eventos de compra o artículos del catálogo. Cuando configures tus tablas o vistas de origen, organiza tus datos según cómo planeas sincronizarlos:

  • Una tabla por tipo de datos: Crear tablas o vistas independientes para cada tipo de datos (por ejemplo, user_attributes, custom_events, purchases) te ofrece una separación clara y facilita la administración de distintos horarios de sincronización y definiciones de datos.
  • Tabla de origen compartida: Si usas los modos de asignación visual o SQL, varias sincronizaciones pueden extraer datos de la misma tabla de origen. Por ejemplo, una sincronización de atributos y una sincronización de eventos pueden consultar la misma tabla, pero igualmente creas sincronizaciones independientes en el panel de Braze: una para atributos y otra para eventos. Cada sincronización asigna o consulta solo las columnas que necesita.

Elige el enfoque que mejor se adapte a tu canalización de datos y a la cantidad de casos de uso que administras. Ambos patrones funcionan a medida que tus casos de uso crecen.

Comprender la configuración de la tabla en comparación con el formato de la carga útil

Para las sincronizaciones de datos de usuario de CDI que usan una columna PAYLOAD, configura ambos elementos:

Capa Qué controla
Configuración de la tabla de origen Columnas obligatorias, identificadores de usuario y comportamiento de sincronización de UPDATED_AT
Formato de la carga útil Campos JSON en PAYLOAD, incluida la estructura de objetos para atributos, eventos y compras

Braze lee primero las filas de tu tabla de origen y luego valida el campo PAYLOAD según el tipo de datos seleccionado.

Configura tu tabla de origen

Para las sincronizaciones de datos de usuario desde un almacén de datos que utilizan una columna PAYLOAD, tu tabla o vista de origen debe incluir:

  • UPDATED_AT
  • PAYLOAD
  • Una o más columnas de identificador de usuario compatibles:
    • EXTERNAL_ID
    • ALIAS_NAME y ALIAS_LABEL
    • BRAZE_ID
    • EMAIL
    • PHONE

Cada fila debe incluir un solo tipo de identificador a la vez, aunque tu tabla contenga varias columnas de identificador.

Requisitos de UPDATED_AT

  • Almacena los valores de UPDATED_AT en UTC para evitar problemas con el horario de verano.
  • Braze sincroniza las filas cuyo UPDATED_AT es posterior al último valor sincronizado.
  • Las filas con la marca de tiempo límite exacta pueden volver a sincronizarse si hay filas nuevas que comparten esa marca de tiempo.

Para obtener orientación sobre marcas de tiempo duplicadas y actualizaciones incrementales, consulta Prácticas recomendadas para la ingesta de datos en la nube.

Configurar la columna PAYLOAD

El valor de PAYLOAD sigue los mismos formatos de objeto que usa el endpoint /users/track de Braze para el tipo de datos seleccionado.

Tipo de datos Referencia de formato
attributes Objeto de atributos de usuario
events Objeto de eventos
purchases Objeto de compras

Para los atributos anidados, incluye las fechas con el formato descrito en Capturar fechas como propiedades de objetos.

Ejemplos de carga útil

Puedes incluir atributos personalizados anidados en la columna de carga útil para una sincronización de atributos personalizados.

{
      "most_played_song": {
        "song_name": "Solea",
        "artist_name": "Miles Davis",
        "album_name": "Sketches of Spain",
        "genre": "Jazz",
        "play_analytics": {
            "count": 1000,
            "top_10_listeners": true
        }
      }
}

Para sincronizar eventos, se requiere un nombre de evento. Formatea el campo time como una cadena ISO 8601 o con el formato yyyy-MM-dd'T'HH:mm:ss:SSSZ. Si el campo time no está presente, Braze usa el valor de la columna UPDATED_AT como hora del evento. Los demás campos, incluidos app_id y properties, son opcionales.

Puedes sincronizar un evento por fila.

{
    "app_id" : "your-app-id",
    "name" : "rented_movie",
    "time" : "2013-07-16T19:20:45+01:00",
    "properties": {
        "movie": "The Sad Egg",
        "director": "Alex Smith"
    }
}

Para sincronizar eventos de compra, se requieren product_id, currency y price. Formatea el campo opcional time como una cadena ISO 8601 o con el formato yyyy-MM-dd'T'HH:mm:ss:SSSZ. Si el campo time no está presente, Braze usa el valor de la columna UPDATED_AT como hora del evento. Los demás campos, incluidos app_id, quantity y properties, son opcionales.

Puedes sincronizar un evento de compra por fila.

{
    "app_id" : "11ae5b4b-2445-4440-a04f-bf537764c9ad",
    "product_id" : "Completed Order",
    "currency" : "USD",
    "price" : 219.98,
    "time" : "2013-07-16T19:20:30+01:00",
    "properties" : {
        "products" : [ { "name": "Monitor", "category": "Gaming", "product_amount": 19.99 },
        { "name": "Gaming Keyboard", "category": "Gaming ", "product_amount": 199.99 }
        ]
    }
}

Para sincronizar los estados de los grupos de suscripción, incluye uno o más pares de subscription_group_id y subscription_state en cada fila.

{
    "subscription_groups" : [
        {
            "subscription_group_id": "subscription_group_identifier_1",
            "subscription_state": "unsubscribed"
        },
        {
            "subscription_group_id": "subscription_group_identifier_2",
            "subscription_state": "subscribed"
        },
        {
            "subscription_group_id": "subscription_group_identifier_3",
            "subscription_state": "subscribed"
        }
      ]
}
New Stuff!