Zum Inhalt springen

Attribute des Nutzerprofils

Diese Seite dient als Referenz für die Standard- und angepassten Attributansichten in Snowflake. Es gibt drei Ansichten für Standardattribute und drei Ansichten für angepasste Attribute, die jeweils für einen bestimmten Anwendungsfall mit eigenen Performance-Überlegungen konzipiert wurden.

Datenparität mit dem Dashboard

In seltenen Fällen stimmen die Werte von Standardattributen und angepassten Attributen in den Snowflake-Ansichten auf dieser Seite möglicherweise nicht mit dem überein, was Sie im Profil einer Nutzerin oder eines Nutzers im Braze-Dashboard sehen.

So kann ein Attribut in Snowflake beispielsweise als NULL erscheinen, während das Dashboard für diese:n Nutzer:in einen Wert anzeigt.

Wenn Sie weitreichende Abweichungen feststellen, wenden Sie sich an Ihren Customer-Success-Manager oder an den Braze-Support.

Verfügbarkeit der externen Nutzer-ID

Verfügbare Ansichten

Verfügbare Ansichten
Typ Ansicht Beschreibung
Standardattribut USER_DEFAULT_ATTRIBUTES_VIEW_SHARED Snapshots von Nutzerprofilen
USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED Nutzerprofile in Realtime
USER_DEFAULT_ATTRIBUTES_HISTORY_VIEW_SHARED Historische Änderungsprotokolle
Angepasstes Attribut USER_CUSTOM_ATTRIBUTES_VIEW_SHARED Snapshots von Nutzerprofilen
USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED Nutzerprofile in Realtime
USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED Historische Änderungsprotokolle

Snapshots von Nutzerprofilen

Diese Ansichten liefern regelmäßige Snapshots der Attribute von Nutzerprofilen. Die Daten sind um bis zu 12 Stunden verzögert und eignen sich daher für Anfragen, die keine Realtime-Updates erfordern.

  • USER_DEFAULT_ATTRIBUTES_VIEW_SHARED
  • USER_CUSTOM_ATTRIBUTES_VIEW_SHARED

Verwendung

  • Liefert einen Snapshot der Nutzerattribute mit einer Verzögerung von bis zu 12 Stunden.
  • Eignet sich gut für Anfragen, die keine Realtime-Genauigkeit erfordern.
  • Schnellere Ausführung von Anfragen, insbesondere beim Filtern nach anderen Attributen als USER_ID.
  • Einschränkung: Die Daten sind nicht in Realtime aktuell.

Schema von USER_DEFAULT_ATTRIBUTES_VIEW_SHARED

Spaltenname Datentyp Beschreibung
APP_GROUP_ID VARCHAR Bezeichner Ihres Braze-Workspace
APP_ID VARCHAR Die spezifische App innerhalb Ihres Workspace
USER_ID VARCHAR Der eindeutige Braze-Nutzerbezeichner
TIME NUMBER Unix-Zeitstempel (Sekunden) des Profil-Updates
TIME_MS NUMBER Unix-Zeitstempel (Millisekunden) des Profil-Updates
UPDATE_SOURCE VARCHAR Die Quelle des Attribut-Updates (API, SDK, Dashboard usw.)
SF_UPDATED_AT TIMESTAMP_NTZ Zeitpunkt, zu dem die Daten zuletzt in Snowflake aktualisiert wurden
EXTERNAL_USER_ID VARCHAR Ihr eigener Nutzerbezeichner (falls festgelegt). Kann je nach Workspace-Konfiguration bei vielen Profilen NULL sein.
FIRST_NAME VARCHAR Vorname der Nutzer:in
LAST_NAME VARCHAR Nachname der Nutzer:in
EMAIL_ADDRESS VARCHAR E-Mail-Adresse der Nutzer:in
GENDER VARCHAR Geschlecht der Nutzer:in
PHONE_NUMBER VARCHAR Telefonnummer der Nutzer:in
DOB VARCHAR Geburtsdatum der Nutzer:in
TIME_ZONE VARCHAR Zeitzone der Nutzer:in
HOME_CITY VARCHAR Wohnort der Nutzer:in
COUNTRY VARCHAR Land der Nutzer:in
LANGUAGE VARCHAR Bevorzugte Sprache der Nutzer:in
ARCHIVED BOOLEAN Ob das Nutzerprofil archiviert ist

Schema von USER_CUSTOM_ATTRIBUTES_VIEW_SHARED

Spaltenname Datentyp Beschreibung
APP_GROUP_ID VARCHAR Bezeichner Ihres Braze-Workspace
APP_ID VARCHAR Die spezifische App innerhalb Ihres Workspace
USER_ID VARCHAR Der eindeutige Braze-Nutzerbezeichner
EXTERNAL_USER_ID VARCHAR Ihr eigener Nutzerbezeichner (falls festgelegt). Kann je nach Workspace-Konfiguration bei vielen Profilen NULL sein.
TIME NUMBER Unix-Zeitstempel (Sekunden) des Profil-Updates
TIME_MS NUMBER Unix-Zeitstempel (Millisekunden) des Profil-Updates
UPDATE_SOURCE VARCHAR Die Quelle des Attribut-Updates (API, SDK, Dashboard usw.)
SF_UPDATED_AT TIMESTAMP_NTZ Zeitpunkt, zu dem die Daten zuletzt in Snowflake aktualisiert wurden
CUSTOM_ATTRIBUTES VARIANT JSON-Objekt mit allen angepassten Attributen (Schlüssel-Wert-Paare)
ARCHIVED BOOLEAN Ob das Nutzerprofil archiviert ist

Arbeiten mit CUSTOM_ATTRIBUTES

Die Spalte CUSTOM_ATTRIBUTES speichert alle Ihre angepassten Attribute als JSON-Objekt. Mit den JSON-Funktionen von Snowflake können Sie auf einzelne Attribute zugreifen.

Beispiel: Bestimmte angepasste Attribute abfragen

-- 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;

Beispiel: Daten angepasster Attribute analysieren

-- 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;

Realtime-Ansichten für Nutzerprofile

Diese Ansichten liefern nahezu in Realtime Updates zu Attributen von Nutzerprofilen. Die Daten werden mit einer Verzögerung von bis zu 10 Minuten bereitgestellt, nachdem ein Update in Braze erfolgt ist.

  • USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED
  • USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED

Verwendung

  • Liefert aktuelle Nutzerattribute mit minimaler Verzögerung (~10 Minuten).
  • Nützlich für Realtime-Analysen und Szenarien, in denen aktuelle Daten erforderlich sind.
  • Hinweise zur Performance:
    • Abfragen zu einzelnen Nutzer:innen sind schneller (unter einer Minute mit einem großen Warehouse).
    • Abfragen ohne USER_ID-Filter erfordern eine Aggregation über alle Nutzer:innen, was zu deutlich längeren Ausführungszeiten führt.
    • Abfragen auf einem großen Datensatz (z. B. mehr als 100 Millionen Nutzer:innen) können viele Minuten dauern.

Schema von USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED

Spaltenname Datentyp Beschreibung
APP_GROUP_ID VARCHAR Ihr Bezeichner für den Braze-Workspace
APP_ID VARCHAR Die spezifische App in Ihrem Workspace
USER_ID VARCHAR Der eindeutige Braze-Bezeichner für Nutzer:innen
TIME NUMBER Unix-Zeitstempel (Sekunden) des Profil-Updates
TIME_MS NUMBER Unix-Zeitstempel (Millisekunden) des Profil-Updates
UPDATE_SOURCE VARCHAR Die Quelle des Attribut-Updates (API, SDK, Dashboard usw.)
ARCHIVED BOOLEAN Ob das Nutzerprofil archiviert ist
SF_UPDATED_AT TIMESTAMP_LTZ Wann die Daten zuletzt in Snowflake aktualisiert wurden
EXTERNAL_USER_ID VARCHAR Ihr eigener Bezeichner für Nutzer:innen (falls festgelegt). Kann je nach Workspace-Konfiguration bei vielen Profilen NULL sein.
FIRST_NAME VARCHAR Vorname der Nutzer:in
LAST_NAME VARCHAR Nachname der Nutzer:in
EMAIL_ADDRESS VARCHAR E-Mail-Adresse der Nutzer:in
GENDER VARCHAR Geschlecht der Nutzer:in
PHONE_NUMBER VARCHAR Telefonnummer der Nutzer:in
DOB VARCHAR Geburtsdatum der Nutzer:in
HOME_CITY VARCHAR Wohnort der Nutzer:in
COUNTRY VARCHAR Land der Nutzer:in
LANGUAGE VARCHAR Bevorzugte Sprache der Nutzer:in
TIME_ZONE VARCHAR Zeitzone der Nutzer:in

Schema von USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED

Column name Data type Description
APP_GROUP_ID VARCHAR Your Braze workspace identifier
USER_ID VARCHAR The unique Braze user identifier
EXTERNAL_USER_ID VARCHAR Your own user identifier (if set)
TIME NUMBER Unix timestamp (seconds) of the profile update
TIME_MS NUMBER Unix timestamp (milliseconds) of the profile update
UPDATE_SOURCE VARCHAR The source of the attribute update (API, SDK, dashboard, etc.)
ARCHIVED BOOLEAN Whether the user profile is archived
SF_UPDATED_AT TIMESTAMP_NTZ When the data was last updated in Snowflake
APP_ID VARCHAR The specific app within your workspace
CUSTOM_ATTRIBUTES OBJECT JSON object containing all custom attributes (key-value pairs)

Note:

This view uses OBJECT type for CUSTOM_ATTRIBUTES instead of VARIANT. Use the same JSON accessor syntax (:attribute_name::TYPE) to query individual attributes.

Historische Änderungsprotokolle

Diese Ansichten speichern historische Änderungsprotokolle von Nutzerattributen und erfassen Änderungen mit einer Granularität von 12 Stunden.

  • USER_DEFAULT_ATTRIBUTES_HISTORY_VIEW_SHARED
  • USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED

Verwendung

  • Bietet eine Aufzeichnung historischer Änderungen an Nutzerattributen für einen rollierenden Zeitraum von 6 Monaten.
  • Die Daten werden alle 12 Stunden als Snapshot erfasst. Mehrere Updates innerhalb dieses Zeitfensters werden also zu einem einzigen Datensatz zusammengefasst. Einzelne Änderungen innerhalb dieses Zeitraums werden nicht separat gespeichert.
  • EFF_DT und END_DT markieren Beginn und Ende des Attributstatus von Nutzer:innen.

USER_DEFAULT_ATTRIBUTES_HISTORY_VIEW_SHARED-Schema

Spaltenname Datentyp Beschreibung
APP_GROUP_ID VARCHAR Bezeichner Ihres Braze-Workspace
USER_ID VARCHAR Der eindeutige Braze-Nutzer-Bezeichner
APP_ID VARCHAR Die spezifische App innerhalb Ihres Workspace
TIME NUMBER Unix-Zeitstempel (Sekunden) des Profil-Updates
TIME_MS NUMBER Unix-Zeitstempel (Millisekunden) des Profil-Updates
UPDATE_SOURCE VARCHAR Die Quelle des Attribut-Updates (API, SDK, Dashboard usw.)
SF_UPDATED_AT TIMESTAMP_NTZ Zeitpunkt der letzten Aktualisierung der Daten in Snowflake
EXTERNAL_USER_ID VARCHAR Ihr eigener Nutzer-Bezeichner (falls festgelegt). Kann je nach Workspace-Konfiguration für viele Profile NULL sein.
FIRST_NAME VARCHAR Vorname der Nutzer:in
LAST_NAME VARCHAR Nachname der Nutzer:in
EMAIL_ADDRESS VARCHAR E-Mail-Adresse der Nutzer:in
GENDER VARCHAR Geschlecht der Nutzer:in
PHONE_NUMBER VARCHAR Telefonnummer der Nutzer:in
DOB VARCHAR Geburtsdatum der Nutzer:in
TIME_ZONE VARCHAR Zeitzone der Nutzer:in
HOME_CITY VARCHAR Wohnort der Nutzer:in
COUNTRY VARCHAR Land der Nutzer:in
LANGUAGE VARCHAR Bevorzugte Sprache der Nutzer:in
EFF_DT TIMESTAMP_NTZ Gültigkeitsdatum: Beginn dieses Attributstatus
END_DT TIMESTAMP_NTZ Enddatum: Ende dieses Attributstatus (NULL für den aktuellen Status)

USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED-Schema

Column name Data type Description
APP_GROUP_ID VARCHAR Your Braze workspace identifier
USER_ID VARCHAR The unique Braze user identifier
APP_ID VARCHAR The specific app within your workspace
EXTERNAL_USER_ID VARCHAR Your own user identifier (if set)
TIME NUMBER Unix timestamp (seconds) of the profile update
TIME_MS NUMBER Unix timestamp (milliseconds) of the profile update
UPDATE_SOURCE VARCHAR The source of the attribute update (API, SDK, dashboard, etc.)
SF_UPDATED_AT TIMESTAMP_NTZ When the data was last updated in Snowflake
CUSTOM_ATTRIBUTES VARIANT JSON object containing all custom attributes (key-value pairs)
ARCHIVED BOOLEAN Whether the user profile is archived
EFF_DT TIMESTAMP_NTZ Effective date: when this attribute state began
END_DT TIMESTAMP_NTZ End date: when this attribute state ended (NULL for current state)

Häufige Anwendungsfälle

Nutzersegmente erstellen

-- 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);

Nutzerverhalten im Zeitverlauf analysieren

-- 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;

Standardattribute und angepasste Attribute kombinieren

-- 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';

Hochwertige Kund:innen finden

-- 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;

Best Practices

Anwendungsfall Empfohlene Ansichten Hinweise
Allgemeine Abfragen, die keine aktuellen Updates erfordern USER_DEFAULT_ATTRIBUTES_VIEW_SHARED und USER_CUSTOM_ATTRIBUTES_VIEW_SHARED Schnelle Ausführung mit Daten, die bis zu 12 Stunden alt sind.
Abfragen, die die neuesten Nutzerattribute erfordern USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED und USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED Bietet Updates nahezu in Realtime, kann bei großen Datensätzen jedoch langsamer sein.
Historisches Tracking von Attributänderungen USER_DEFAULT_ATTRIBUTES_HISTORY_VIEW_SHARED und USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHARED Speichert Attributänderungen mit einer Granularität von 12 Stunden.

Überlegungen zur Performance

  • Abfragen auf USER_DEFAULT_ATTRIBUTES_VIEW_SHARED oder USER_CUSTOM_ATTRIBUTES_VIEW_SHARED sollten bei großen Datensätzen (~1 Milliarde Nutzer:innen) auf einem großen Warehouse in weniger als 10 Sekunden Ergebnisse liefern.
  • Abfragen auf USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED oder USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED für einzelne Nutzer:innen liefern in weniger als einer Minute Ergebnisse, skalieren ohne Filterung nach USER_ID jedoch schlecht.
  • Abfragen auf mehr als 100 Millionen Nutzer:innen in USER_LATEST_STATE_DEFAULT_ATTRIBUTES_VIEW_SHARED oder USER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED können aufgrund der Aggregation pro Nutzer:in mehrere Minuten dauern.
New Stuff!