Skip to content

Atributos del perfil de usuario

Esta página sirve de referencia para las vistas de atributos predeterminados y personalizados en Snowflake. Hay tres vistas para atributos predeterminados y tres vistas para atributos personalizados, cada una diseñada para un caso de uso específico con sus propias consideraciones de rendimiento.

Paridad de datos con el panel

En circunstancias excepcionales, los valores de atributos predeterminados y personalizados en las vistas de Snowflake de esta página pueden no coincidir con lo que ves en el perfil de un usuario en el panel de Braze.

Por ejemplo, un atributo puede aparecer como NULL en Snowflake mientras que el panel muestra un valor para ese usuario.

Si observas discrepancias generalizadas, ponte en contacto con tu administrador de éxito de cliente o con soporte de Braze.

Vistas disponibles

Vistas disponibles
Tipo Vista Descripción
Atributo predeterminado USER_DEFAULT_ATTRIBUTES_VIEW_SHARED Instantáneas del perfil de usuario
USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED Perfiles de usuario en tiempo real
USER_DEFAULT_ATTRIBUTES_HISTORY_VIEW_SHARED Historial de cambios
Atributo personalizado USER_CUSTOM_ATTRIBUTES_VIEW_SHARED Instantáneas del perfil de usuario
USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED Perfiles de usuario en tiempo real
USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED Historial de cambios

Instantáneas del perfil de usuario

Estas vistas proporcionan instantáneas periódicas de los atributos del perfil de usuario. Los datos se retrasan hasta 12 horas, por lo que resultan útiles para consultas que no requieren actualizaciones en tiempo real.

  • USER_DEFAULT_ATTRIBUTES_VIEW_SHARED
  • USER_CUSTOM_ATTRIBUTES_VIEW_SHARED

Uso

  • Proporciona una instantánea de los atributos del usuario con un retraso de hasta 12 horas.
  • Funciona bien para consultas que no requieren precisión en tiempo real.
  • Ejecución más rápida de la consulta, sobre todo al filtrar por atributos distintos de USER_ID.
  • Limitación: Los datos no están actualizados en tiempo real.

Esquema de USER_DEFAULT_ATTRIBUTES_VIEW_SHARED

Nombre de columna Tipo de datos Descripción
APP_GROUP_ID VARCHAR Identificador de tu espacio de trabajo de Braze
APP_ID VARCHAR La aplicación específica dentro de tu espacio de trabajo
USER_ID VARCHAR El identificador único de usuario de Braze
TIME NUMBER Marca de tiempo unix (segundos) de la actualización del perfil
TIME_MS NUMBER Marca de tiempo unix (milisegundos) de la actualización del perfil
UPDATE_SOURCE VARCHAR El origen de la actualización del atributo (API, SDK, panel, etc.)
SF_UPDATED_AT TIMESTAMP_NTZ Cuándo se actualizaron los datos por última vez en Snowflake
EXTERNAL_USER_ID VARCHAR Tu propio identificador de usuario (si se ha establecido)
FIRST_NAME VARCHAR Nombre del usuario
LAST_NAME VARCHAR Apellido del usuario
EMAIL_ADDRESS VARCHAR Dirección de correo electrónico del usuario
GENDER VARCHAR Género del usuario
PHONE_NUMBER VARCHAR Número de teléfono del usuario
DOB VARCHAR Fecha de nacimiento del usuario
TIME_ZONE VARCHAR Zona horaria del usuario
HOME_CITY VARCHAR Ciudad de residencia del usuario
COUNTRY VARCHAR País del usuario
LANGUAGE VARCHAR Preferencia de idioma del usuario
ARCHIVED BOOLEAN Si el perfil de usuario está archivado

Esquema de USER_CUSTOM_ATTRIBUTES_VIEW_SHARED

Nombre de columna Tipo de datos Descripción
APP_GROUP_ID VARCHAR Identificador de tu espacio de trabajo de Braze
APP_ID VARCHAR La aplicación específica dentro de tu espacio de trabajo
USER_ID VARCHAR El identificador único de usuario de Braze
EXTERNAL_USER_ID VARCHAR Tu propio identificador de usuario (si se ha establecido)
TIME NUMBER Marca de tiempo unix (segundos) de la actualización del perfil
TIME_MS NUMBER Marca de tiempo unix (milisegundos) de la actualización del perfil
UPDATE_SOURCE VARCHAR El origen de la actualización del atributo (API, SDK, panel, etc.)
SF_UPDATED_AT TIMESTAMP_NTZ Cuándo se actualizaron los datos por última vez en Snowflake
CUSTOM_ATTRIBUTES VARIANT Objeto JSON que contiene todos los atributos personalizados (pares clave-valor)
ARCHIVED BOOLEAN Si el perfil de usuario está archivado

Trabajar con CUSTOM_ATTRIBUTES

La columna CUSTOM_ATTRIBUTES almacena todos tus atributos personalizados como un objeto JSON. Puedes acceder a atributos individuales utilizando las funciones JSON de Snowflake.

Ejemplo: consultar atributos personalizados específicos

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
-- Get users with a specific loyalty tier
SELECT
  USER_ID,
  EXTERNAL_USER_ID,
  CUSTOM_ATTRIBUTES:loyalty_tier::STRING as loyalty_tier,
  CUSTOM_ATTRIBUTES:points::NUMBER as points
FROM USER_CUSTOM_ATTRIBUTES_VIEW_SHARED
WHERE CUSTOM_ATTRIBUTES:loyalty_tier::STRING = 'gold';

-- Get users who made a purchase above a certain amount
SELECT
  USER_ID,
  CUSTOM_ATTRIBUTES:last_purchase_amount::NUMBER as last_purchase_amount
FROM USER_CUSTOM_ATTRIBUTES_VIEW_SHARED
WHERE CUSTOM_ATTRIBUTES:last_purchase_amount::NUMBER > 100;

Ejemplo: analizar datos de atributos personalizados

1
2
3
4
5
6
7
8
9
10
11
12
13
14
-- Count users by subscription status
SELECT
  CUSTOM_ATTRIBUTES:subscription_status::STRING as subscription_status,
  COUNT(*) as user_count
FROM USER_CUSTOM_ATTRIBUTES_VIEW_SHARED
GROUP BY CUSTOM_ATTRIBUTES:subscription_status::STRING;

-- Find average order value by customer segment
SELECT
  CUSTOM_ATTRIBUTES:customer_segment::STRING as segment,
  AVG(CUSTOM_ATTRIBUTES:lifetime_value::NUMBER) as avg_lifetime_value
FROM USER_CUSTOM_ATTRIBUTES_VIEW_SHARED
WHERE CUSTOM_ATTRIBUTES:customer_segment IS NOT NULL
GROUP BY CUSTOM_ATTRIBUTES:customer_segment::STRING;

Vistas del perfil de usuario en tiempo real

Estas vistas proporcionan actualizaciones casi en tiempo real de los atributos del perfil de usuario, con datos retrasados hasta 10 minutos después de que se produzca una actualización en Braze.

  • USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED
  • USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED

Uso

  • Proporciona atributos de usuario actualizados con un retraso mínimo (~10 minutos).
  • Útil para análisis en tiempo real y situaciones en las que se necesitan datos recientes.
  • Consideraciones de rendimiento:
    • Las consultas sobre usuarios individuales son más rápidas (menos de un minuto utilizando un almacén grande).
    • Las consultas sin filtros de USER_ID requieren la agregación de todos los usuarios, lo que conlleva tiempos de ejecución significativamente más largos.
    • Las consultas en un gran conjunto de datos (como más de 100 millones de usuarios) pueden tardar muchos minutos.

Esquema de USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED

Nombre de columna Tipo de datos Descripción
APP_GROUP_ID VARCHAR Identificador de tu espacio de trabajo de Braze
APP_ID VARCHAR La aplicación específica dentro de tu espacio de trabajo
USER_ID VARCHAR El identificador único de usuario de Braze
TIME NUMBER Marca de tiempo unix (segundos) de la actualización del perfil
TIME_MS NUMBER Marca de tiempo unix (milisegundos) de la actualización del perfil
UPDATE_SOURCE VARCHAR El origen de la actualización del atributo (API, SDK, panel, etc.)
ARCHIVED BOOLEAN Si el perfil de usuario está archivado
SF_UPDATED_AT TIMESTAMP_LTZ Cuándo se actualizaron los datos por última vez en Snowflake
EXTERNAL_USER_ID VARCHAR Tu propio identificador de usuario (si se ha establecido)
FIRST_NAME VARCHAR Nombre del usuario
LAST_NAME VARCHAR Apellido del usuario
EMAIL_ADDRESS VARCHAR Dirección de correo electrónico del usuario
GENDER VARCHAR Género del usuario
PHONE_NUMBER VARCHAR Número de teléfono del usuario
DOB VARCHAR Fecha de nacimiento del usuario
HOME_CITY VARCHAR Ciudad de residencia del usuario
COUNTRY VARCHAR País del usuario
LANGUAGE VARCHAR Preferencia de idioma del usuario
TIME_ZONE VARCHAR Zona horaria del usuario

Esquema de USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED

Nombre de columna Tipo de datos Descripción
APP_GROUP_ID VARCHAR Identificador de tu espacio de trabajo de Braze
USER_ID VARCHAR El identificador único de usuario de Braze
EXTERNAL_USER_ID VARCHAR Tu propio identificador de usuario (si se ha establecido)
TIME NUMBER Marca de tiempo unix (segundos) de la actualización del perfil
TIME_MS NUMBER Marca de tiempo unix (milisegundos) de la actualización del perfil
UPDATE_SOURCE VARCHAR El origen de la actualización del atributo (API, SDK, panel, etc.)
ARCHIVED BOOLEAN Si el perfil de usuario está archivado
SF_UPDATED_AT TIMESTAMP_NTZ Cuándo se actualizaron los datos por última vez en Snowflake
APP_ID VARCHAR La aplicación específica dentro de tu espacio de trabajo
CUSTOM_ATTRIBUTES OBJECT Objeto JSON que contiene todos los atributos personalizados (pares clave-valor)

Historial de cambios

Estas vistas almacenan registros de cambios históricos de los atributos de los usuarios, capturando los cambios con una granularidad de 12 horas.

  • USER_DEFAULT_ATTRIBUTES_HISTORY_VIEW_SHARED
  • USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED

Uso

  • Proporciona un registro de los cambios históricos en los atributos de los usuarios durante un periodo continuo de 6 meses.
  • Los datos se capturan en instantáneas cada 12 horas, lo que significa que varias actualizaciones en esta ventana se combinan en un único registro. Los cambios individuales dentro de este periodo no se conservan por separado.
  • EFF_DT y END_DT marcan el inicio y el final del estado de atributo de un usuario.

Esquema de USER_DEFAULT_ATTRIBUTES_HISTORY_VIEW_SHARED

Nombre de columna Tipo de datos Descripción
APP_GROUP_ID VARCHAR Identificador de tu espacio de trabajo de Braze
USER_ID VARCHAR El identificador único de usuario de Braze
APP_ID VARCHAR La aplicación específica dentro de tu espacio de trabajo
TIME NUMBER Marca de tiempo unix (segundos) de la actualización del perfil
TIME_MS NUMBER Marca de tiempo unix (milisegundos) de la actualización del perfil
UPDATE_SOURCE VARCHAR El origen de la actualización del atributo (API, SDK, panel, etc.)
SF_UPDATED_AT TIMESTAMP_NTZ Cuándo se actualizaron los datos por última vez en Snowflake
EXTERNAL_USER_ID VARCHAR Tu propio identificador de usuario (si se ha establecido)
FIRST_NAME VARCHAR Nombre del usuario
LAST_NAME VARCHAR Apellido del usuario
EMAIL_ADDRESS VARCHAR Dirección de correo electrónico del usuario
GENDER VARCHAR Género del usuario
PHONE_NUMBER VARCHAR Número de teléfono del usuario
DOB VARCHAR Fecha de nacimiento del usuario
TIME_ZONE VARCHAR Zona horaria del usuario
HOME_CITY VARCHAR Ciudad de residencia del usuario
COUNTRY VARCHAR País del usuario
LANGUAGE VARCHAR Preferencia de idioma del usuario
EFF_DT TIMESTAMP_NTZ Fecha efectiva: cuándo comenzó este estado de atributo
END_DT TIMESTAMP_NTZ Fecha de fin: cuándo terminó este estado de atributo (NULL para el estado actual)

Esquema de USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED

Nombre de columna Tipo de datos Descripción
APP_GROUP_ID VARCHAR Identificador de tu espacio de trabajo de Braze
USER_ID VARCHAR El identificador único de usuario de Braze
APP_ID VARCHAR La aplicación específica dentro de tu espacio de trabajo
EXTERNAL_USER_ID VARCHAR Tu propio identificador de usuario (si se ha establecido)
TIME NUMBER Marca de tiempo unix (segundos) de la actualización del perfil
TIME_MS NUMBER Marca de tiempo unix (milisegundos) de la actualización del perfil
UPDATE_SOURCE VARCHAR El origen de la actualización del atributo (API, SDK, panel, etc.)
SF_UPDATED_AT TIMESTAMP_NTZ Cuándo se actualizaron los datos por última vez en Snowflake
CUSTOM_ATTRIBUTES VARIANT Objeto JSON que contiene todos los atributos personalizados (pares clave-valor)
ARCHIVED BOOLEAN Si el perfil de usuario está archivado
EFF_DT TIMESTAMP_NTZ Fecha efectiva: cuándo comenzó este estado de atributo
END_DT TIMESTAMP_NTZ Fecha de fin: cuándo terminó este estado de atributo (NULL para el estado actual)

Casos de uso comunes

Crear segmentos de usuarios

1
2
3
4
5
6
7
8
9
10
11
12
13
-- Find active users in a specific city who haven't received an email recently
SELECT
  d.EXTERNAL_USER_ID,
  d.EMAIL_ADDRESS,
  d.HOME_CITY,
  c.CUSTOM_ATTRIBUTES:last_email_sent::TIMESTAMP as last_email_sent
FROM USER_DEFAULT_ATTRIBUTES_VIEW_SHARED d
JOIN USER_CUSTOM_ATTRIBUTES_VIEW_SHARED c
  ON d.USER_ID = c.USER_ID
WHERE d.HOME_CITY = 'New York'
  AND d.EMAIL_ADDRESS IS NOT NULL
  AND (c.CUSTOM_ATTRIBUTES:last_email_sent::TIMESTAMP < DATEADD(day, -30, CURRENT_TIMESTAMP())
       OR c.CUSTOM_ATTRIBUTES:last_email_sent IS NULL);

Analizar el comportamiento del usuario a lo largo del tiempo

1
2
3
4
5
6
7
8
9
10
-- Track how a user's loyalty tier changed over the past 6 months
SELECT
  USER_ID,
  CUSTOM_ATTRIBUTES:loyalty_tier::STRING as loyalty_tier,
  EFF_DT,
  END_DT
FROM USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED
WHERE USER_ID = 'user_123'
  AND EFF_DT >= DATEADD(month, -6, CURRENT_TIMESTAMP())
ORDER BY EFF_DT DESC;

Combinar atributos predeterminados y personalizados

1
2
3
4
5
6
7
8
9
10
11
12
13
14
-- Get a complete user profile with both default and custom attributes
SELECT
  d.EXTERNAL_USER_ID,
  d.FIRST_NAME,
  d.LAST_NAME,
  d.EMAIL_ADDRESS,
  d.COUNTRY,
  c.CUSTOM_ATTRIBUTES:subscription_status::STRING as subscription_status,
  c.CUSTOM_ATTRIBUTES:lifetime_value::NUMBER as lifetime_value,
  c.CUSTOM_ATTRIBUTES:last_purchase_date::DATE as last_purchase_date
FROM USER_DEFAULT_ATTRIBUTES_VIEW_SHARED d
LEFT JOIN USER_CUSTOM_ATTRIBUTES_VIEW_SHARED c
  ON d.USER_ID = c.USER_ID
WHERE d.EXTERNAL_USER_ID = 'customer_456';

Encontrar clientes de alto valor

1
2
3
4
5
6
7
8
9
10
11
12
-- Identify users with high lifetime value who are at risk of churning
SELECT
  d.EXTERNAL_USER_ID,
  d.EMAIL_ADDRESS,
  c.CUSTOM_ATTRIBUTES:lifetime_value::NUMBER as lifetime_value,
  c.CUSTOM_ATTRIBUTES:days_since_last_purchase::NUMBER as days_since_last_purchase
FROM USER_DEFAULT_ATTRIBUTES_VIEW_SHARED d
JOIN USER_CUSTOM_ATTRIBUTES_VIEW_SHARED c
  ON d.USER_ID = c.USER_ID
WHERE c.CUSTOM_ATTRIBUTES:lifetime_value::NUMBER > 1000
  AND c.CUSTOM_ATTRIBUTES:days_since_last_purchase::NUMBER > 90
ORDER BY c.CUSTOM_ATTRIBUTES:lifetime_value::NUMBER DESC;

Buenas prácticas

Caso de uso Vistas recomendadas Notas
Consultas generales que no requieren actualizaciones recientes USER_DEFAULT_ATTRIBUTES_VIEW_SHARED y USER_CUSTOM_ATTRIBUTES_VIEW_SHARED Ejecución rápida, con datos de hasta 12 horas de antigüedad.
Consultas que requieren los últimos atributos del usuario USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED y USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED Proporciona actualizaciones casi en tiempo real, pero puede ser más lento para grandes conjuntos de datos.
Seguimiento histórico de los cambios de atributos USER_DEFAULT_ATTRIBUTES_HISTORY_VIEW_SHARED y USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED Almacena los cambios de atributos con una granularidad de 12 horas.

Consideraciones de rendimiento

  • Las consultas en USER_DEFAULT_ATTRIBUTES_VIEW_SHARED o USER_CUSTOM_ATTRIBUTES_VIEW_SHARED deberían dar resultados en menos de 10 segundos para grandes conjuntos de datos (~1000 millones de usuarios) en un almacén grande.
  • Las consultas en USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED o USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED para un solo usuario se devuelven en menos de un minuto, pero escalan mal sin filtrar por USER_ID.
  • Las consultas sobre más de 100 millones de usuarios en USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED o USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED pueden tardar varios minutos debido a la agregación por usuario.
New Stuff!