Kopieren von Daten aus Google Ads mithilfe von Azure Data Factory oder Synapse Analytics

GILT FÜR: Azure Data Factory Azure Synapse Analytics

Tipp

Testen Sie Data Factory in Microsoft Fabric, eine All-in-One-Analyselösung für Unternehmen. Microsoft Fabric deckt alle Aufgaben ab, von der Datenverschiebung bis hin zu Data Science, Echtzeitanalysen, Business Intelligence und Berichterstellung. Erfahren Sie, wie Sie kostenlos eine neue Testversion starten!

In diesem Artikel wird beschrieben, wie Sie die Copy-Aktivität in Azure Data Factory- oder Azure Synapse Analytics-Pipelines verwenden, um Daten aus Google Ads zu kopieren. Er baut auf dem Artikel zur Übersicht über die Kopieraktivität auf, der eine allgemeine Übersicht über die Kopieraktivität enthält.

Wichtig

Aktualisieren Sie Ihre Google Ads-Treiberversion vor dem 18. Februar 2024. Falls nicht, schlägt die Verbindung aufgrund des veralteten Treibers mit einem Fehler fehl.

Unterstützte Funktionen

Dieser Google Ads-Connector wird für die folgenden Funktionen unterstützt:

Unterstützte Funktionen IR
Kopieraktivität (Quelle/-) ① ②
Lookup-Aktivität ① ②

① Azure Integration Runtime ② Selbstgehostete Integration Runtime

Eine Liste der Datenspeicher, die als Quellen/Senken unterstützt werden, finden Sie in der Tabelle Unterstützte Datenspeicher.

Der Dienst enthält einen integrierten Treiber zum Herstellen der Konnektivität. Daher müssen Sie keinen Treiber manuell installieren, wenn dieser Connector verwendet wird.

Erste Schritte

Sie können eines der folgenden Tools oder SDKs verwenden, um die Kopieraktivität mit einer Pipeline zu verwenden:

Erstellen eines verknüpften Diensts mit Google Ads über die Benutzeroberfläche

Verwenden Sie die folgenden Schritte, um einen verknüpften Dienst mit Google Ads auf der Azure-Portal-Benutzeroberfläche zu erstellen.

  1. Navigieren Sie in Ihrem Azure Data Factory- oder Synapse-Arbeitsbereich zu der Registerkarte „Verwalten“, wählen Sie „Verknüpfte Dienste“ aus und klicken Sie dann auf „Neu“:

  2. Suchen Sie nach Google Ads, und wählen Sie den Google Ads-Connector aus.

    Screenshot des Google Ads-Connectors.

  3. Konfigurieren Sie die Dienstdetails, testen Sie die Verbindung, und erstellen Sie den neuen verknüpften Dienst.

    Screenshot der Konfiguration des verknüpften Diensts für Google Ads.

Details zur Connector-Konfiguration

Die folgenden Abschnitte enthalten Details zu Eigenschaften, die zum Definieren von Data Factory-Entitäten verwendet werden, die für den Google Ads-Connector spezifisch sind.

Eigenschaften des verknüpften Diensts

Folgende Eigenschaften werden für den mit Google Ads verknüpften Dienst unterstützt:

Eigenschaft Beschreibung Erforderlich
type Die type-Eigenschaft muss auf Folgendes festgelegt werden: GoogleAdWords Ja
googleAdsApiVersion Die Google Ads-API-Version, die Sie verwenden, wenn Sie die empfohlene Treiberversion auswählen. Informationen zur API-Version finden Sie in diesem Artikel. Ja
clientCustomerID Die Clientkunden-ID des Ads-Kontos, für das Sie Berichtsdaten abrufen möchten. Ja
loginCustomerID Die Kunden-ID des Google Ads-Manager-Kontos, über das Sie Berichtsdaten eines bestimmten Kunden abrufen möchten. Nein
developerToken Das Entwicklertoken, das dem Managerkonto, mit dem Sie den Zugriff auf die Ads-API gewähren möchten, zugeordnet ist. Sie können dieses Feld optional als SecureString markieren, um es sicher zu speichern, oder dieses Kennwort in Azure Key Vault speichern und von dort von der Copy-Aktivität abrufen lassen, wenn Datenkopiervorgänge durchgeführt werden. Weitere Informationen finden Sie unter Speichern von Anmeldeinformationen in Key Vault. Ja
authenticationType Der OAuth 2.0-Authentifizierungsmechanismus, der für die Authentifizierung verwendet wird.
Zulässige Werte: ServiceAuthentication, UserAuthentication.
„ServiceAuthentication“ kann nur für eine selbstgehostete IR verwendet werden.
Ja
Für UserAuthentication:
refreshToken Das Aktualisierungstoken, das von Google zum Autorisieren des Zugriffs auf Ads für UserAuthentication abgerufen wird. Sie können dieses Feld optional als SecureString markieren, um es sicher zu speichern, oder dieses Kennwort in Azure Key Vault speichern und von dort von der Copy-Aktivität abrufen lassen, wenn Datenkopiervorgänge durchgeführt werden. Weitere Informationen finden Sie unter Speichern von Anmeldeinformationen in Key Vault. Nein
clientId Die Client-ID der Google-Anwendung, die zum Abrufen des Aktualisierungstokens verwendet wird. Sie können dieses Feld optional als SecureString markieren, um es sicher zu speichern, oder dieses Kennwort in Azure Key Vault speichern und von dort von der Copy-Aktivität abrufen lassen, wenn Datenkopiervorgänge durchgeführt werden. Weitere Informationen finden Sie unter Speichern von Anmeldeinformationen in Key Vault. Nein
clientSecret Das Clientgeheimnis der Google-Anwendung, die zum Abrufen des Aktualisierungstokens verwendet wird. Sie können dieses Feld optional als SecureString markieren, um es sicher zu speichern, oder dieses Kennwort in Azure Key Vault speichern und von dort von der Copy-Aktivität abrufen lassen, wenn Datenkopiervorgänge durchgeführt werden. Weitere Informationen finden Sie unter Speichern von Anmeldeinformationen in Key Vault. Nein
Für ServiceAuthentication:
email Die E-Mail-ID des Dienstkontos, die für die „ServiceAuthentication“ verwendet wird und nur für selbstgehostete IRs verwendet werden kann. Nein
privateKey Der private Schlüssel des Dienstes, der für die „ServiceAuthentication“ für die empfohlene Treiberversion verwendet wird und nur für selbstgehostete IRs verwendet werden kann. Sie können dieses Feld optional als SecureString markieren, um es sicher zu speichern, oder dieses Kennwort in Azure Key Vault speichern und von dort von der Copy-Aktivität abrufen lassen, wenn Datenkopiervorgänge durchgeführt werden. Weitere Informationen finden Sie unter Speichern von Anmeldeinformationen in Key Vault. Nein
Für ServiceAuthentication unter Verwendung der Legacy-Treiberversion:
email Die E-Mail-ID des Dienstkontos, die für die „ServiceAuthentication“ verwendet wird und nur für selbstgehostete IRs verwendet werden kann. Nein
keyFilePath Der vollständige Pfad zur .p12- oder .json-Schlüsseldatei, die zur Authentifizierung der E-Mail-Adresse des Dienstkontos verwendet wird und nur für selbstgehostete IRs verwendet werden kann. Nein
trustedCertPath Der vollständige Pfad der PEM-Datei mit vertrauenswürdigen Zertifizierungsstellenzertifikaten zur Überprüfung des Servers beim Verbindungsaufbau über TLS. Diese Eigenschaft kann nur festgelegt werden, wenn TLS in einer selbstgehosteten IR verwendet wird. Der Standardwert ist die Datei „cacerts.pem“, die mit der IR installiert wird. Nein
useSystemTrustStore Gibt an, ob ein Zertifizierungsstellenzertifikat aus dem Vertrauensspeicher des Systems oder aus einer angegebenen PEM-Datei verwendet werden soll. Der Standardwert ist false. Nein

Beispiel:

{
    "name": "GoogleAdsLinkedService",
    "properties": {
        "type": "GoogleAdWords",
        "typeProperties": {
            "clientCustomerID": "<clientCustomerID>",
            "loginCustomerID": "<loginCustomerID>",
            "developerToken": {
                "type": "SecureString",
                "value": "<developerToken>"
            },
            "authenticationType": "UserAuthentication",
            "refreshToken": {
                "type": "SecureString",
                "value": "<refreshToken>"
            },
            "clientId": {
                "type": "SecureString",
                "value": "<clientId>"
            },
            "clientSecret": {
                "type": "SecureString",
                "value": "<clientSecret>"
            },
            "googleAdsApiVersion": "v14"
        }
    }
}

Dataset-Eigenschaften

Eine vollständige Liste mit den Abschnitten und Eigenschaften, die zum Definieren von Datasets zur Verfügung stehen, finden Sie im Artikel zu Datasets. Dieser Abschnitt enthält eine Liste der Eigenschaften, die vom Google Ads-Dataset unterstützt werden.

Legen Sie zum Kopieren von Daten aus Google Ads die type-Eigenschaft des Datasets auf GoogleAdWordsObject fest. Folgende Eigenschaften werden unterstützt:

Eigenschaft Beschreibung Erforderlich
type Die type-Eigenschaft des Datasets muss auf folgenden Wert festgelegt werden: GoogleAdWordsObject Ja
tableName Der Name der Tabelle. Geben Sie diese Eigenschaft an, wenn Sie die Legacy-Treiberversion verwenden. Nein (wenn „query“ in der Aktivitätsquelle angegeben ist)

Beispiel

{
    "name": "GoogleAdsDataset",
    "properties": {
        "type": "GoogleAdWordsObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<GoogleAds linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Eigenschaften der Kopieraktivität

Eine vollständige Liste mit den Abschnitten und Eigenschaften zum Definieren von Aktivitäten finden Sie im Artikel Pipelines. Dieser Abschnitt enthält eine Liste der Eigenschaften, die von der Google Ads-Quelle unterstützt werden.

Legen Sie zum Kopieren von Daten aus Google Ads den Quelltyp in der Kopieraktivität auf GoogleAdWordsSource fest. Folgende Eigenschaften werden im Abschnitt source der Kopieraktivität unterstützt:

Eigenschaft Beschreibung Erforderlich
type Die type-Eigenschaft der Quelle der Kopieraktivität muss auf Folgendes festgelegt werden: GoogleAdWordsSource Ja
query Verwenden Sie die GAQL-Abfrage zum Lesen von Daten. Beispiel: SELECT campaign.id FROM campaign Nein (wenn „tableName“ im Dataset angegeben ist)

Beispiel:

"activities":[
    {
        "name": "CopyFromGoogleAds",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<GoogleAds input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "GoogleAdWordsSource",
                "query": "SELECT campaign.id FROM campaign"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Eigenschaften der Lookup-Aktivität

Ausführliche Informationen zu den Eigenschaften finden Sie unter Lookup-Aktivität.

Aktualisieren der Google Ads-Treiberversion

Um Ihre Google Ads-Treiberversion zu aktualisieren, müssen Sie Ihren verknüpften Dienst aktualisieren und erfahren, wie Sie von SQL zu Google Ads Query Language (GAQL) migrieren.

Aktualisieren der Konfiguration des verknüpften Diensts

Wählen Sie auf der Seite Verknüpften Dienst bearbeiten unter Treiberversion die Option Empfohlen aus, und konfigurieren Sie den verknüpften Dienst, indem Sie auf Eigenschaften des verknüpften Diensts verweisen.

Migrieren von SQL zu GAQL

Konvertieren Sie Ihre Abfrageanweisungen und Feldnamen beim Migrieren von SQL zu GAQL.

Abfrageanweisungen

Wenn Sie eine SQL-Abfrage in der Quelle der Kopieraktivität oder der Lookupaktivität verwenden, die sich auf den verknüpften Google Ads-Legacy-Dienst bezieht, müssen Sie sie in eine GAQL-Abfrage aktualisieren.

Im Gegensatz zu SQL besteht die Abfrage in GAQL aus sechs Arten von Klauseln:

  • SELECT
  • FROM
  • WHERE
  • ORDER BY
  • LIMIT
  • PARAMETERS

Wechseln Sie zu Google Ads Query Language Grammar für die Einführung von GAQL.

Ein Beispiel hierfür wäre etwa die folgende SQL-Anweisung:

SELECT *|FieldName FROM ResourceName WHERE FieldName Operator Value

Sie können den Anweisungen unten folgen, um die SQL-Anweisung in die entsprechende GAQL-Anweisung zu konvertieren:

  1. Wenn * (Sternchen) nach der SELECT-Klausel verwendet wird, müssen Sie alle erforderlichen Felder anstelle des Sternchens angeben, da GAQL SELECT * nicht unterstützt. Wechseln Sie zu diesem Artikel, um alle auswählbaren Felder in der jeweiligen Ressource anzuzeigen.
  2. Wenn der Feldname nach der SELECT-Klausel verwendet wird, müssen Sie den Namen in den entsprechenden Feldnamen in GAQL konvertieren, da sie unterschiedliche Benennungskonventionen aufweisen. Beispielsweise sollte der Feldname campaign_id in SQL-Abfrageanweisungen in GAQL in campaign.id konvertiert werden. Weitere Informationen zur Feldnamenkonvertierung finden Sie unter Feldnamen.
  3. Der Ressourcenname kann so bleiben, wie er ist, es sei denn, der Fall ist mit dem hier angegebenen inkonsistent.
  4. Die WHERE-Klausel sollte entsprechend der GAQL-Grammatik aktualisiert werden, da die von GAQL unterstützten Operatoren nicht mit SQL konsistent sind, und der Feldname sollte ebenfalls wie im zweiten Punkt beschrieben konvertiert werden.

Hier sind zwei sehr nützliche Tools, die von Google angeboten werden, und sie werden beim Erstellen der entsprechenden GAQL-Abfrageanweisungen dringend empfohlen:

Feldname

Der in SQL verwendete Feldname ist nicht an GAQL ausgerichtet. Außerdem müssen Sie die Regeln für die Konvertierung von Feldnamen in SQL in Feldnamen in GAQL erlernen. Die Konvertierungsregel kann in folgender Weise zusammengefasst werden:

  • Wenn der Feldname zu einer Ressource gehört, wird der Unterstrich (_) in SQL in einen Punkt (.) in GAQL geändert. Und für die Wörter zwischen dem Punkt wird die in SQL verwendete CamelCase-Typ-Anweisung in eigenständige Wörter mit zusätzlichen Unterstrichen geändert. Die erste Zeichenfolge vom Typ PascalCase in SQL wird in GAQL in den entsprechenden Ressourcennamen geändert.

  • Wenn der Feldname zu Segmenten oder Metriken gehört, sollte das Präfix segments. oder metrics. in GAQL hinzugefügt werden. Befolgen Sie dann dieselbe Regel wie im ersten Punkt beschrieben, um den Namen zu konvertieren.

Hier sind die konkreten Beispiele für die Feldnamenkonvertierung:

Kategorie Feldnamen in SQL Feldnamen in GAQL
Ressourcenfelder Campaign_startDate campaign.start_date
Ressourcenfelder Customer_conversionTrackingSetting_conversionTrackingStatus customer.conversion_tracking_setting.conversion_tracking_status
Segmente DayOfWeek segments.day_of_week
Metriken VideoViews metrics.video_views

In der nachstehenden Tabelle sind die Featureunterschiede zwischen Google Ads unter Verwendung der empfohlenen und der Legacy-Treiberversion dargestellt.

Empfohlene Treiberversion Legacy-Treiberversion
Die Angabe der Google Ads-API-Version wird unterstützt. Die Angabe der Google Ads-API-Version wird nicht unterstützt.
ServiceAuthentication unterstützt zwei Eigenschaften:
  • email
  • privateKey
ServiceAuthentication unterstützt vier Eigenschaften:
  • email
  • keyFilePath
  • trustedCertPath
  • useSystemTrustStore
Das Auswählen einer Tabelle in einem Dataset wird nicht unterstützt. Das Auswählen einer Tabelle in einem Dataset und das Abfragen der Tabelle in Kopieraktivitäten werden unterstützt.
Die GAQL-Syntax als Abfragesprache wird unterstützt. Die SQL-Syntax als Abfragesprache wird unterstützt.
Die Ausgabespaltennamen sind identisch mit den in Google Ads definierten Feldnamen. Die Ausgabespaltennamen entsprechen nicht den in Google Ads definierten Feldnamen.
Die folgenden Zuordnungen von Google Ads-Datentypen zu Zwischendatentypen werden intern vom Dienst verwendet.

float -> float
int32 -> int
int64 -> long
Die folgenden Zuordnungen von Google Ads-Datentypen zu Zwischendatentypen werden intern vom Dienst verwendet.

float -> string
int32 -> string
int64 -> string

Aktualisieren des Google AdWords-Connectors auf den Google Ads-Connector

Führen Sie ein Upgrade Ihres verknüpften Google AdWords-Diensts auf den neuesten verknüpften Google Ads-Dienst durch, und führen Sie die folgenden Schritte aus:

  1. Wählen Sie Empfohlen als Treiberversion aus, um einen neuen verknüpften Google Ads-Dienst zu erstellen, und konfigurieren Sie ihn, indem Sie auf Eigenschaften des verknüpften Diensts verweisen.

  2. Aktualisieren Sie Ihre Pipelines, die auf den verknüpften Google AdWords-Legacy-Dienst verweisen. In Anbetracht der Tatsache, dass der verknüpfte Google Ads-Dienst nur die Abfrage zum Kopieren von Daten unterstützt, gilt:

    1. Wenn Ihre Pipeline Daten direkt aus dem Bericht von Google AdWords abruft, suchen Sie den entsprechenden Ressourcennamen von Google Ads in der folgenden Tabelle, und verwenden Sie dieses Tool, um die Abfrage zu erstellen.

      Google AdWords-Bericht Google Ads-Ressource
      ACCOUNT_PERFORMANCE_REPORT customer
      AD_PERFORMANCE_REPORT ad_group_ad
      ADGROUP_PERFORMANCE_REPORT ad_group
      AGE_RANGE_PERFORMANCE_REPORT age_range_view
      AUDIENCE_PERFORMANCE_REPORT campaign_audience_view,ad_group_audience_view
      AUTOMATIC_PLACEMENTS_PERFORMANCE_REPORT group_placement_view
      BID_GOAL_PERFORMANCE_REPORT bidding_strategy
      BUDGET_PERFORMANCE_REPORT campaign_budget
      CALL_METRICS_CALL_DETAILS_REPORT call_view
      CAMPAIGN_AD_SCHEDULE_TARGET_REPORT ad_schedule_view
      CAMPAIGN_CRITERIA_REPORT campaign_criterion
      CAMPAIGN_PERFORMANCE_REPORT Kampagne
      CAMPAIGN_SHARED_SET_REPORT campaign_shared_set
      CAMPAIGN_LOCATION_TARGET_REPORT location_view
      CLICK_PERFORMANCE_REPORT click_view
      DISPLAY_KEYWORD_PERFORMANCE_REPORT display_keyword_view
      DISPLAY_TOPICS_PERFORMANCE_REPORT topic_view
      GENDER_PERFORMANCE_REPORT gender_view
      GEO_PERFORMANCE_REPORT geographic_view,user_location_view
      KEYWORDLESS_QUERY_REPORT dynamic_search_ads_search_term_view
      KEYWORDS_PERFORMANCE_REPORT keyword_view
      LABEL_REPORT label
      LANDING_PAGE_REPORT landing_page_view,expanded_landing_page_view
      PAID_ORGANIC_QUERY_REPORT paid_organic_search_term_view
      PARENTAL_STATUS_PERFORMANCE_REPORT parental_status_view
      PLACEHOLDER_FEED_ITEM_REPORT feed_item,feed_item_target
      PLACEHOLDER_REPORT feed_placeholder_view
      PLACEMENT_PERFORMANCE_REPORT managed_placement_view
      PRODUCT_PARTITION_REPORT product_group_view
      SEARCH_QUERY_PERFORMANCE_REPORT search_term_view
      SHARED_SET_CRITERIA_REPORT shared_criterion
      SHARED_SET_REPORT shared_set
      SHOPPING_PERFORMANCE_REPORT shopping_performance_view
      TOP_CONTENT_PERFORMANCE_REPORT In der Google Ads-API nicht mehr verfügbar.
      URL_PERFORMANCE_REPORT detail_placement_view
      USER_AD_DISTANCE_REPORT distance_view
      VIDEO_PERFORMANCE_REPORT Video
    2. Wenn die Pipeline Abfrage zum Abrufen von Daten aus Google AdWords verwendet, verwenden Sie das Abfragemigrationstool, um die AWQL (AdWords Query Language) in GAQL (Google Ads Query Language) zu übersetzen.

  3. Beachten Sie, dass bei diesem Upgrade bestimmte Einschränkungen gelten:

    1. Nicht alle Berichtstypen von AWQL werden in GAQL unterstützt.
    2. Nicht alle AWQL-Abfragen werden sauber in GAQL-Abfragen übersetzt.

Eine Liste der Datenspeicher, die als Quelles und Senken für die Kopieraktivität unterstützt werden, finden Sie in der Dokumentation für Unterstützte Datenspeicher.