Google Ad Manager-Übertragungen
Mit dem BigQuery Data Transfer Service für den Google Ad Manager-Connector können Sie wiederkehrende Ladejobs für die Berichtsdaten von Google Ad Manager (früher bekannt als DoubleClick for Publishers) automatisch erstellen und verwalten.
Unterstützte Berichte
Der BigQuery Data Transfer Service für den Google Ad Manager-Connector unterstützt die folgenden Berichtsoptionen:
- Data Transfer-Dateien (Google Ad Manager DT)
- Data Transfer-Felder
- Match-Tables, die vom BigQuery Data Transfer Service bereitgestellt werden Sie werden automatisch erstellt und aktualisiert.
- Mit PQL abgerufene Match-Tables
- Match-Tables von CompanyService (v201908)
- Match-Tables von OrderService (v201908)
- Match-Tables von PlacementService (v201908)
Informationen zur Umwandlung von Google Ad Manager-Berichten in BigQuery-Tabellen und -Ansichten finden Sie unter Google Ad Manager-Berichte umwandeln.
Berichtsoption | Support |
---|---|
Wiederholungshäufigkeit | Alle acht Stunden, je nach Erstellungszeitpunkt Nicht konfigurierbar |
Aktualisierungsfenster | Letzte zwei Tage Nicht konfigurierbar |
Maximale Backfill-Dauer | Letzte 60 Tage Google Ad Manager speichert Data Transfer-Dateien bis zu 60 Tage lang. Dateien, die älter als 60 Tage sind, werden von Google Ad Manager gelöscht. |
Datenaufnahme aus Google Ad Manager-Übertragungen
Wenn Sie Daten aus Google Ad manager in BigQuery übertragen, werden die Daten in BigQuery-Tabellen geladen, die nach Datum partitioniert sind. Die Tabellenpartition, in die die Daten geladen werden, entspricht dem Datum aus der Datenquelle. Wenn Sie mehrere Übertragungen für dasselbe Datum planen, überschreibt BigQuery Data Transfer Service die Partition für dieses Datum mit den neuesten Daten. Mehrere Übertragungen am selben Tag oder laufende Backfills führen nicht zu doppelten Daten; Partitionen für andere Daten sind nicht betroffen.Fenster aktualisieren
Ein Aktualisierungsfenster ist die Anzahl der Tage, an denen eine Datenübertragung Daten zu einer Datenübertragung abruft. Wenn das Aktualisierungsfenster beispielsweise drei Tage beträgt und eine tägliche Übertragung erfolgt, ruft der BigQuery Data Transfer Service alle Daten aus Ihrer Quelltabelle der letzten drei Tage ab. In diesem Beispiel erstellt der BigQuery Data Transfer Service bei einer täglichen Übertragung eine neue BigQuery-Zieltabellenpartition mit einer Kopie der Daten der Quelltabelle vom aktuellen Tag und löst dann automatisch Backfill-Ausführungen aus, um die BigQuery-Zieltabellenpartitionen mit den Daten der Quelltabelle aus den letzten zwei Tagen zu aktualisieren. Die automatisch ausgelösten Backfill-Ausführungen überschreiben oder aktualisieren Ihre BigQuery-Zieltabelle entweder schrittweise oder aktualisieren sie, je nachdem, ob inkrementelle Aktualisierungen im BigQuery Data Transfer Service-Connector unterstützt werden oder nicht.
Wenn Sie eine Datenübertragung zum ersten Mal ausführen, werden alle Quelldaten abgerufen, die innerhalb des Aktualisierungszeitraums verfügbar sind. Wenn das Aktualisierungsfenster beispielsweise drei Tage beträgt und Sie die Datenübertragung zum ersten Mal ausführen, ruft der BigQuery Data Transfer Service alle Quelldaten innerhalb von drei Tagen ab.
Aktualisierungsfenster sind dem API-Feld TransferConfig.data_refresh_window_days
zugeordnet.
Wenn Sie Daten außerhalb des Aktualisierungszeitraums abrufen möchten, z. B. Verlaufsdaten, oder Daten nach Übertragungsausfällen oder -lücken wiederherstellen möchten, können Sie einen Backfill-Vorgang initiieren oder planen.
Inkrementelle Aktualisierungen
Tabellen, die aus Google Ad Manager-Datenübertragungsdateien (Google Ad Manager DT) erstellt werden, können inkrementell aktualisiert werden. Die DT-Dateien von Google Ad Manager werden von Google Ad Manager in den Cloud Storage-Bucket hochgeladen. Bei einer Übertragung werden die neuen Google Ad Manager-DT-Dateien dann inkrementell aus dem Cloud Storage-Bucket in die BigQuery-Tabelle geladen, ohne dass bereits in die BigQuery-Tabelle übertragene Dateien noch einmal geladen werden.
Beispiel: In Google Ad Manager wird file1
um 1:00 Uhr und file2
um 2:00 Uhr in den Bucket eingefügt. Eine Übertragung beginnt um 3:30 Uhr und lädt file1
und file2
in BigQuery hoch. In Google Ad Manager werden dann um 5:00 Uhr file3
und um 6:00 Uhr file4
hinzugefügt. Um 7:30 Uhr beginnt ein zweiter Übertragungslauf, bei dem file3
und file4
an BigQuery angehängt werden, anstatt die Tabelle durch Laden aller vier Dateien zu überschreiben.
Hinweise
Führen Sie die folgenden Aktionen aus, bevor Sie eine Google Ad Manager-Datenübertragung erstellen:
- Überprüfen Sie, ob Sie alle erforderlichen Aktionen ausgeführt haben, damit Sie den BigQuery Data Transfer Service aktivieren können.
- Erstellen Sie ein BigQuery-Dataset zum Speichern der Google Ad Manager-Daten.
-
Achten Sie darauf, dass Ihre Organisation Zugriff auf die Data Transfer-Dateien von Google Ad Manager (Google Ad Manager DT) hat. Diese Dateien werden vom Google Ad Manager-Team an einen Cloud Storage-Bucket geliefert. Um Zugriff auf DT-Dateien von Google Ad Manager zu erhalten, sehen Sie sich die Ad Manager-Datenübertragungsberichte an. Möglicherweise fallen zusätzliche Kosten vom Google Ad Manager-Team an.
Nach der Ausführung dieses Schritts erhalten Sie einen Cloud Storage-Bucket ähnlich dem folgenden:
gdfp-12345678
Das Google Cloud-Team kann in Ihrem Namen KEINE DT-Dateien von Google Ad Manager generieren oder Zugriff auf sie gewähren. Wenden Sie sich an den Support von Google Ad Manager, um auf DT-Dateien von Google Ad Manager zuzugreifen.
- Aktivieren Sie den API-Zugriff auf Ihr Google Ad Manager-Netzwerk.
- Wenn Sie Datenübertragungsbenachrichtigungen einrichten möchten, benötigen Sie Berechtigungen des Typs
pubsub.topics.setIamPolicy
für Pub/Sub. Pub/Sub-Berechtigungen sind nicht erforderlich, wenn Sie nur E-Mail-Benachrichtigungen einrichten. Weitere Informationen finden Sie unter Ausführungsbenachrichtigungen im BigQuery Data Transfer Service.
Erforderliche Berechtigungen
BigQuery: Achten Sie darauf, dass die Person, die die Datenübertragung erstellt, die folgenden Berechtigungen in BigQuery hat:
bigquery.transfers.update
-Berechtigungen zum Erstellen der Datenübertragung- Die Berechtigungen
bigquery.datasets.get
undbigquery.datasets.update
für das Ziel-Dataset
Die vordefinierte IAM-Rolle
bigquery.admin
enthält die Berechtigungenbigquery.transfers.update
,bigquery.datasets.update
undbigquery.datasets.get
. Weitere Informationen zu IAM-Rollen in BigQuery Data Transfer Service finden Sie in der Zugriffssteuerung.Google Ad Manager: Lesezugriff auf die DT-Dateien von Google Ad Manager, die in Cloud Storage gespeichert sind. Berechtigungen für DT-Dateien von Google Ad Manager werden vom Google Ad Manager-Team verwaltet. Zusätzlich zu den DT-Dateien von Google Ad Manager muss die Person, die die Datenübertragung erstellt, dem Google Ad Manager-Netzwerk mit Lesezugriff auf alle Entitäten hinzugefügt werden, die zum Erstellen der verschiedenen Match-Tables (Position, Auftrag, Anzeigenblock usw.) erforderlich sind. Dies kann am einfachsten erfolgen, indem Sie den Ad Manager-Nutzer hinzufügen, der die Datenübertragung für das Team für alle Entitäten in Ad Manager authentifiziert hat.
Google Ad Manager-Übertragung einrichten
Zur Einrichtung einer BigQuery-Datenübertragung für Google Ad Manager wird Folgendes benötigt:
Cloud Storage-Bucket: Der Cloud Storage-Bucket-URI für die DT-Dateien von Google Ad Manager, wie unter Vorbereitung beschrieben. Der Bucket-Name sollte so aussehen:
gdfp-12345678
Netzwerkcode: Sie finden den Netzwerkcode für Google Ad Manager in der URL, wenn Sie in Ihrem Netzwerk angemeldet sind. In der URL
https://admanager.google.com/2032576#delivery
ist beispielsweise2032576
der Netzwerkcode. Weitere Informationen finden Sie in der Einführung zu Google Ad Manager.
So erstellen Sie eine BigQuery Data Transfer Service-Datenübertragung für Google Ad Manager:
Console
Rufen Sie in der Google Cloud Console die Seite Datenübertragungen auf.
Klicken Sie auf
Übertragung erstellen.Auf der Seite Übertragung erstellen:
- Wählen Sie im Abschnitt Source type (Quelltyp) als Source (Quelle) die Option Google Ad Manager (früher DFP) aus.
- Geben Sie im Abschnitt Transfer config name (Konfigurationsname für Übertragung) für Display name (Anzeigename) einen Namen wie
My Transfer
für die Datenübertragung ein. Der Übertragungsname kann ein beliebiger Wert sein, mit dem Sie die Übertragung identifizieren können, wenn Sie sie später ändern müssen.
- Wählen Sie im Abschnitt Zieleinstellungen für Dataset das Dataset aus, das Sie zum Speichern Ihrer Daten erstellt haben.
- Im Abschnitt Details zur Datenquelle:
- Geben Sie für Cloud Storage-Bucket den Namen des Cloud Storage-Buckets ein, in dem die Datenübertragungsdateien gespeichert sind. Geben Sie den Bucket-Namen ohne
gs://
ein. - Geben Sie als Netzwerkcode Ihren Netzwerkcode ein.
- Geben Sie für Cloud Storage-Bucket den Namen des Cloud Storage-Buckets ein, in dem die Datenübertragungsdateien gespeichert sind. Geben Sie den Bucket-Namen ohne
Wählen Sie im Menü Dienstkonto ein Dienstkonto aus den Dienstkonten aus, die mit Ihrem Google Cloud-Projekt verknüpft sind. Sie können Ihre Übertragung mit einem Dienstkonto verknüpfen, anstatt Ihre Nutzeranmeldedaten zu verwenden. Weitere Informationen zur Verwendung von Dienstkonten mit Datenübertragungen finden Sie unter Dienstkonten verwenden.
Wenn Sie sich mit einer föderierten Identität angemeldet haben, ist ein Dienstkonto zum Erstellen einer Übertragung erforderlich. Wenn Sie sich mit einem Google-Konto angemeldet haben, ist ein Dienstkonto für die Übertragung optional. Das Dienstkonto muss die erforderlichen Berechtigungen haben.Optional: Im Abschnitt Notification options (Benachrichtigungsoptionen):
- Klicken Sie auf die Umschaltfläche, um E-Mail-Benachrichtigungen zu aktivieren. Wenn Sie diese Option aktivieren, erhält der Übertragungsadministrator eine E-Mail-Benachrichtigung, wenn ein Übertragungsvorgang fehlschlägt.
- Klicken Sie auf die Ein/Aus-Schaltfläche, um Pub/Sub-Benachrichtigungen zu aktivieren. Wählen Sie unter Cloud Pub/Sub-Thema auswählen den Namen des Themas aus oder klicken Sie auf Thema erstellen. Mit dieser Option werden Pub/Sub-Ausführungsbenachrichtigungen für Ihre Übertragung konfiguriert.
Klicken Sie auf Speichern.
bq
Geben Sie den Befehl bq mk
ein und geben Sie das Flag --transfer_config
für die Übertragungserstellung an. Die folgenden Flags sind ebenfalls erforderlich:
--data_source
--target_dataset
--display_name
--params
Optionale Flags:
--service_account_name
: Gibt ein Dienstkonto an, das für die Übertragungsauthentifizierung in Google Ad Manager anstelle Ihres Nutzerkontos verwendet werden soll.
bq mk --transfer_config \ --project_id=project_id \ --target_dataset=dataset \ --display_name=name \ --params='parameters' \ --data_source=data_source \ --service_account_name=service_account_name
Dabei gilt:
- project_id ist die Projekt-ID.
- dataset ist das Ziel-Dataset für die Übertragungskonfiguration.
- name ist der Anzeigename für die Datenübertragungskonfiguration. Der Übertragungsname kann ein beliebiger Wert sein, mit dem Sie die Datenübertragung identifizieren können, wenn Sie sie später ändern müssen.
- parameters enthält die Parameter für die erstellte Übertragungskonfiguration im JSON-Format. Beispiel:
--params='{"param":"param_value"}'
. Bei Google Ad Manager müssen Sie die Parameterbucket
undnetwork_code
angeben.bucket
ist der Cloud Storage-Bucket, der die DT-Dateien von Google Ad Manager enthält.network_code
ist der Netzwerkcode. - data_source ist die Datenquelle:
dfp_dt
(Google Ad Manager). - service_account_name ist der Name des Dienstkontos, der zur Authentifizierung der Datenübertragung verwendet wird. Das Dienstkonto sollte zum selben
project_id
gehören, das für die Erstellung der Übertragung verwendet wurde, und sollte alle erforderlichen Berechtigungen haben.
Sie können auch das Flag --project_id
bereitstellen, um ein bestimmtes Projekt anzugeben. Wenn --project_id
nicht angegeben ist, wird das Standardprojekt verwendet.
Mit dem folgenden Befehl wird beispielsweise eine Google Ad Manager-Datenübertragung mit dem Namen My Transfer
erstellt. Dabei werden der Netzwerkcode 12345678
, der Cloud Storage-Bucket gdfp-12345678
und das Ziel-Dataset mydataset
verwendet. Die Datenübertragung wird im Standardprojekt erstellt:
bq mk --transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"bucket": "gdfp-12345678","network_code": "12345678"}' \
--data_source=dfp_dt
Nachdem Sie den Befehl ausgeführt haben, erhalten Sie eine Meldung wie die Folgende:
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
Folgen Sie der Anleitung und fügen Sie den Authentifizierungscode in die Befehlszeile ein.
API
Verwenden Sie die Methode projects.locations.transferConfigs.create
und geben Sie eine Instanz der Ressource TransferConfig
an.
Java
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Java in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Java API.
Richten Sie zur Authentifizierung bei BigQuery die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Fehlerbehebung bei der Einrichtung der Google Ad Manager-Übertragung
Falls beim Einrichten von Datenübertragungen Probleme auftreten, finden Sie unter Fehlerbehebung bei Übertragungskonfigurationen im Abschnitt Übertragungsprobleme mit Google Ad Manager weitere Informationen.
Daten abfragen
Bei der Übertragung Ihrer Daten in BigQuery werden die Daten in zeitpartitionierte Tabellen geschrieben. Weitere Informationen finden Sie unter Einführung in partitionierte Tabellen.
Wenn Sie die Tabellen direkt abfragen, anstatt die automatisch generierten Ansichten zu verwenden, müssen Sie in der Abfrage die Pseudospalte _PARTITIONTIME
verwenden. Weitere Informationen finden Sie unter Partitionierte Tabellen abfragen.
Google Ad Manager-Beispielabfragen
Sie können die folgenden Google Ad Manager-Beispielabfragen verwenden, um Ihre übertragenen Daten zu analysieren. Sie können die Abfragen auch in einem Visualisierungstool wie Looker Studio aufrufen. Diese Abfragen werden zur Verfügung gestellt, um Ihnen den Einstieg in das Abfragen Ihrer Google Ad Manager-Daten mit BigQuery zu erleichtern. Bei weiteren Fragen zur Nutzung dieser Berichte wenden Sie sich an einen technischen Mitarbeiter von Google Ad Manager.
Ersetzen Sie in jeder der folgenden Abfragen Variablen wie dataset durch Ihre Werte. Ersetzen Sie beispielsweise network_code durch Ihren Google Ad Manager-Netzwerkcode.
Impressionen und einzelne Nutzer nach Stadt
Die folgende SQL-Beispielabfrage analysiert die Anzahl von Impressionen und einzelnen Nutzern nach Stadt in den letzten 30 Tagen.
# START_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) # END_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) SELECT City, _DATA_DATE AS Date, count(*) AS imps, count(distinct UserId) AS uniq_users FROM `dataset.NetworkImpressionsnetwork_code` WHERE _DATA_DATE BETWEEN start_date AND end_date GROUP BY City, Date
Impressionen und einzelne Nutzer nach Werbebuchungstyp
Die folgende SQUL-Beispielabfrage analysiert die Anzahl von Impressionen und einzelnen Nutzern nach Werbebuchungstyp in den letzten 30 Tagen.
# START_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) # END_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) SELECT MT.LineItemType AS LineItemType, DT._DATA_DATE AS Date, count(*) AS imps, count(distinct UserId) AS uniq_users FROM `dataset.NetworkImpressionsnetwork_code` AS DT LEFT JOIN `dataset.MatchTableLineItem_network_code` AS MT ON DT.LineItemId = MT.Id WHERE DT._DATA_DATE BETWEEN start_date AND end_date GROUP BY LineItemType, Date ORDER BY Date desc, imps desc
Impressionen nach Anzeigenblock
Die folgende SQL-Beispielabfrage analysiert die Anzahl von Impressionen nach Anzeigenblock in den letzten 30 Tagen.
# START_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) # END_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) SELECT MT.AdUnitCode AS AdUnitCode, DT.DATA_DATE AS Date, count(*) AS imps FROM `dataset.NetworkImpressionsnetwork_code` AS DT LEFT JOIN `dataset.MatchTableLineItem_network_code` AS MT ON DT.AdUnitId = MT.Id WHERE DT._DATA_DATE BETWEEN start_date AND end_date GROUP BY AdUnitCode, Date ORDER BY Date desc, imps desc
Impressionen nach Werbebuchung
Die folgende SQL-Beispielabfrage analysiert die Anzahl von Impressionen nach Werbebuchung in den letzten 30 Tagen.
# START_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) # END_DATE = DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY) SELECT MT.Name AS LineItemName, DT._DATA_DATE AS Date, count(*) AS imps FROM `dataset.NetworkImpressionsnetwork_code` AS DT LEFT JOIN `dataset.MatchTableLineItem_network_code` AS MT ON DT.LineItemId = MT.Id WHERE DT._DATA_DATE BETWEEN start_date AND end_date GROUP BY LineItemName, Date ORDER BY Date desc, imps desc