BigQuery Data Transfer Service aktivieren

Wenn Sie BigQuery Data Transfer Service verwenden möchten, müssen Sie die folgenden Schritte als Projektinhaber ausführen:

  • Projekt erstellen und BigQuery API aktivieren
  • BigQuery Data Transfer Service aktivieren

Weitere Informationen zu IAM-Rollen (Identity and Access Management) finden Sie unter Rollen verstehen in der IAM-Dokumentation.

Projekt erstellen und BigQuery API aktivieren

Bevor Sie den BigQuery Data Transfer Service verwenden, müssen Sie ein Projekt erstellen und in den meisten Fällen die Abrechnung für dieses Projekt aktivieren. Sie können ein vorhandenes Projekt mit dem BigQuery Data Transfer Service verwenden oder ein neues Projekt erstellen. Wenn Sie ein vorhandenes Projekt verwenden, müssen Sie möglicherweise auch die BigQuery API aktivieren.

So erstellen Sie ein Projekt und aktivieren die BigQuery API:

  1. Rufen Sie in der Google Cloud Console die Seite für die Projektauswahl auf.

    Zur Projektauswahl

  2. Wählen Sie ein Google Cloud-Projekt aus oder erstellen Sie eines.

  3. Aktivieren Sie in Ihrem Projekt für alle Übertragungen die Abrechnung. Es werden Ihnen 0 $ für kostenlose Übertragungen in Rechnung gestellt.

    Die Abrechnung muss für jedes Projekt nur einmal aktiviert werden, auch wenn Sie Daten aus mehreren Quellen übertragen möchten. Außerdem muss die Abrechnung aktiviert sein, um die Daten in BigQuery abzufragen, nachdem sie übertragen wurden.

    So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist

  4. BigQuery ist in neuen Projekten automatisch aktiviert. Aktivieren Sie die BigQuery API, um BigQuery in einem vorhandenen Projekt zu aktivieren.

    BigQuery API aktivieren

BigQuery Data Transfer Service aktivieren

Eine Übertragung können Sie nur mit aktiviertem BigQuery Data Transfer Service erstellen. Für die Aktivierung von BigQuery Data Transfer Service benötigen Sie die Rolle Inhaber für Ihr Projekt.

So aktivieren Sie BigQuery Data Transfer Service:

  1. Öffnen Sie die Seite BigQuery Data Transfer API in der API-Bibliothek.

  2. Wählen Sie im Drop-down-Menü das entsprechende Projekt aus.

  3. Klicken Sie auf die Schaltfläche AKTIVIEREN.

    Data Transfer API aktivieren

Dienst-Agent

BigQuery Data Transfer Service verwendet ein von Google verwaltetes Dienstkonto, das als Dienst-Agent bezeichnet wird, um auf Ihre Ressourcen zuzugreifen und sie zu verwalten. Dazu gehören unter anderem folgende Ressourcen:

  • Abrufen eines Zugriffstokens für das Dienstkonto, das beim Autorisieren der Datenübertragung verwendet werden soll.
  • Veröffentlichungsbenachrichtigungen im bereitgestellten Pub/Sub-Thema, falls aktiviert.
  • BigQuery-Jobs starten

Der Dienst-Agent wird automatisch in Ihrem Namen erstellt, wenn Sie die API nach der Aktivierung von BigQuery Data Transfer Service zum ersten Mal verwenden. Bei der Erstellung des Dienst-Agents gewährt Google automatisch die vordefinierte Dienst-Agent-Rolle.

Projektübergreifende Dienstkontoautorisierung

Wenn Sie die Datenübertragung mit einem Dienstkonto aus einem Projekt autorisieren, das sich von dem Projekt mit aktiviertem BigQuery Data Transfer Service unterscheidet, müssen Sie dem Dienst-Agent die Rolle roles/iam.serviceAccountTokenCreator zuweisen. Verwenden Sie dazu den folgenden Befehl in der Google Cloud CLI:

gcloud iam service-accounts add-iam-policy-binding service_account \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/iam.serviceAccountTokenCreator

Wobei:

  • service_account ist das projektübergreifende Dienstkonto, das zum Autorisieren der Datenübertragung verwendet wird.
  • project_number ist die Nummer des Projekts, in dem BigQuery Data Transfer Service aktiviert ist.

Weitere Informationen zur projektübergreifenden Ressourcenkonfiguration finden Sie in der Dokumentation zum Identitätswechsel des Dienstkontos für Identity and Access Management unter Für eine Ressource in einem anderen Projekt konfigurieren.

Manuelle Dienst-Agent-Erstellung

Wenn Sie die Erstellung eines Dienst-Agents auslösen möchten, bevor Sie mit der API interagieren, können Sie dem Dienst-Agent beispielsweise zusätzliche Rollen zuweisen, indem Sie einen der folgenden Ansätze verwenden:

Wenn Sie die Erstellung des Dienst-Agenten manuell auslösen, weist Google die vordefinierte Dienst-Agent-Rolle nicht automatisch zu. Sie müssen dem Dienst-Agent mithilfe des folgenden Befehls der Google Cloud CLI manuell die vordefinierte Rolle zuweisen:

gcloud projects add-iam-policy-binding project_number \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/bigquerydatatransfer.serviceAgent

Wobei:

  • project_number ist die Nummer des Projekts, in dem BigQuery Data Transfer Service aktiviert ist.

bigquery.admin Zugriff gewähren

Wir empfehlen Nutzern, die Übertragungen des BigQuery Data Transfer Service erstellen, die vordefinierte IAM-Rolle bigquery.admin zuzuweisen. Die Rolle bigquery.admin enthält die IAM-Berechtigungen, die zum Ausführen der gängigsten Aufgaben erforderlich sind. Die Rolle bigquery.admin enthält die folgenden BigQuery Data Transfer Service-Berechtigungen:

  • Berechtigungen für BigQuery Data Transfer Service:
    • bigquery.transfers.update
    • bigquery.transfers.get
  • BigQuery-Berechtigungen:
    • bigquery.datasets.get
    • bigquery.datasets.update
    • bigquery.jobs.create

Die erforderlichen Berechtigungen können in verschiedenen Fällen zwischen verschiedenen Datenquellen variieren. Spezifische IAM-Informationen finden Sie im Abschnitt „Erforderliche Berechtigungen“ in der Übertragungsanleitung für Datenquellen. Siehe zum Beispiel Amazon S3-Übertragungsberechtigungen oder Cloud Storage-Übertragungsberechtigungen.

So weisen Sie die Rolle bigquery.admin zu:

Console

  1. Öffnen Sie in der Google Cloud Console die Seite IAM.

    Zur Seite "IAM"

  2. Klicken Sie auf Select a project (Projekt auswählen).

  3. Wählen Sie ein Projekt aus und klicken Sie auf Open (Öffnen).

  4. Klicken Sie auf Add (Hinzufügen), um dem Projekt neue Mitglieder hinzuzufügen, und legen Sie dann ihre Berechtigungen fest.

  5. Gehen Sie im Dialogfeld Add members (Mitglieder hinzufügen) so vor:

    • Geben Sie unter Members (Mitglieder) die E-Mail-Adresse des Nutzers oder der Gruppe ein.
    • Klicken Sie im Drop-down-Menü Select a role (Rolle wählen) auf BigQuery > BigQuery Admin (BigQuery > BigQuery-Administrator).
    • Klicken Sie auf Add (Hinzufügen).

      Administratorrolle gewähren

gcloud

Über die Google Cloud CLI können Sie einem Nutzer oder einer Gruppe die Rolle bigquery.admin gewähren.

Geben Sie den nachstehenden Befehl ein, um der IAM-Richtlinie Ihres Projekts eine einzelne Bindung hinzuzufügen. Wenn Sie einen Nutzer hinzufügen möchten, geben Sie das Flag --member im Format user:user@example.com an. Wenn Sie eine Gruppe hinzufügen möchten, geben Sie das Flag --member im Format group:group@example.com an.

gcloud projects add-iam-policy-binding project_id \
--member principal:address \
--role roles/bigquery.admin

Wobei:

  • project_id ist die Projekt-ID.
  • principal ist entweder group oder user.
  • address die E-Mail-Adresse des Nutzers oder der Gruppe ist.

Beispiel:

gcloud projects add-iam-policy-binding myproject \
--member group:group@example.com \
--role roles/bigquery.admin

Der Befehl gibt die aktualisierte Richtlinie aus:

    bindings:
    - members:
      - group:group@example.com
        role: roles/bigquery.admin
    

Weitere Informationen zu IAM-Rollen in BigQuery finden Sie unter Vordefinierte Rollen und Berechtigungen.

Nächste Schritte

Nachdem Sie den BigQuery Data Transfer Service aktiviert haben, können Sie eine Übertragung für Ihre Datenquelle erstellen: