Senden Sie partielle Zeilenaktualisierungen an Real-Time Customer Profile mithilfe von Data Prep

IMPORTANT
  • Die Aufnahme von Meldungen zur Aktualisierung der Experience-Datenmodell (XDM)-Entität (mit JSON-PATCH-Vorgängen) für Profilaktualisierungen über den DCS-Eingang ist veraltet. Führen Sie alternativ dazu die in diesem Handbuch beschriebenen Schritte aus.

  • Sie können auch die HTTP-API-Quelle verwenden um Rohdaten in den DCS-Eingang aufzunehmendie erforderlichen Datenzuordnungen anzugeben, um Ihre Daten in XDM-konforme Nachrichten für Profilaktualisierungen umzuwandeln.

  • Bei der Verwendung von Arrays beim Streaming von Upserts müssen Sie explizit upsert_array_append oder upsert_array_replace verwenden, um einen klaren Zweck des Vorgangs zu definieren. Möglicherweise werden Fehler angezeigt, wenn diese Funktionen fehlen.

Verwenden Sie das Streaming von Upserts in Data Prep, um partielle Zeilenaktualisierungen an Real-Time Customer Profile-Daten zu senden und gleichzeitig neue Identitätsverknüpfungen mit einer einzigen API-Anfrage zu erstellen und herzustellen.

Durch das Streamen von Upserts können Sie das Format Ihrer Daten beibehalten, während Sie diese Daten während der Aufnahme in Real-Time Customer Profile PATCH-Anforderungen übersetzen. Basierend auf den von Ihnen bereitgestellten Eingaben können Sie mit Data Prep eine einzige API-Payload senden und die Daten an Real-Time Customer Profile PATCH- und Identity Service CREATE-Anfragen übersetzen.

Data Prep verwendet Header-Parameter, um zwischen Einfügungen und Upserts zu unterscheiden. Alle Zeilen, die Upserts verwenden, müssen eine Kopfzeile haben. Sie können Upserts mit oder ohne Identitätsdeskriptoren verwenden. Wenn Sie Upserts mit Identitäten verwenden, müssen Sie die Konfigurationsschritte ausführen, die im Abschnitt „Konfigurieren Identitätsdatensatzes“ beschrieben. Wenn Sie Upserts ohne Identitäten verwenden, müssen Sie in Ihrer Anfrage keine Identitätskonfigurationen angeben. Weitere Informationen finden Sie im Abschnitt Streamen von Upserts ohne".

NOTE
Um die Upsert-Funktion zu nutzen, wird empfohlen, XDM-kompatible Konfigurationen während der Datenaufnahme zu deaktivieren und die eingehende Payload mit Data Prep Mapper) neu.

Dieses Dokument enthält Informationen zum Streamen von Upserts in Data Prep.

Erste Schritte

Diese Übersicht setzt ein Verständnis der folgenden Komponenten von Adobe Experience Platform voraus:

  • Data Prep: Data Prep ermöglicht es Dateningenieuren, Daten dem Experience-Datenmodell (XDM) zuzuordnen, umzuformen und zu validieren.
  • Identity Service: Verschaffen Sie sich einen besseren Überblick über einzelne Kunden und deren Verhalten, indem Sie Identitäten geräte- und systemübergreifend verknüpfen.
  • Echtzeit-Kundenprofil: Das Echtzeit-Kundenprofli bietet ein einheitliches, kundenspezifisches Profil in Echtzeit, das auf aggregierten Daten aus mehreren Quellen basiert.
  • Quellen: Experience Platform ermöglicht die Aufnahme von Daten aus verschiedenen Quellen und bietet Ihnen die Möglichkeit, die eingehenden Daten mithilfe von Platform-Services zu strukturieren, zu kennzeichnen und anzureichern.

Streamen von Upserts in Data Prep verwenden streaming-upserts-in-data-prep

NOTE
Die folgenden Quellen unterstützen die Verwendung von Streaming-Upserts:

Hochrangiger Workflow zum Streamen von Upserts

Das Streamen von Upserts in Data Prep funktioniert wie folgt:

  • Sie müssen zunächst einen Datensatz für die Profile-Nutzung erstellen und aktivieren. Weitere Informationen finden Sie in der Anleitung Aktivieren eines Datensatzes für Profile .

  • Wenn neue Identitäten verknüpft werden müssen, müssen Sie auch einen zusätzlichen Datensatz mit demselben Schema) Ihren Profile Datensatz erstellen.

  • Nachdem Ihre Datensätze vorbereitet wurden, müssen Sie einen Datenfluss erstellen, um Ihre eingehende Anfrage dem Profile Datensatz zuzuordnen.

  • Als Nächstes müssen Sie die eingehende Anfrage aktualisieren, um die erforderlichen Kopfzeilen einzuschließen. Diese Kopfzeilen definieren:

    • Der Datenvorgang, der mit Profile ausgeführt werden muss: create, merge und delete.
    • Der optionale Identitätsvorgang, der mit Identity Service ausgeführt werden soll: create.

Identitätsdatensatz konfigurieren configure-the-identity-dataset

Wenn neue Identitäten verknüpft werden müssen, müssen Sie einen zusätzlichen Datensatz in der eingehenden Payload erstellen und übergeben. Beim Erstellen eines Identitätsdatensatzes müssen Sie sicherstellen, dass die folgenden Anforderungen erfüllt sind:

  • Der Identitätsdatensatz muss sein verknüpftes Schema als Profile Datensatz haben. Inkonsistente Schemata können zu inkonsistentem Systemverhalten führen.
  • Sie müssen jedoch sicherstellen, dass sich der Identitätsdatensatz vom Profile unterscheidet. Wenn die Datensätze identisch sind, werden die Daten überschrieben anstatt aktualisiert.
  • Während der ursprüngliche Datensatz für Profile aktiviert werden muss, der Identitätsdatensatz für Profile nicht werden. Andernfalls werden auch Daten überschrieben, anstatt aktualisiert zu werden. Der Identitätsdatensatz (sollte aktiviert sein für Identity Service.

Erforderliche Felder in den mit dem Identitätsdatensatz verknüpften Schemata identity-dataset-required-fileds

Wenn Ihr Schema erforderliche Felder enthält, muss die Validierung des Datensatzes unterdrückt werden, damit Identity Service nur die Identitäten erhalten können. Sie können die Validierung unterdrücken, indem Sie den disabled auf den acp_validationContext anwenden. Siehe folgendes Beispiel:

curl -X POST 'https://platform.adobe.io/data/foundation/catalog/dataSets/62257bef7a75461948ebcaaa' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {IMS_ORG}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -d '{
    "tags": {
        "acp_validationContext": [
            "disabled"
        ],
        "unifiedProfile": [
            "enabled:false"
        ],
        "unifiedIdentity": [
            "enabled:true"
        ]
    }
}'
TIP
Sie müssen keine zusätzliche Konfiguration vornehmen, wenn das mit dem Identitätsdatensatz verknüpfte Schema über keine erforderlichen Felder verfügt.

Struktur der eingehenden Payloads

Im Folgenden sehen Sie ein Beispiel für eine Struktur eingehender Payloads, die neue Identitäts-Links erstellt.

Payload mit Identitätskonfiguration

{
  "header": {
    "flowId": "923e2ac3-3869-46ec-9e6f-7012c4e23f69",
    "imsOrgId": "{ORG_ID}",
    "datasetId": "621fc19ab33d941949af16c8",
    "operations": {
        "data": "create" (default)/"merge"/"delete",
        "identity": "create",
        "identityDatasetId": "621fc19ab33d941949af16d9"
    }
  }
... //The raw data attributes are included here as the key/value pairs of the "body" property.
}
Parameter
Beschreibung
flowId
Eine eindeutige ID zur Identifizierung eines Datenflusses. Diese Datenfluss-ID sollte der Quellverbindung entsprechen, die mit Amazon Kinesis, Azure Event Hubs oder HTTP API erstellt wurde. Dieser Datenfluss sollte auch über einen Profile-aktivierten Datensatz als Zieldatensatz verfügen. Hinweis: Die ID des Profile Zieldatensatzes wird auch als datasetId verwendet.
imsOrgId
Die ID, die Ihrer Organisation entspricht.
datasetId
Die ID des Profile Zieldatensatzes Ihres Datenflusses. Hinweis: Dies ist die gleiche ID wie die Profile-aktivierte Zieldatensatz-ID in Ihrem Datenfluss.
operations
Dieser Parameter beschreibt die Aktionen, die Data Prep basierend auf der eingehenden Anfrage ausführen.
operations.data
Definiert die Aktionen, die in Real-Time Customer Profile ausgeführt werden müssen.
operations.identity
Definiert die für die Daten nach Identity Service zulässigen Vorgänge.
operations.identityDatasetId
(Optional) Die ID des Identitätsdatensatzes, die nur erforderlich ist, wenn neue Identitäten verknüpft werden müssen.

Unterstützte Vorgänge

Die folgenden Vorgänge werden von Real-Time Customer Profile unterstützt:

Funktionsweise
Beschreibung
create
Der Standardvorgang. Dadurch wird eine XDM-Entitäts-Erstellungsmethode für Real-Time Customer Profile generiert.
merge
Dadurch wird eine XDM-Entitäts-Aktualisierungsmethode für Real-Time Customer Profile generiert.
delete
Dadurch wird eine XDM-Entitätslöschmethode für Real-Time Customer Profile generiert und die Daten dauerhaft aus der Profile store entfernt.

Die folgenden Vorgänge werden von Identity Service unterstützt:

Funktionsweise
Beschreibungen
create
Der einzige zulässige Vorgang für diesen Parameter. Wenn create als Wert für operations.identity übergeben wird, generiert Data Prep eine XDM-Entitäts-Erstellungsanfrage für Identity Service. Wenn die Identität bereits vorhanden ist, wird sie ignoriert. Hinweis: Wenn operations.identity auf create gesetzt ist, muss auch der identityDatasetId angegeben werden. Die intern von Data Prep Komponente generierte XDM-Entitäts-Erstellungsnachricht wird für diese Datensatz-ID generiert.

Payload ohne Identitätskonfiguration payload-without-identity-configuration

Wenn neue Identitäten nicht verknüpft werden müssen, können Sie die Parameter identity und identityDatasetId in den Vorgängen auslassen. Dadurch werden Daten nur an Real-Time Customer Profile gesendet und die Identity Service übersprungen. Ein Beispiel finden Sie unten in der Payload:

{
  "header": {
    "flowId": "923e2ac3-3869-46ec-9e6f-7012c4e23f69",
    "imsOrgId": "{ORG_ID}",
    "datasetId": "621fc19ab33d941949af16c8",
    "operations": {
        "data": "create"/"merge"/"delete",
    }
  }
... //The raw data attributes are included here as the key/value pairs of the "body" property.
}

Dynamisches Übergeben primärer Identitäten

Für XDM-Aktualisierungen muss das Schema für die Profile aktiviert sein und eine primäre Identität enthalten. Sie können die primäre Identität eines XDM-Schemas auf zwei Arten angeben:

  • Bestimmen Sie ein statisches Feld als primäre Identität im XDM-Schema.
  • Bestimmen Sie eines der Identitätsfelder als primäre Identität über die Feldergruppe „Identitätszuordnung“ im XDM-Schema.

Bestimmen Sie ein statisches Feld als primäres Identitätsfeld im XDM-Schema

Im folgenden Beispiel werden state, homePhone.number und andere Attribute mit ihren jeweiligen angegebenen Werten in die Profile mit der primären Identität sampleEmail@gmail.com upsertiert. Eine XDM-Entitäts-Aktualisierungsmeldung wird dann von der Streaming-Data Prep generiert. Real-Time Customer Profile bestätigt dann, dass die XDM-Aktualisierungsmeldung den Profildatensatz upsert.

NOTE
In diesem Beispiel werden Identitäten nicht miteinander verknüpft, da für Identität keine Vorgänge definiert sind.
curl -X POST 'https://dcs.adobedc.net/collection/9aba816d350a69c4abbd283eb5818ec3583275ffce4880ffc482be5a9d810c4b' \
  -H 'Content-Type: application/json' \
  -H 'x-adobe-flow-id: d5262d48-0f47-4949-be6d-795f06933527' \
  -d '{
    "header": {
        "flowId" : "d5262d48-0f47-4949-be6d-795f06933527",
        "imsOrgId": "{ORG_ID}",
        "datasetId": "62259f817f62d71947929a7b",
        "operations": {
         "data": "create"
     }
    },
    {
        "body": {
        "homeAddress": {
            "country": "US",
            "state": "GA",
            "region": "va7"
        },
        "homePhone": {
            "number": "123.456.799"
        },
        "identityMap": {
            "Email": [{
                "id": "sampleEmail@gmail.com",
                "primary": true
            }]
        },
      "personalEmail": {
            "address": "sampleEmail@gmail.com",
            "primary": true
       },
      "personID": "346576345",
      "_id": "346576345",
      "timestamp": "2021-05-05T17:51:45.1880+02",
      "workEmail": "sampleWorkEmail@gmail.com"
  }
}'

Bestimmen Sie eines der Identitätsfelder als primäre Identität über die Feldergruppe „Identitätszuordnung“ im XDM-Schema

In diesem Beispiel enthält die Kopfzeile das Attribut operations mit den Eigenschaften identity und identityDatasetId . Auf diese Weise können Daten mit Real-Time Customer Profile zusammengeführt und Identitäten an Identity Service übergeben werden.

curl -X POST 'https://dcs.adobedc.net/collection/9aba816d350a69c4abbd283eb5818ec3583275ffce4880ffc482be5a9d810c4b' \
  -H 'Content-Type: application/json' \
  -H 'x-adobe-flow-id: d5262d48-0f47-4949-be6d-795f06933527' \
  -d '{
    "header": {
        "flowId" : "d5262d48-0f47-4949-be6d-795f06933527",
        "imsOrgId": "{ORG_ID}",
        "datasetId": "62259f817f62d71947929a7b",
        "operations": {
            "data": "merge",
            "identity": "create",
            "identityDatasetId": "6254a93b851ecd194b64af9e"
      }
    },
    {
       "body": {
        "homeAddress": {
            "country": "US",
            "state": "GA",
            "region": "va7"
        },
        "homePhone": {
            "number": "123.456.799"
        },
        "identityMap": {
            "Email": [{
                "id": "sampleEmail@gmail.com",
                "primary": true
            }]
        },
      "personalEmail": {
            "address": "sampleEmail@gmail.com",
            "primary": true
       },
      "personID": "346576345",
      "_id": "346576345",
      "timestamp": "2021-05-05T17:51:45.1880+02",
      "workEmail": "sampleWorkEmail@gmail.com"
  }
 }'

Bekannte Einschränkungen und wichtige Überlegungen

Im Folgenden finden Sie eine Liste bekannter Einschränkungen, die beim Streaming von Upserts mit Data Prep zu beachten sind:

  • Die Streaming-Upserts-Methode sollte nur verwendet werden, wenn partielle Zeilenaktualisierungen an Real-Time Customer Profile gesendet werden. Teilweise Zeilenaktualisierungen werden nicht vom Data Lake genutzt.
  • Die Streaming-Methode upserts unterstützt nicht das Aktualisieren, Ersetzen und Entfernen von Identitäten. Neue Identitäten werden erstellt, wenn sie nicht vorhanden sind. Daher muss für den identity-Vorgang immer „Erstellen“ festgelegt sein. Wenn bereits eine Identität vorhanden ist, ist der Vorgang ein No-op-Vorgang.
  • Die Streaming-Upsert-Methode unterstützt derzeit nicht Adobe Experience Platform Web SDK und Adobe Experience Platform Mobile SDK.

Nächste Schritte

Durch Lesen dieses Dokuments sollten Sie jetzt verstehen, wie Sie Upserts in streamen, Data Prep partielle Zeilenaktualisierungen an Ihre Real-Time Customer Profile-Daten zu senden und gleichzeitig Identitäten mit einer einzigen API-Anfrage zu erstellen und zu verknüpfen. Weitere Informationen zu anderen Data Prep-Funktionen finden Sie unter Data Prep Übersicht. Informationen zur Verwendung von Zuordnungssätzen in der Data Prep-API finden Sie im Data Prep Entwicklerhandbuch.

recommendation-more-help
461cc884-c234-4a0c-ac75-6efbaafc1394