Integration mit Meta

Auf dieser Seite werden die erforderlichen Konfigurationen beschrieben, um Daten aus Meta (Facebook und Instagram Ads) als Datenquelle für die Marketingarbeitslast der Cortex Framework Data Foundation zu verwenden.

Meta ist ein Technologieunternehmen, das mehrere beliebte Onlineplattformen besitzt. Cortex Framework integriert Daten aus Instagram- und Facebook-Anzeigen, um sie zu analysieren, mit anderen Datenquellen zu kombinieren und mithilfe von KI tiefere Einblicke zu gewinnen und Ihre Marketingstrategie zu optimieren.

Das folgende Diagramm zeigt, wie Meta-Marketingdaten über die Marketingarbeitslast der Cortex Framework Data Foundation verfügbar sind:

Metadatenquelle

Abbildung 1. Meta-Marketingdatenquelle.

Konfigurationsdatei

In der Datei config.json werden die Einstellungen konfiguriert, die für die Verbindung zu Datenquellen erforderlich sind, um Daten aus verschiedenen Arbeitslasten zu übertragen. Diese Datei enthält die folgenden Parameter für Meta:

   "marketing": {
        "deployMeta": true,
        "Meta": {
            "deployCDC": true,
            "datasets": {
                "cdc": "",
                "raw": "",
                "reporting": "REPORTING_Meta"
            }
        }
    }

In der folgenden Tabelle wird der Wert für jeden Marketingparameter beschrieben:

Parameter Bedeutung Standardwert Beschreibung
marketing.deployMeta Meta bereitstellen true Führen Sie die Bereitstellung für die Datenquelle von Meta aus.
marketing.Meta.deployCDC CDC-Skripts für Meta bereitstellen true Generieren Sie Meta-CDC-Verarbeitungsskripts, die als DAGs in Cloud Composer ausgeführt werden.
marketing.Meta.datasets.cdc CDC-Dataset für Meta CDC-Dataset für Meta.
marketing.Meta.datasets.raw Rohdaten-Dataset für Meta Rohdaten-Dataset für Meta.
marketing.Meta.datasets.reporting Berichts-Dataset für Meta "REPORTING_Meta" Berichts-Dataset für Meta.

Datenmodell

In diesem Abschnitt wird das Datenmodell von Meta anhand des Entity Relationship-Diagramms (ERD) beschrieben.

Entity-Relationship-Diagramm für Meta

Abbildung 2. Meta: Entity-Relationship-Diagramm.

Basisansichten

Das sind die blauen Objekte im ERD. Sie sind Ansichten von CDC-Tabellen mit minimalen Transformationen zum Entpacken komplexer Datenstrukturen. Siehe Skripts in src/marketing/src/Meta/src/reporting/ddls.

Berichtsdatenansichten

Das sind die grünen Objekte im ERD. Sie sind Berichtsansichten, die aggregierte Messwerte enthalten. Siehe Skripts in src/marketing/src/Meta/src/reporting/ddls.

API-Verbindung

Die Aufnahmemuster in Cortex Framework für Meta verwenden die Meta Marketing API um Berichtsattribute und -messwerte abzurufen. Die aktuellen Vorlagen verwenden Version 25.0.

Meta legt beim Abfragen der Marketing API eine dynamische Ratenbegrenzung fest. Wenn die Ratenbegrenzung erreicht ist, werden die DAGs für die Aufnahme von der Quelle zu den Rohdaten möglicherweise nicht vollständig ausgeführt. In solchen Fällen werden im Log entsprechende Fehlermeldungen angezeigt und bei der nächsten Ausführung der DAGs werden alle fehlenden Daten nachträglich geladen.

Die Meta Marketing API bietet zwei Zugriffsebenen: „Basic“ und „Standard“. Die Standardebene bietet ein viel höheres Limit und wird empfohlen, wenn Sie die Aufnahme von der Quelle zu den Rohdaten häufig verwenden möchten. Weitere Informationen zu diesen Limits und dazu, wie Sie eine höhere Zugriffsebene erhalten, finden Sie in der Dokumentation von Meta.

Wenn Sie Zugriff auf die Standardebene haben, können Sie den Wert der next_request_delay_sec Einstellung in src/Meta/src/raw/pipelines/config.ini verringern, um die Ladezeiten zu verkürzen.

API-Zugriff und Zugriffstoken

Die folgenden Schritte sind im Meta Business Manager und Developer Console erforderlich, um Daten aus Meta in Cortex Framework zu übertragen.

  1. Wählen Sie eine App aus. Sie können eine neue App erstellen die mit dem Geschäftskonto verknüpft ist. Achten Sie darauf, dass Ihre App vom Typ Business ist.
  2. Richten Sie App-Berechtigungen ein. Sie müssen der App als Administrator zugewiesen sein, bevor Sie damit Token erstellen können. Weitere Informationen finden Sie in der Dokumentation zu App-Rollen. Weisen Sie Ihrer App relevante Assets (Konten) zu.
  3. Erstellen Sie ein Zugriffstoken. Zugriffstoken sind erforderlich, um auf die Meta Marketing API zuzugreifen. Sie sind immer mit einer App und einem Nutzer verknüpft. Sie können das Token entweder mit einem Systemnutzer oder mit Ihrer eigenen Anmeldung erstellen.

    1. Erstellen Sie einen Systemnutzer mit Administratorrechten.
    2. Generieren Sie ein Token. Notieren Sie sich die Token sofort nach der Generierung, da sie nicht mehr abgerufen werden können, sobald Sie die Seite verlassen.
    3. Gewähren Sie Ihrem Token die Berechtigungen ads_read und business_management, um auf die unterstützten Objekte zuzugreifen.
  4. Folgen Sie der Cloud Composer-Dokumentation , um Secret Manager in Cloud Composer zu aktivieren. Erstellen Sie dann ein Secret mit dem Namen cortex_meta_access_token, und speichern Sie das im vorherigen Schritt generierte Token als Inhalt.

Datenaktualität und Verzögerung

Im Allgemeinen wird die Datenaktualität für Cortex Framework-Daten quellen durch die Upstream-Verbindung sowie die Häufigkeit der DAG-Ausführung begrenzt. Passen Sie die Häufigkeit der DAG-Ausführung an die Upstream-Häufigkeit, die Ressourcenbeschränkungen und Ihre geschäftlichen Anforderungen an.

Mit der Meta Marketing API sind die meisten Daten (mit Ausnahme von Conversions) nahezu in Echtzeit verfügbar. Sie können jedoch bis zu 28 Tage nach dem Ereignis angepasst werden.

Berechtigungen für Cloud Composer-Verbindungen

Erstellen Sie die folgenden Verbindungen in Cloud Composer. Weitere Informationen finden Sie in der Dokumentation zu Airflow-Verbindungen verwalten.

Verbindungsname Zweck
meta_raw_dataflow Für Meta Marketing API > BigQuery-Rohdaten-Dataset
meta_cdc_bq Für Rohdaten-Dataset > CDC-Dataset-Übertragung
meta_reporting_bq Für CDC-Dataset > Berichts-Dataset-Übertragung

Berechtigungen für das Cloud Composer-Dienstkonto

Gewähren Sie dem in Cloud Composer verwendeten Dienstkonto Dataflow-Berechtigungen (wie in der meta_raw_dataflow Verbindung konfiguriert). Eine Anleitung finden Sie in der Dataflow-Dokumentation. Das Dienstkonto benötigt außerdem die Berechtigung Secret Manager Secret Accessor. Weitere Informationen finden Sie in der Dokumentation zur Zugriffssteuerung.

Anfrageparameter

Das Verzeichnis src/Meta/config/request_parameters enthält eine API-Anfragespezifikationsdatei für jede Entität, die aus der Meta Marketing API extrahiert wird. Jede Anfragedatei enthält eine Liste der Felder, die aus der Meta Marketing API abgerufen werden sollen, ein Feld pro Zeile. Weitere Informationen finden Sie in der Meta Marketing API-Referenz.

Einstellungen für die Aufnahme

Steuern Sie die Datenpipelines Source to Raw und Raw to CDC über die Einstellungen in der Datei src/Meta/config/ingestion_settings.yaml. In diesem Abschnitt werden die Parameter der einzelnen Datenpipelines beschrieben.

Tabellen von der Quelle zu den Rohdaten

Dieser Abschnitt enthält Einträge, mit denen gesteuert wird, welche Entitäten von APIs abgerufen werden und wie. Jeder Eintrag entspricht einer Meta Marketing API-Entität. Basierend auf dieser Konfiguration erstellt Cortex Framework Airflow-DAGs, die Dataflow-Pipelines ausführen, um Daten mithilfe von Meta Marketing APIs abzurufen.

Die Datei src/Meta/src/raw/pipelines/config.ini steuert einige Verhaltensweisen des Cloud Composer-DAG und die Verwendung von Meta Marketing APIs. Beschreibungen der einzelnen Parameter finden Sie in der Datei.

Die folgenden Parameter steuern die Einstellungen für Source to Raw für jeden Eintrag:

Parameter Beschreibung
base_table Tabelle im Rohdaten-Dataset, in der die abgerufenen Daten gespeichert werden (z. B. customer).
load_frequency Wie oft ein DAG für diese Ausführung ausgeführt wird, um Daten von Meta abzurufen. Weitere Informationen zu möglichen Werten finden Sie in der Airflow-Dokumentation.
object_endpoint API-Endpunktpfad (z. B. campaigns für den Endpunkt /{account_id}/campaigns).
entity_type Tabellentyp (muss einer von fact, dimension oder addaccount) sein).
object_id_column Spalten (durch Kommas getrennt), die einen eindeutigen Datensatz für diese Tabelle bilden. Nur erforderlich wenn entity_type fact ist.
breakdowns Optional: Aufschlüsselungsspalten (durch Kommas getrennt) für Einblicksendpunkte. Nur anwendbar wenn entity_type fact ist.
action_breakdowns Optional: Aufschlüsselungsspalten für Aktionen (durch Kommas getrennt) für Einblicksendpunkte. Nur anwendbar wenn entity_type fact ist.
partition_details Optional: Wenn diese Tabelle aus Leistungsgründen partitioniert werden soll. Weitere Informationen finden Sie unter Tabellenpartitionierung.
cluster_details Optional: Wenn diese Tabelle aus Leistungsgründen geclustert werden soll. Weitere Informationen finden Sie unter Clustereinstellungen.

Tabellen von den Rohdaten zu CDC

In diesem Abschnitt werden die Einträge beschrieben, mit denen gesteuert wird, wie Daten von Rohdatentabellen zu CDC-Tabellen verschoben werden. Jeder Eintrag entspricht einer Rohdatentabelle (die wiederum einer Meta-API-Entität entspricht).

Die folgenden Parameter steuern die Einstellungen für Raw to CDC für jeden Eintrag:

Parameter Beschreibung
base_table Tabelle, in die Rohdaten repliziert wurden. In einer Tabelle mit demselben Namen im CDC-Dataset werden die Rohdaten nach der CDC-Transformation gespeichert (z. B. campaign_insights).
row_identifiers Spalten (durch Kommas getrennt), die einen eindeutigen Datensatz für diese Tabelle bilden.
load_frequency Wie oft ein DAG für diese Entität ausgeführt wird, um die CDC-Tabelle zu füllen. Weitere Informationen zu möglichen Werten finden Sie in der Airflow-Dokumentation.
partition_details Optional: Wenn diese Tabelle aus Leistungsgründen partitioniert werden soll. Weitere Informationen finden Sie unter Tabellenpartitionierung.
cluster_details Optional: Wenn diese Tabelle aus Leistungsgründen geclustert werden soll. Weitere Informationen finden Sie unter Clustereinstellungen.

CDC-Tabellenschema

Für Meta werden alle Felder im Rohdatenlayer im Stringformat gespeichert. Im CDC Layer werden primitive Typen in relevante Geschäftsdatentypen konvertiert, und alle komplexen Typen im BigQuery-JSON-Format gespeichert.

Um diese Konvertierung zu aktivieren, enthält das Verzeichnis src/Meta/config/table_schema eine Schemadatei für jede Entität, die im Abschnitt raw_to_cdc_tables angegeben ist. Darin wird erklärt, wie jede BigQuery-Rohdatentabelle ordnungsgemäß in eine CDC-Tabelle übersetzt wird.

Jede Schemadatei enthält drei Spalten:

  • SourceField: Feldname der Rohdatentabelle für diese Entität.
  • TargetField: Spaltenname in der CDC-Tabelle für diese Entität.
  • DataType: Datentyp jedes CDC-Tabellenfelds.

Berichtseinstellungen

Sie können konfigurieren und steuern, wie Cortex Daten für den endgültigen Berichts-Layer von Meta generiert. Verwenden Sie dazu die Datei mit den Berichtseinstellungen (src/Meta/config/reporting_settings.yaml). Diese Datei steuert wie BigQuery-Objekte (Tabellen, Ansichten, Funktionen oder gespeicherte Prozeduren) für den Berichts-Layer generiert werden.

Weitere Informationen finden Sie unter Datei mit Berichtseinstellungen anpassen.

Nächste Schritte