Übersicht über die Standardverbindung

Mit einer standardmäßigen Cloud-Ressourcenverbindung in BigQuery können Sie externe Tabellen und BigQuery ML-Remote-Modelle erstellen, ohne jedes Mal einzelne Verbindungsdetails angeben oder Dienstkontoberechtigungen verwalten zu müssen. Nachdem Sie eine Standardverbindung für ein Projekt konfiguriert haben, können Nutzer sie durch Angabe des Schlüsselworts DEFAULT in SQL-Anweisungen referenzieren.

Unterstützte Ressourcen und SQL-Klauseln

BigQuery unterstützt Standardverbindungen in den folgenden Ressourcen:

Wenn Sie die Standardverbindung verwenden möchten, geben Sie das Schlüsselwort DEFAULT in den folgenden SQL-Klauseln an:

Hinweis

Aktivieren Sie die BigQuery Connection API, falls sie noch nicht aktiviert ist.

Erforderliche Rollen zum Aktivieren von APIs

Zum Aktivieren von APIs benötigen Sie die Berechtigung serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Inhaberrolle (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von Rollen

API aktivieren

Erforderliche Rollen und Berechtigungen

Verwenden Sie die folgenden IAM-Rollen (Identity and Access Management), um mit Standardverbindungen zu arbeiten:

  • Standardverbindung verwenden: BigQuery-Verbindungsnutzer (roles/bigquery.connectionUser) für Ihr Projekt
  • Standardverbindung festlegen: BigQuery-Verbindungsadministrator (roles/bigquery.connectionAdmin) für Ihr Projekt
  • Wenn dem Dienstkonto einer Standardverbindung Berechtigungen gewährt werden müssen:

    • Wenn die Standardverbindung zum Erstellen externer Tabellen verwendet wird: Storage-Administrator (roles/storage.admin) für alle Cloud Storage-Buckets, die von den externen Tabellen verwendet werden.
    • Wenn die Standardverbindung zum Erstellen von Remote-Modellen verwendet wird: Projekt-IAM-Administrator (roles/resourcemanager.projectIamAdmin) für das Projekt, das den Gemini Enterprise Agent Platform-Endpunkt enthält. Für die folgenden Arten von Remote-Modellen ist dies das aktuelle Projekt:

      • Remote-Modelle über Cloud AI-Dienste:
      • Remote-Modelle über Google- oder Partnermodelle, die Sie durch Angabe des Modellnamens als Endpunkt erstellt haben.

      Bei allen anderen Remote-Modellen ist dies das Projekt, das den Agent Platform-Endpunkt enthält, auf dem das Zielmodell bereitgestellt wird.

      Wenn Sie das Remote-Modell zum Analysieren unstrukturierter Daten aus einer Objekttabelle verwenden und sich der Cloud Storage-Bucket, den Sie in der Objekttabelle verwenden, in einem anderen Projekt als Ihr Agent Platform-Endpunkt befindet, benötigen Sie außerdem die Rolle „Storage-Administrator“ (roles/storage.admin) für den von der Objekttabelle verwendeten Cloud Storage-Bucket.

    Sie benötigen diese Rollen nur, wenn Sie als Administrator eine Verbindung für die Verwendung als Standardverbindung konfigurieren oder wenn Sie als Nutzer eine Standardverbindung verwenden, deren Dienstkonto noch nicht die entsprechende Rolle zugewiesen wurde. Weitere Informationen finden Sie unter Standardverbindung konfigurieren.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Ausführen der Aufgaben in diesem Dokument erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

  • Standardverbindung verwenden: bigquery.connections.use
  • Verbindung erstellen: bigquery.connections.*
  • Legen Sie die Standardverbindung fest: bigquery.config.*
  • Legen Sie Dienstkontoberechtigungen für eine Standardverbindung fest, die zum Erstellen externer Tabellen verwendet wird: storage.buckets.getIamPolicy und storage.buckets.setIamPolicy.
  • Legen Sie Dienstkontoberechtigungen für eine Standardverbindung fest, die zum Erstellen von Remote-Modellen verwendet wird:
    • resourcemanager.projects.getIamPolicy und resourcemanager.projects.setIamPolicy
    • Wenn die Standardverbindung mit einem Remote-Modell verwendet wird, das unstrukturierte Daten aus einer Objekttabelle verarbeitet, storage.buckets.getIamPolicy und storage.buckets.setIamPolicy

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Standardverbindung konfigurieren

Verwenden Sie eine der folgenden Methoden, um die Standardverbindung zum ersten Mal zu konfigurieren:

  • Erstellen Sie eine Verbindung, weisen Sie dem Dienstkonto der Verbindung die entsprechenden Rollen zu und legen Sie die Verbindung dann als Standardverbindung fest.

    Der Nutzer, der die Standardverbindung erstellt und konfiguriert, benötigt die Rolle „BigQuery-Administrator“ und die Rolle „Storage-Administrator“ oder „Projekt-IAM-Administrator“. Der Standardverbindungsnutzer benötigt die Rolle „BigQuery Connection User“.

  • Erstellen Sie eine Verbindung und legen Sie sie als Standardverbindung fest. Der Dienst weist dem Dienstkonto der Standardverbindung die entsprechenden Rollen zu, wenn die Standardverbindung verwendet wird.

    Der Nutzer, der die Standardverbindung erstellt und festlegt, benötigt die Rolle „BigQuery-Administrator“. Der Standardverbindungsnutzer benötigt die Rolle „BigQuery Connection User“ und die Rolle „Storage Admin“ oder „Project IAM Admin“.

  • Geben Sie das Keyword DEFAULT in einer unterstützten Anweisung an. Der Dienst erstellt eine Verbindung, weist dem Dienstkonto der Verbindung die entsprechenden Rollen zu und legt die Verbindung dann als Standardverbindung fest.

    Der Standardverbindungsnutzer benötigt die Rolle „BigQuery-Administrator“ und die Rolle „Storage-Administrator“ oder „Projekt-IAM-Administrator“.

  • Wenn die Standardverbindung fehlt, erstellt BigQuery eine neue Verbindung mit den folgenden Attributen:

    • Region: Dieselbe Region wie das Dataset.
    • Name: __default_cloudresource_connection__
    • Typ: CLOUD_RESOURCE

Standardverbindung für ein Projekt festlegen

Legen Sie die Standard-Cloud-Ressourcenverbindung für das Projekt mit der DDL-Anweisung ALTER PROJECT SET OPTIONS fest.

Im folgenden Beispiel wird die Standardverbindung für das Projekt festgelegt:

  ALTER PROJECT PROJECT_ID
  SET OPTIONS (
    `region-REGION.default_cloud_resource_connection_id` = CONNECTION_ID);
  

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem Sie die Standardverbindung festlegen.
  • REGION: die Region der Verbindung.
  • CONNECTION_ID: die ID oder der Name der Verbindung, die als Standard für Tabellen und Modelle verwendet werden soll. Geben Sie nur die Verbindungs-ID oder den Verbindungsnamen an und lassen Sie die Projekt-ID und die Regionspräfixe weg, die an den Namen oder die ID angehängt sind.

Weitere Informationen zum Konfigurieren einer Standardverbindung für ein Projekt finden Sie unter Standardkonfigurationen verwalten.

Bereitstellung von Berechtigungen für die Standardverbindung

Wenn Sie die Standardverbindung zum Erstellen einer externen Tabelle oder eines Remote-Modells verwenden, weistGoogle Cloud dem Dienstkonto der Standardverbindung die entsprechenden Rollen zu, falls das Dienstkonto diese noch nicht hat. Diese Aktion schlägt fehl, wenn Sie keine Administratorberechtigungen für die Cloud Storage- oder Agent Platform-Ressource haben, die von der externen Tabelle oder dem Remote-Modell verwendet wird.

Dem Dienstkonto der Standardverbindung werden die folgenden Rollen zugewiesen:

Typ der Tabelle oder des Modells Remote-Ressource Dem Dienstkonto der Verbindung zugewiesene Rollen
Cloud Storage-BigLake-Tabelle Cloud Storage roles/storage.legacyBucketReader
roles/storage.legacyObjectReader
Objekttabelle Cloud Storage roles/storage.legacyBucketReader
roles/storage.legacyObjectReader
Verwaltete Iceberg-Tabellen Cloud Storage roles/storage.legacyBucketWriter
roles/storage.legacyObjectOwner
BigQuery ML-Remote-Modelle über Gemini Enterprise Agent Platform-Modelle Google-eigene Modelle roles/aiplatform.user
Über Model Garden auf einem Endpunkt bereitstellbar
Nutzermodelle
Feinabgestimmte Modelle roles/aiplatform.serviceAgent
BigQuery ML-Remote-Modelle über Cloud AI-Dienste Dokumentprozessor roles/documentai.apiUser
Spracherkennung roles/speech.serviceAgent
Cloud NLP roles/serviceusage.serviceUsageConsumer
Cloud Vision roles/serviceusage.serviceUsageConsumer
Cloud Translation roles/cloudtranslate.user

Externe Tabellen mit CONNECTION DEFAULT erstellen

In den folgenden Beispielen wird gezeigt, wie Sie externe Tabellen erstellen, indem Sie WITH CONNECTION DEFAULT in BigQuery angeben.

Beispiel: BigLake-Tabelle in Cloud Storage erstellen

Mit dem folgenden SQL-Ausdruck wird eine Cloud Storage-BigLake-Tabelle mit einer Standardverbindung erstellt:

CREATE EXTERNAL TABLE PROJECT_ID.DATASET.EXTERNAL_TABLE_NAME
WITH CONNECTION DEFAULT
OPTIONS (
  format = 'TABLE_FORMAT',
  uris = ['BUCKET_PATH']);

Beispiel: Objekttabelle mit einer Standardverbindung erstellen

Mit dem folgenden SQL-Ausdruck wird eine Objekttabelle mit einer Standardverbindung erstellt:

CREATE EXTERNAL TABLE PROJECT_ID.DATASET.EXTERNAL_TABLE_NAME
WITH CONNECTION DEFAULT
OPTIONS (
  object_metadata = 'SIMPLE'
  uris = ['BUCKET_PATH']);

Beispiel: Verwaltete Iceberg-Tabellen mit einer Standardverbindung erstellen

Mit dem folgenden SQL-Ausdruck wird eine verwaltete Iceberg-Tabelle mit einer Standardverbindung erstellt:

CREATE TABLE `myproject.tpch_clustered.nation` (
  n_nationkey integer,
  n_name string,
  n_regionkey integer,
  n_comment string)
CLUSTER BY n_nationkey
WITH CONNECTION DEFAULT
OPTIONS (
  file_format = 'PARQUET',
  table_format = 'ICEBERG',
  storage_uri = 'gs://mybucket/warehouse/nation');

Remote-Modelle mit REMOTE WITH CONNECTION DEFAULT erstellen

In den folgenden Beispielen wird gezeigt, wie Sie Remote-Modelle erstellen, indem Sie REMOTE WITH CONNECTION DEFAULT in BigQuery angeben.

Beispiel: Remote-Modell über ein Agent Platform-Modell erstellen

Mit dem folgenden SQL-Ausdruck wird ein Remote-Modell mit einer Standardverbindung erstellt:

CREATE OR REPLACE MODEL `mydataset.flash_model`
  REMOTE WITH CONNECTION DEFAULT
  OPTIONS(ENDPOINT = 'gemini-3.5-flash');

Beispiel: Remote-Modell über einen Cloud AI-Dienst erstellen

Mit dem folgenden SQL-Ausdruck wird ein Remote-Modell über einen Cloud AI-Dienst mit einer Standardverbindung erstellt:

CREATE MODEL `project_id.mydataset.mymodel`
REMOTE WITH CONNECTION DEFAULT
 OPTIONS(REMOTE_SERVICE_TYPE = 'CLOUD_AI_VISION_V1')

Beispiel: Remote-Modell mit einem HTTPS-Endpunkt erstellen

Mit dem folgenden SQL-Ausdruck wird ein Remote-Modell mit einem HTTPS-Endpunkt und einer Standardverbindung erstellt:

CREATE MODEL `project_id.mydataset.mymodel`
 INPUT(f1 INT64, f2 FLOAT64, f3 STRING, f4 ARRAY)
 OUTPUT(out1 INT64, out2 INT64)
 REMOTE WITH CONNECTION DEFAULT
 OPTIONS(ENDPOINT = 'https://us-central1-aiplatform.googleapis.com/v1/projects/myproject/locations/us-central1/endpoints/1234')

Nächste Schritte