Aktivieren der Änderungsdatenerfassung für Quellverbindungen in der API
Verwenden Sie die Änderungsdatenerfassung in Adobe Experience Platform-Quellen, um Ihre Quell- und Zielsysteme nahezu in Echtzeit synchronisiert zu halten.
Experience Platform unterstützt derzeit inkrementelle Datenkopie mit der regelmäßig neu erstellte oder aktualisierte Datensätze aus dem Quellsystem an die aufgenommenen Datensätze übertragen werden. Bei dieser Methode werden Änderungen mithilfe einer Zeitstempelspalte verfolgt, es werden jedoch keine Löschungen erkannt, was im Laufe der Zeit zu Dateninkonsistenzen führen kann.
Im Gegensatz dazu erfasst und wendet Change Data Capture Einfügungen, Aktualisierungen und Löschungen nahezu in Echtzeit an. Diese umfassende Änderungsverfolgung stellt sicher, dass Datensätze vollständig mit dem Quellsystem abgestimmt bleiben, und bietet einen vollständigen Änderungsverlauf, der über die Unterstützung inkrementeller Kopien hinausgeht. Löschvorgänge müssen jedoch besonders berücksichtigt werden, da sie sich auf alle Anwendungen auswirken, die die Zieldatensätze verwenden.
Für das Ändern der Datenerfassung in Experience Platform ist Data Mirror mit relationalen Schemata erforderlich. Sie können Änderungsdaten auf zwei Arten für Data Mirror bereitstellen:
- Manuelles Änderungs-Tracking: Fügen Sie eine
_change_request_typeSpalte in Ihren Datensatz für Quellen ein, die nativ keine Änderungsdatensätze generieren - Exporte der nativen Änderungsdatenerfassung: Verwenden Sie Änderungsdatenerfassungsdatensätze, die direkt aus Ihrem Quellsystem exportiert wurden
Bei beiden Ansätzen ist Data Mirror mit relationalen Schemata erforderlich, um Beziehungen beizubehalten und Eindeutigkeit zu erzwingen.
Data Mirror mit relationalen Schemata
Data Mirror verwendet relationale Schemata, um die Änderungsdatenerfassung zu erweitern und erweiterte Datenbanksynchronisierungsfunktionen zu ermöglichen. Einen Überblick über Data Mirror finden Sie unter Übersicht über Data Mirror.
Relationale Schemata erweitern Experience Platform, um die Eindeutigkeit von Primärschlüsseln zu erzwingen, Änderungen auf Zeilenebene zu verfolgen und Beziehungen auf Schemaebene zu definieren. Bei der Datenerfassung für Änderungen wenden sie Einfügungen, Aktualisierungen und Löschungen direkt im Data Lake an, wodurch die Notwendigkeit von Extract, Transform, Load (ETL) oder manueller Abstimmung reduziert wird.
Weitere finden Sie unter zu relationalen Schemata .
Anforderungen an relationale Schemata zur Änderungsdatenerfassung
Bevor Sie ein relationales Schema mit Änderungsdatenerfassung verwenden, konfigurieren Sie die folgenden Kennungen:
- Jeden Datensatz mit einem Primärschlüssel eindeutig identifizieren.
- Wenden Sie Aktualisierungen nacheinander mithilfe einer Versionskennung an.
- Fügen Sie für Zeitreihenschemas eine Zeitstempelkennung hinzu.
Umgang mit Kontrollspalten control-column-handling
Verwenden Sie die Spalte _change_request_type , um anzugeben, wie jede Zeile verarbeitet werden soll:
u— upsert (Standard, wenn die Spalte fehlt)d— Löschen
Diese Spalte wird nur während der Aufnahme ausgewertet und nicht gespeichert oder XDM-Feldern zugeordnet.
Workflow workflow
So aktivieren Sie die Änderungsdatenerfassung mit einem relationalen Schema:
-
Erstellen Sie ein relationales Schema.
-
Fügen Sie die erforderlichen Deskriptoren hinzu:
- Primärer Schlüsseldeskriptor
- Versionsdeskriptor
- Zeitstempeldeskriptor (nur Zeitreihen)
-
Erstellen Sie einen Datensatz aus dem Schema und aktivieren Sie die Änderungsdatenerfassung.
-
Nur für die dateibasierte Aufnahme: Fügen Sie die Spalte
_change_request_typezu Ihren Quelldateien hinzu, wenn Sie Löschvorgänge explizit angeben müssen. CDC-Exportkonfigurationen behandeln dies automatisch für Datenbankquellen. -
Schließen Sie die Einrichtung der Quellverbindung ab, um die Aufnahme zu aktivieren.
_change_request_type ist nur für dateibasierte Quellen (Amazon S3, Azure Blob, Google Cloud Storage, SFTP) erforderlich, wenn Sie das Änderungsverhalten auf Zeilenebene explizit steuern möchten. Bei Datenbankquellen mit nativen CDC-Funktionen werden Änderungsvorgänge automatisch über CDC-Exportkonfigurationen verarbeitet. Die dateibasierte Aufnahme setzt standardmäßig Upsert-Vorgänge voraus. Sie müssen diese Spalte nur hinzufügen, wenn Sie Löschvorgänge in Ihren Datei-Uploads angeben möchten.Bereitstellung von Änderungsdaten für dateibasierte Quellen file-based-sources
Fügen Sie bei dateibasierten Quellen (Amazon S3, Azure Blob, Google Cloud Storage und SFTP) eine _change_request_type Spalte in Ihre Dateien ein.
Verwenden Sie die _change_request_type Werte, die im Abschnitt Umgang mit Kontrollspalten oben definiert wurden.
_change_request_type Spalte mit entweder u (upsert) oder d (delete), um die Funktionen zum Nachverfolgen von Änderungen zu validieren. Die Adobe Journey Optimizer-Funktion Orchestrierte Kampagnen erfordert diese Spalte beispielsweise, um den Umschalter „Orchestrierte Kampagnen“ zu aktivieren und die Datensatzauswahl für die Zielgruppenbestimmung zuzulassen. Anwendungsspezifische Validierungsanforderungen können variieren.Führen Sie die folgenden quellspezifischen Schritte aus.
Cloud-Speicherquellen cloud-storage-sources
Aktivieren Sie die Änderungsdatenerfassung für Cloud-Speicherquellen, indem Sie die folgenden Schritte ausführen:
-
Erstellen Sie eine Basisverbindung für Ihre Quelle:
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 Quelle Basisverbindungshandbuch Amazon S3 Erstellen einer Amazon S3 -Basisverbindung Azure Blob Erstellen einer Azure Blob -Basisverbindung Google Cloud Storage Erstellen einer Google Cloud Storage -Basisverbindung SFTP Erstellen einer SFTP -Basisverbindung
Alle Cloud-Speicherquellen verwenden dasselbe _change_request_type Spaltenformat, das im Abschnitt Dateibasierte Quellen oben beschrieben wird.
Datenbankquellen database-sources
Azure Databricks
Um die Änderungsdatenerfassung mit Azure Databricks zu verwenden, müssen Sie sowohl Datenfeed ändern in Ihren Quelltabellen aktivieren als auch Data Mirror mit relationalen Schemata in Experience Platform konfigurieren.
Verwenden Sie die folgenden Befehle, um den Änderungsdaten-Feed in Ihren Tabellen zu aktivieren:
Neue Tabelle
Um den Änderungsdaten-Feed auf eine neue Tabelle anzuwenden, müssen Sie die Tabelleneigenschaft delta.enableChangeDataFeed im TRUE-Befehl auf CREATE TABLE setzen.
CREATE TABLE student (id INT, name STRING, age INT) TBLPROPERTIES (delta.enableChangeDataFeed = true)
Vorhandene Tabelle
Um den Änderungsdaten-Feed auf eine vorhandene Tabelle anzuwenden, müssen Sie die Tabelleneigenschaft delta.enableChangeDataFeed im TRUE-Befehl auf ALTER TABLE setzen.
ALTER TABLE myDeltaTable SET TBLPROPERTIES (delta.enableChangeDataFeed = true)
Alle neuen Tabellen
Um den Änderungsdaten-Feed auf alle neuen Tabellen anzuwenden, müssen Sie Ihre Standardeigenschaften auf TRUE festlegen.
set spark.databricks.delta.properties.defaults.enableChangeDataFeed = true;
Weitere Informationen finden Sie im Azure Databricks Handbuch zum Aktivieren des Änderungsdaten-Feeds.
Lesen Sie die folgende Dokumentation, um zu erfahren, wie Sie die Änderungsdatenerfassung für Ihre Azure Databricks-Quellverbindung aktivieren:
Data Landing Zone
Um die Änderungsdatenerfassung mit Data Landing Zone zu verwenden, müssen Sie sowohl Datenfeed ändern in Ihren Quelltabellen aktivieren als auch Data Mirror mit relationalen Schemata in Experience Platform konfigurieren.
Lesen Sie die folgende Dokumentation, um zu erfahren, wie Sie die Änderungsdatenerfassung für Ihre Data Landing Zone-Quellverbindung aktivieren:
Google BigQuery
Um die Änderungsdatenerfassung mit Google BigQuery verwenden zu können, müssen Sie sowohl den Änderungsverlauf in Ihren Quelltabellen aktivieren als auch Data Mirror mit relationalen Schemata in Experience Platform konfigurieren.
Um den Änderungsverlauf in Ihrer Google BigQuery-Quellverbindung zu aktivieren, navigieren Sie in der Google BigQuery-Konsole zu Ihrer Google Cloud-Seite und setzen enable_change_history auf TRUE. Diese Eigenschaft aktiviert den Änderungsverlauf für Ihre Datentabelle.
Weitere Informationen finden Sie im Handbuch zu Datendefinitionssprachanweisungen in GoogleSQL.
Lesen Sie die folgende Dokumentation, um zu erfahren, wie Sie die Änderungsdatenerfassung für Ihre Google BigQuery-Quellverbindung aktivieren:
Snowflake
Um die Änderungsdatenerfassung mit Snowflake verwenden zu können, müssen Sie sowohl Änderungsverfolgung“ Ihren Quelltabellen aktivieren als auch Data Mirror mit relationalen Schemata in Experience Platform konfigurieren.
Aktivieren Sie Snowflake die Änderungsverfolgung mithilfe der ALTER TABLE und legen Sie CHANGE_TRACKING auf TRUE fest.
ALTER TABLE mytable SET CHANGE_TRACKING = TRUE
Weitere Informationen finden Sie im Snowflake Handbuch zur Verwendung der changes-Klausel.
Lesen Sie die folgende Dokumentation, um zu erfahren, wie Sie die Änderungsdatenerfassung für Ihre Snowflake-Quellverbindung aktivieren: