Fehlerbehebung bei Übertragungskonfigurationen
Dieses Dokument soll Ihnen helfen, die häufigsten Fehler beim Einrichten einer Übertragung mit BigQuery Data Transfer Service zu beheben. Es werden jedoch nicht alle möglichen Fehlermeldungen oder Probleme darin behandelt.
Wenn Probleme auftreten, die in diesem Dokument nicht behandelt werden, können Sie Support anfordern.
Bevor Sie sich an Cloud Customer Care wenden, erfassen Sie die Konfiguration der Übertragung und die Details der Übertragungsausführung. Informationen zum Abrufen dieser Details finden Sie unter Übertragungsdetails abrufen und Details zur Übertragungsausführung und Logmeldungen aufrufen.
Fehler untersuchen
Wenn die erste Übertragung fehlschlägt, können Sie die Details im Ausführungsverlauf prüfen. Im Ausführungsverlauf aufgeführte Fehler können Ihnen dabei helfen, mithilfe dieses Dokuments eine geeignete Lösung zu finden.
Sie können Fehlermeldungen für einen bestimmten Übertragungsjob auch mit dem Log-Explorer aufrufen. Der folgende Logs Explorer-Filter gibt Informationen zu einem bestimmten Übertragungskonfigurationsjob sowie alle Fehlermeldungen zurück:
resource.type="bigquery_dts_config"
labels.run_id="RUN_ID"
resource.labels.config_id="CONFIG_ID"
Ersetzen Sie dabei Folgendes:
RUN_ID: Die ID-Nummer eines bestimmten Joblaufs.CONFIG_ID: Die ID-Nummer eines Jobs für die Übertragungskonfiguration.
Bevor Sie sich an den Kundensupport wenden, notieren Sie alle wichtigen Informationen aus dem Ausführungsverlauf oder dem Log-Explorer, einschließlich etwaiger Fehlermeldungen.
Wenn Sie ereignisgesteuerte Übertragungen verwenden, wird möglicherweise kein Übertragungslauf durch die Konfiguration für die ereignisgesteuerte Übertragung ausgelöst. Fehlermeldungen werden oben auf der Seite Ausführungsverlauf oder Konfiguration angezeigt.
Allgemeine Probleme
Prüfen Sie zum Diagnostizieren allgemeiner Übertragungsfehler Folgendes:
- Sie haben auf der Dokumentationsseite für den Übertragungstyp alle Schritte des Abschnitts "Vorbereitung" ausgeführt.
- Die Attribute der Übertragungskonfiguration sind korrekt.
- Das für die Übertragung verwendete Nutzerkonto hat Zugriff auf die zugrunde liegenden Ressourcen.
Im Folgenden sind Lösungen für gängige Probleme aufgeführt. Dabei wird vorausgesetzt, dass die Übertragungskonfiguration korrekt ist und die erforderlichen Berechtigungen erteilt wurden.
- Fehler:
An unexpected issue was encountered. If this issue persists, please contact customer support. - Lösung: Dieser Fehler weist in der Regel auf einen vorübergehenden Ausfall oder ein Problem in BigQuery hin. Das Problem sollte innerhalb der nächsten 2 Stunden behoben sein. Wenn das Problem weiterhin besteht, fordern Sie Support an.
- Fehler:
INTERNAL: An internal error occurred and the request could not be completed. This is usually caused by a transient issue... - Lösung:Dieser Fehler weist in der Regel auf ein vorübergehendes internes Problem hin. Wenn dieser Fehler auftritt, können Sie warten, bis er bei der nächsten geplanten Ausführung behoben wird, oder manuell einen Backfill für die betroffenen Datumsbereiche auslösen. Wenn das Problem weiterhin besteht, fordern Sie Support an.
- Fehler:
Quota Exceeded. Lösung: Übertragungen unterliegen den BigQuery-Kontingenten für Ladejobs. Wenn Sie Ihr Kontingent erhöhen müssen, wenden Sie sich an Ihren Cloud de Confiance by S3NS Vertriebsmitarbeiter. Weitere Informationen finden Sie unter Kontingente und Limits.
Wenn Sie Cloud Billing-Exporte in BigQuery laden, kann der Fehler
Quota Exceededauftreten. Sowohl die Cloud-Abrechnungsexporttabellen als auch die Ziel-BigQuery-Tabellen, die vom BigQuery Data Transfer Service erstellt werden, sind partitioniert. Wenn Sie beim Einrichten solcher BigQuery Data Transfer Service-Jobs die Option Überschreiben auswählen, können je nach exportierter Datenmenge Kontingentfehler auftreten. Informationen zur Fehlerbehebung bei Kontingenten finden Sie unter Fehler bei Kontingenten und Limits beheben.Wenn der Fehler durch BigQuery Data Transfer Service-Jobs für Cloud Billing-Exporte verursacht wird, beachten Sie, dass die einzelnen Cloud Billing-Exporttabellen partitioniert sind. Das gilt auch für die Zieltabelle, die vom BigQuery Data Transfer Service erstellt wird. Wenn Sie beim Einrichten solcher Datenübertragungsjobs die Option Überschreiben auswählen, führt dies je nach Alter der Abrechnungskonten zu Kontingentfehlern (DML). Informationen zur Fehlerbehebung bei Kontingenten finden Sie unter Fehler bei Kontingenten und Limits beheben.
- Fehler:
The caller does not have permission. Lösung: Das in der Cloud de Confiance -Konsole angemeldete Konto muss mit dem Konto übereinstimmen, das Sie beim Erstellen der Übertragung für BigQuery Data Transfer Service ausgewählt haben.
In der Cloud de Confiance Console angemeldetes Konto:
Wählen Sie ein Konto aus, um mit BigQuery Data Transfer Service fortzufahren:
- Fehler:
Access Denied: ... Permission bigquery.tables.get denied on table ... Lösung: Prüfen Sie, ob dem Dienst-Agent von BigQuery Data Transfer Service die Rolle
bigquery.dataEditorfür das Ziel-Dataset zugewiesen wurde. Diese Zuweisung wird beim Erstellen und Aktualisieren der Übertragung automatisch angewendet. Es ist jedoch möglich, dass die Zugriffsrichtlinie anschließend manuell geändert wurde. Informationen zum Gewähren der Berechtigung finden Sie unter Zugriff auf ein Dataset gewähren.- Fehler:
region violates constraint constraints/gcp.resourceLocations on the resource projects/project_id Lösung: Dieser Fehler tritt auf, wenn ein Nutzer versucht, eine Übertragungskonfiguration an einem eingeschränkten Standort zu erstellen, wie in der Organisationsrichtlinie zur Standortbeschränkung angegeben. Sie können dieses Problem beheben, indem Sie die Organisationsrichtlinie ändern, um die Region zuzulassen. Sie können auch die Übertragungskonfiguration in ein Ziel-Dataset ändern, das sich in einer Region befindet, die nicht durch die Organisationsrichtlinie eingeschränkt ist.
- Fehler:
Please look into the errors[] collection for more details. Lösung:Dieser Fehler kann auftreten, wenn eine Datenübertragung fehlschlägt. Weitere Informationen dazu, warum die Datenübertragung fehlgeschlagen ist, finden Sie in den Logs in Cloud Logging. Sie können Logs für einen bestimmten Lauf finden, indem Sie mit der Übertragungs-
run_idsuchen.- Fehler:
Network Attachment with connected endpoints cannot be deleted. Lösung:Dieser Fehler kann auftreten, wenn ein Nutzer versucht, seine Netzwerkverknüpfungen kurz nach dem Löschen seiner Übertragung zu löschen. Das liegt daran, dass es nach dem Löschen einer Übertragung mehrere Tage dauern kann, bis der BigQuery Data Transfer Service alle mit der Übertragung verknüpften Ressourcen vollständig entfernt hat. Das kann verhindern, dass die Netzwerkverbindungen gelöscht werden. Warten Sie einige Tage, bevor Sie versuchen, die Netzwerkverknüpfungen zu löschen, um diesen Fehler zu beheben. Wenn Sie die Netzwerkanhänge früher löschen lassen möchten, wenden Sie sich an den Support.
- Fehler:
Error while reading data, error message: CSV processing encountered too many errors, giving up. Lösung:Dieser Fehler kann auftreten, wenn die Konfiguration Ihrer CSV-Datei in der Datenquelle nicht mit der Konfiguration der CSV-Datei in der Übertragungskonfiguration übereinstimmt. Dieser Fehler kann beispielsweise auftreten, wenn Header rows to skip (Zu überspringende Kopfzeilen) auf
0festgelegt ist, die CSV-Quelldatei jedoch eine oder mehrere Kopfzeilen enthält. Um diesen Fehler zu beheben, prüfen Sie, ob die CSV-Konfiguration in der Übertragungskonfiguration korrekt ist und mit der Konfiguration Ihrer CSV-Quelldatei übereinstimmt.- Fehler:
Error 400: DTS service agent needs iam.serviceAccounts.getAccessToken permission or [SERVICE_ACCOUNT] doesn't exist. Ursache:Dieser Fehler weist darauf hin, dass dem Dienst-Agent des BigQuery Data Transfer Service (DTS) die erforderliche Berechtigung fehlt, das für die Übertragung verwendete Dienstkonto zu imitieren. Das ist in der Regel bei projektübergreifenden Autorisierungsszenarien oder bei der Konfiguration des Transfers mit Infrastructure-as-Code-Tools (IaC) wie Terraform der Fall.
Lösung:Weisen Sie dem DTS-Dienst-Agent die Rolle „Ersteller von Dienstkonto-Tokens“ (
roles/iam.serviceAccountTokenCreator) für das Dienstkonto zu, dessen Identität übernommen werden soll.gcloud iam service-accounts add-iam-policy-binding service_account \ --member serviceAccount:service-destination_project_number@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.com \ --role roles/iam.serviceAccountTokenCreator
Wobei:
- service_account ist die E-Mail-Adresse des Kontos, das zum Autorisieren der Übertragung verwendet wurde.
- destination_project_number ist die Projektnummer, in der sich die Übertragungskonfiguration befindet. Informationen zum Ermitteln der Projektnummer finden Sie unter Projekte identifizieren.
- Fehler:
For asset "ASSET", no eligible column found for splitting (Reason: Primary or Indexed Key columns found, but none are of supported types (INTEGER, TINYINT, SMALLINT, FLOAT, REAL, DOUBLE, NUMERIC, BIGINT, DECIMAL, DATE, BOOLEAN)) - Lösung:Dieser Fehler kann auftreten, wenn Sie versuchen, mehr als 2.000.000 Datensätze aus einer Quelltabelle in eine BigQuery-Tabelle zu übertragen, und die Quelltabelle keinen Primärschlüssel oder keine indexierte Spalte mit einem unterstützten Datentyp enthält. Um dieses Problem zu beheben, konfigurieren Sie eine Spalte mit einem der unterstützten Datentypen als Primärschlüssel oder indexierte Spalte in Ihrer Quelltabelle. Weitere Informationen finden Sie im Abschnitt zu Einschränkungen in der Anleitung für Ihre Übertragungsquelle.
Probleme mit Autorisierung und Berechtigungen
Im Folgenden sind einige gängige Berechtigungsfehler aufgeführt, die beim Übertragen von Daten aus verschiedenen Datenquellen auftreten können:
- Fehler:
BigQuery Data Transfer Service is not enabled for <project_id> - Fehler:
BigQuery Data Transfer Service has not been used in project <project_id> before or it is disabled ... Lösung:Prüfen Sie mit den folgenden Schritten, ob die Dienst-Agent-Rolle gewährt wurde:
Rufen Sie in der Cloud de Confiance Console die Seite IAM & Verwaltung auf.
Klicken Sie auf das Kästchen Von S3NSbereitgestellte Rollenzuweisungen einschließen.
Prüfen Sie, ob das Dienstkonto mit dem Namen
service-<project_number>@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.comangezeigt wird oder ihm die Rolle Dienst-Agent für BigQuery Data Transfer Service zugewiesen wurde.
Wenn das Dienstkonto nicht angezeigt wird oder ihm nicht die Rolle „Dienst-Agent für BigQuery Data Transfer Service“ zugewiesen wurde, weisen Sie die vordefinierte Rolle in der Cloud de Confiance Console oder durch Ausführen des folgenden Google Cloud CLI-Befehls zu:
gcloud projects add-iam-policy-binding PROJECT_NUMBER \ --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.com \ --role roles/bigquerydatatransfer.serviceAgentErsetzen Sie
PROJECT_NUMBERdurch die Projektnummer, die mit diesem Dienstkonto verknüpft ist.- Fehler:
There was an error loading this table. Check that the table exists and that you have the correct permissions. Lösung:
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie auf das in der Übertragung verwendete Zieldataset.
Klicken Sie auf das Menü Freigabe und dann auf Berechtigungen.
Maximieren Sie die Rolle BigQuery-Datenbearbeiter.
Prüfen Sie, ob der Dienst-Agent für BigQuery Data Transfer Service dieser Rolle hinzugefügt wurde. Wenn nicht, weisen Sie dem Dienst-Agent für BigQuery Data Transfer Service die Rolle „BigQuery-Datenbearbeiter“ (
roles/bigquery.dataEditor) zu.
- Fehler:
A permission denied error was encountered: PERMISSION_DENIED. Please ensure that the user account setting up the transfer config has the necessary permissions, and that the configuration settings are correct Lösung:
Rufen Sie in der Cloud de Confiance Console die Seite Datenübertragungen auf.
Klicken Sie auf die fehlgeschlagene Übertragung und wählen Sie dann den Tab Konfiguration aus.
Prüfen Sie, ob der im Feld Nutzer aufgeführte Übertragungsinhaber alle erforderlichen Berechtigungen für die Datenquelle hat.
Wenn der Übertragungsinhaber nicht alle erforderlichen Berechtigungen hat, erteilen Sie die erforderlichen Berechtigungen, indem Sie seine Anmeldedaten aktualisieren. Sie können den Übertragungsinhaber auch auf einen anderen Nutzer mit den erforderlichen Berechtigungen umstellen.
- Fehler:
Authentication failure: User Id not found. Error code: INVALID_USERID Lösung: Der Übertragungsinhaber hat eine ungültige Nutzer-ID. Ändern Sie den Übertragungsinhaber in einen anderen Nutzer. Dazu aktualisieren Sie seine Anmeldedaten. Wenn Sie ein Dienstkonto verwenden, sollten Sie auch prüfen, ob die Konten, mit denen die Datenübertragung ausgeführt wird, alle erforderlichen Berechtigungen zur Verwendung eines Dienstkontos haben.
- Fehler:
The user does not have permission Lösung: Prüfen Sie, ob der Übertragungsinhaber ein Dienstkonto ist und dieser Dienst alle erforderlichen Berechtigungen hat. Eine weitere Möglichkeit besteht darin, dass das verwendete Dienstkonto in einem anderen Projekt als dem Projekt erstellt wurde, das für diese Übertragung verwendet wurde. Informationen zum Beheben von projektübergreifenden Berechtigungsproblemen finden Sie in den folgenden Ressourcen:
- Ermöglichen, dass Dienstkonten projektübergreifend angehängt werden können
- Projektübergreifende Dienstkontoautorisierung (zum Erteilen der erforderlichen Berechtigungen)
- Fehler:
HttpError 403 when requesting returned "The caller does not have permission" googleapiclient.errors.HttpError: <HttpError 403 when requesting returned "The caller does not have permission". Details: "The caller does not have permission">Dieser Fehler kann auftreten, wenn Sie versuchen, eine geplante Abfrage mit einem Dienstkonto einzurichten.
Lösung: Prüfen Sie, ob das Dienstkonto alle erforderlichen Berechtigungen zum Planen oder Ändern einer geplanten Abfrage hat. Achten Sie auch darauf, dass der Nutzer, der die geplante Abfrage einrichtet, Zugriff auf das Dienstkonto hat.
Wenn die erforderlichen Berechtigungen zugewiesen sind, der Fehler aber weiterhin auftritt, prüfen Sie, ob die Richtlinie Projektübergreifende Dienstkontonutzung deaktivieren standardmäßig für das Projekt erzwungen wird. Sie können die Richtlinie in der Cloud de Confiance Console prüfen. Rufen Sie dazu IAM und Verwaltung > Organisationsrichtlinien auf und suchen Sie nach der Richtlinie.

Wenn die Richtlinie Projektübergreifende Dienstkontonutzung deaktivieren erzwungen wird, können Sie die Richtlinie so deaktivieren:
- Ermitteln Sie die mit dem Projekt verknüpften Dienstkonten in der Cloud de Confiance Console, indem Sie zu IAM & Verwaltung > Dienstkonten wechseln. In dieser Ansicht werden alle Dienstkonten für das aktuelle Projekt angezeigt.
- Deaktivieren Sie die Richtlinie in dem Projekt, in dem sich die Dienstkonten befinden. Nutzen Sie dazu den folgenden Befehl. Zum Deaktivieren dieser Richtlinie muss der Nutzer ein Organisationsrichtlinien-Administrator sein. Nur der Organisationsadministrator kann einem Nutzer diese Rolle zuweisen.
gcloud resource-manager org-policies disable-enforce iam.disableCrossProjectServiceAccountUsage --project=[PROJECT-ID]
Probleme bei der ereignisgesteuerten Übertragungskonfiguration
Im Folgenden finden Sie typische Probleme beim Erstellen einer ereignisgesteuerten Übertragung.
- Fehler:
Data Transfer Service is not authorized to pull message from the provided Pub/Sub subscription. Lösung:Prüfen Sie, ob dem Dienst-Agent von BigQuery Data Transfer Service die Rolle
pubsub.subscriberzugewiesen wurde:Rufen Sie in der Cloud de Confiance Console die Seite Pub/Sub auf.
Wählen Sie das Pub/Sub-Abo aus, das Sie bei der ereignisgesteuerten Übertragung verwendet haben.
Wenn das Infofeld ausgeblendet ist, klicken Sie rechts oben auf Infofeld ansehen.
Prüfen Sie auf dem Tab Permissions (Berechtigungen), ob dem Dienst-Agent von BigQuery Data Transfer Service die Rolle
pubsub.subscriberzugewiesen wurde.

Wenn dem Dienst-Agent die Rolle
pubsub.subscribernicht zugewiesen ist. Klicken Sie auf Hauptkonto hinzufügen, umservice-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.comdie Rollepubsub.subscriberzuzuweisen.- Fehler:
Cloud Pub/Sub API has not been used in project PROJECT_NUMBER before or it is disabled. Lösung:Prüfen Sie, ob die Cloud Pub/Sub API für Ihr Projekt aktiviert ist:
Rufen Sie in der Cloud de Confiance Console die Seite APIs und Dienste auf.
Klicken Sie auf APIs und Dienste aktivieren.
Suchen Sie nach
Cloud Pub/Sub API, wählen Sie das erste Ergebnis aus und klicken Sie auf Aktivieren.
- Fehler:
Data Transfer Service does not have required permission to use project quota of project PROJECT_NUMBER to access Pub/Sub. Lösung:Prüfen Sie, ob dem Dienst-Agent von BigQuery Data Transfer Service die Rolle
serviceusage.serviceUsageConsumerzugewiesen wurde:Rufen Sie in der Cloud de Confiance Console die Seite IAM & Verwaltung auf.
Klicken Sie auf das Kästchen Von S3NSbereitgestellte Rollenzuweisungen einschließen.
Prüfen Sie, ob das Dienstkonto mit dem Namen
service-<project_number>@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.comangezeigt wird und ihm die Rolle Service Usage Consumer zugewiesen wurde.
- Problem: Wenn Sie die ereignisgesteuerte Übertragung von Cloud Storage verwenden, wird nach dem Hochladen oder Aktualisieren von Dateien in einem Cloud Storage-Bucket kein Übertragungsdurchlauf ausgelöst.
Übertragungen werden nicht sofort nach dem Empfang eines Ereignisses ausgelöst. Es kann einige Minuten dauern, bis ein Übertragungsvorgang ausgelöst wird. Wenn Sie den Status der nächsten Übertragung prüfen möchten, sehen Sie sich das Feld Zieldatum für nächsten Lauf im Ausführungsverlauf an. In diesem Feld wird die geplante Zeit für die nächste Ausführung angezeigt. Wenn keine Ereignisse empfangen wurden, wird Warten auf Ereignisse, um nächste Ausführung zu planen angezeigt. Wenn Sie Dateien in Ihren Cloud Storage-Bucket hochgeladen oder aktualisiert haben, das Zieldatum für den nächsten Lauf aber nicht aktualisiert wurde und 10 bis 20 Minuten lang keine Läufe ausgelöst werden, finden Sie unten eine mögliche Lösung.
Lösung:Prüfen Sie, ob Ihr in der Übertragungskonfiguration angegebenes Pub/Sub-Abo Nachrichten empfangen kann, die durch Cloud Storage-Ereignisse veröffentlicht werden:
Rufen Sie in der Cloud de Confiance Console die Seite Pub/Sub auf.
Wählen Sie das Pub/Sub-Abo aus, das Sie bei der ereignisgesteuerten Übertragung verwendet haben.
Sehen Sie sich auf dem Tab Messwerte das Diagramm „Alter der ältesten unbestätigten Nachricht“ an und prüfen Sie, ob Nachrichten vorhanden sind.

Wenn keine Nachrichten veröffentlicht werden, prüfen Sie, ob die Pub/Sub-Benachrichtigung für Cloud Storage richtig konfiguriert ist. Mit dem folgenden Google Cloud CLI-Befehl können Sie die Benachrichtigungskonfigurationen für Ihren Bucket prüfen:
gcloud storage buckets notifications list gs://BUCKET_NAMEErsetzen Sie
BUCKET_NAMEdurch den Namen des Buckets, den Sie für Benachrichtigungen verwenden. Informationen zum Konfigurieren einer Pub/Sub-Benachrichtigung für Cloud Storage finden Sie unter Pub/Sub-Benachrichtigungen für Cloud Storage konfigurieren.Wenn Nachrichten vorhanden sind, prüfen Sie, ob dasselbe Pub/Sub-Abo in anderen ereignisbasierten Übertragungskonfigurationen verwendet wird. Dasselbe Pub/Sub-Abo kann nicht von mehreren ereignisgesteuerten Übertragungskonfigurationen wiederverwendet werden. Weitere Informationen zu ereignisgesteuerten Übertragungen finden Sie unter Ereignisgesteuerte Übertragungen.
Kontingentprobleme
- Fehler:
Quota exceeded: Your project exceeded quota for imports per project. - Lösung: Prüfen Sie, ob Sie nicht zu viele Übertragungen im Projekt geplant haben. Informationen zur Berechnung der Anzahl von Ladejobs, die durch eine Übertragung initiiert werden, finden Sie unter Kontingente und Limits.