Teilweise Zeilenaktualisierungen senden an Real-Time Customer Profile using Data Prep
Streaming-Aktualisierungen in Data Prep ermöglicht es Ihnen, Teilzeilenaktualisierungen an zu senden Real-Time Customer Profile -Daten sowie beim Erstellen und Erstellen neuer Identitätslinks mit einer einzelnen API-Anfrage.
Durch Streaming-Uploads können Sie das Format Ihrer Daten beibehalten und diese Daten in Real-Time Customer Profile PATCH-Anfragen während der Aufnahme. Basierend auf den von Ihnen bereitgestellten Eingaben Data Prep ermöglicht Ihnen das Senden einer einzelnen API-Payload und das Übersetzen der Daten in beide Real-Time Customer Profile PATCH und Identity Service ERSTELLEN SIE -Anfragen.
Dieses Dokument enthält Informationen zum Streamen von Uploads 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, umzuwandeln und zu validieren.
- Identity Service: Verschaffen Sie sich einen besseren Überblick über einzelne Kunden und ihr Verhalten, indem Sie Identitäten zwischen Geräten und Systemen überbrücken.
- 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.
Verwenden von Streaming-Uploads in Data Prep streaming-upserts-in-data-prep
Streaming aktiviert einen allgemeinen Workflow
Streaming-Aktualisierungen in Data Prep funktioniert wie folgt:
-
Sie müssen zunächst einen Datensatz für Profile Verbrauch. Siehe Handbuch unter Datensatz für Profile für weitere Informationen.
-
Wenn neue Identitäten verknüpft werden müssen, müssen Sie auch einen zusätzlichen Datensatz erstellen mit demselben Schema als Profile Datensatz.
-
Nachdem Ihre Datensätze vorbereitet wurden, müssen Sie einen Datenfluss erstellen, um Ihre eingehende Anfrage der Profile Datensatz;
-
Als Nächstes müssen Sie die eingehende Anfrage aktualisieren, um die erforderlichen Kopfzeilen einzuschließen. Diese Header definieren:
- Der Datenvorgang, der mit Profile:
create
,merge
, unddelete
. - Der optionale Identitätsvorgang, der mit Identity Service:
create
.
- Der Datenvorgang, der mit Profile:
Identitätsdatensatz konfigurieren
Wenn neue Identitäten verknüpft werden müssen, müssen Sie einen zusätzlichen Datensatz in der eingehenden Payload erstellen und weitergeben. Beim Erstellen eines Identitätsdatensatzes müssen Sie sicherstellen, dass die folgenden Anforderungen erfüllt sind:
- Der Identitätsdatensatz muss sein zugewiesenes Schema als Profile Datensatz. Eine Inkongruenz von Schemas kann zu inkonsistentem Systemverhalten führen.
- Sie müssen jedoch sicherstellen, dass sich der Identitätsdatensatz von der Profile Datensatz. Wenn die Datensätze identisch sind, werden die Daten überschrieben und nicht aktualisiert.
- Während der ursprüngliche Datensatz für Profile, den Identitätsdatensatz sollte nicht aktiviert sein für Profile. Andernfalls werden auch Daten überschrieben und nicht aktualisiert. Der Identitätsdatensatz sollte aktiviert sein für Identity Service.
Erforderliche Felder in den Schemas, die mit dem Identitätsdatensatz verknüpft sind identity-dataset-required-fileds
Wenn Ihr Schema erforderliche Felder enthält, muss die Validierung des Datensatzes unterdrückt werden, damit Identity Service um nur die Identitäten zu empfangen. Sie können die Validierung unterdrücken, indem Sie die disabled
-Wert acp_validationContext
-Parameter. 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"
]
}
}'
Eingehende Payload-Struktur
Im Folgenden finden Sie ein Beispiel einer eingehenden Payload-Struktur, die neue Identitätslinks erstellt.
Nutzdaten 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.
}
flowId
datasetId
-Parameter.imsOrgId
datasetId
operations
operations.data
operations.identity
operations.identityDatasetId
Unterstützte Vorgänge
Die folgenden Vorgänge werden von Real-Time Customer Profile:
create
merge
delete
Die folgenden Vorgänge werden von Identity Service:
create
create
wird als Wert für operations.identity
, dann Data Prep generiert eine XDM-Entitätserstellungsanforderung für Identity Service. Wenn die Identität bereits vorhanden ist, wird die Identität ignoriert. Hinweis: Wenn operations.identity
auf create
, dann die identityDatasetId
muss ebenfalls angegeben werden. Die XDM-Entität erstellt eine Nachricht, die intern von Data Prep wird für diese Datensatz-ID generiert.Nutzlast ohne Identitätskonfiguration
Wenn neue Identitäten nicht verknüpft werden müssen, können Sie die identity
und identityDatasetId
Parameter in den Vorgängen. Dadurch werden nur Daten an gesendet Real-Time Customer Profile und überspringt die Identity Service. Ein Beispiel finden Sie in der folgenden 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.
}
Primäre Identitäten dynamisch übergeben
Bei XDM-Aktualisierungen muss das Schema für Profile und eine primäre Identität enthalten. Sie können die primäre Identität eines XDM-Schemas auf zwei Arten angeben:
- Legen Sie ein statisches Feld als primäre Identität im XDM-Schema fest.
- Weisen Sie über die Feldergruppe "Identitätszuordnung"im XDM-Schema eines der Identitätsfelder als primäre Identität zu.
Festlegen eines statischen Felds als primäres Identitätsfeld im XDM-Schema
Im folgenden Beispiel: state
, homePhone.number
und andere Attribute werden mit ihren jeweiligen angegebenen Werten in die Profile mit der primären Identität von sampleEmail@gmail.com
. Eine Aktualisierungsmeldung zur XDM-Entität wird dann vom Streaming generiert Data Prep -Komponente. Real-Time Customer Profile bestätigt dann, dass die XDM-Aktualisierungsmeldung den Profildatensatz aktualisiert.
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"
}
}'
Weisen Sie eines der Identitätsfelder als primäre Identität über die Feldergruppe "Identitätszuordnung"im XDM-Schema zu.
In diesem Beispiel enthält die Kopfzeile die operations
-Attribut mit dem identity
und identityDatasetId
Eigenschaften. Dadurch können Daten zusammengeführt werden mit Real-Time Customer Profile sowie für Identitäten, die an weitergegeben werden sollen Identity Service.
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 Uploads mit Data Prep:
- Die Streaming-Upsermethode sollte nur verwendet werden, wenn Teilzeilenaktualisierungen an Real-Time Customer Profile. Teilzeilenaktualisierungen sind not von Data Lake verbraucht.
- Die Streaming-Upsert-Methode unterstützt nicht das Aktualisieren, Ersetzen und Entfernen von Identitäten. Neue Identitäten werden erstellt, wenn sie nicht vorhanden sind. Daher
identity
-Vorgang muss immer auf "Erstellen"eingestellt sein. Wenn bereits eine Identität vorhanden ist, ist der Vorgang ein no-op-Vorgang. - Die Streaming-Upsermethode 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 Uploads in gestreamt werden Data Prep , um Teilzeilenaktualisierungen an Ihre Real-Time Customer Profile Daten, während Identitäten auch mit einer einzelnen API-Anfrage erstellt und verknüpft werden. Weitere Informationen zu anderen Data Prep Funktionen, lesen Sie bitte die Data Prep Übersicht. So erfahren Sie, wie Sie Zuordnungssätze im Data Prep API, lesen Sie bitte die Data Prep Entwicklerhandbuch.