デフォルトの接続の概要
ワークフローを簡素化するために、BigQuery でデフォルトの Cloud リソース接続を構成して、テーブルとモデルを作成できます。
BigQuery は、次のテーブルとモデルでデフォルトの接続をサポートしています。
管理者は、プロジェクトのデフォルトの Cloud リソース接続を構成します。
プロジェクトにテーブルとモデルを作成する場合は、次の SQL 句で DEFAULT
を指定して、管理者が構成したデフォルトの接続を選択できます。
CREATE TABLE
ステートメントのWITH CONNECTION
句CREATE MODEL
ステートメントのREMOTE WITH CONNECTION
句
管理者でない場合は、デフォルトの接続の権限やその他の構成を変更できません。代わりに、デフォルトの接続は、プロジェクトの構成で参照されている既存の接続に自動的に解決され、接続に必要な権限とリソースが付与されます。
始める前に
Enable the BigQuery Connection API.
必要なロールと権限
BigQuery でデフォルトの接続を構成して使用するために必要なロールと権限については、接続を管理するをご覧ください。
CONNECTION DEFAULT
を使用する場合の権限のプロビジョニング
デフォルトの接続で作成するテーブルまたはモデルのタイプに応じて、Google Cloud は接続のサービス アカウントに割り当てられたロールを自動的に更新します。これらのテーブルとモデルの接続のサービス アカウントには、次のロールが自動的に付与されます。
テーブルまたはモデルのタイプ | リモート リソース | 接続のサービス アカウントに割り当てられたロール |
---|---|---|
Cloud Storage BigLake テーブル | Cloud Storage | roles/storage.legacyBucketReader roles/storage.legacyObjectReader |
オブジェクト テーブル | Cloud Storage | roles/storage.legacyBucketReader roles/storage.legacyObjectReader |
Iceberg 用の BigQuery テーブル | Cloud Storage | roles/storage.legacyBucketWriter roles/storage.legacyObjectOwner |
Vertex AI モデルを介した BigQuery ML リモートモデル | Google 所有のモデル | roles/aiplatform.user |
Model Garden からエンドポイントにデプロイ可能 | ||
ユーザーモデル | ||
ファイン チューニングされたモデル | roles/aiplatform.serviceAgent |
|
Cloud AI サービスを介した BigQuery ML リモートモデル | ドキュメント プロセッサ | roles/documentai.apiUser |
音声認識ツール | roles/speech.serviceAgent |
|
Cloud NLP | roles/serviceusage.serviceUsageConsumer |
|
Cloud Vision | roles/serviceusage.serviceUsageConsumer |
|
Cloud Translation | roles/cloudtranslate.user |
プロジェクトのデフォルトの接続を構成する
管理者は、プロジェクトのデフォルトの Cloud リソース接続を構成します。
デフォルトの Cloud リソース接続を作成して構成するには、
ALTER PROJECT SET OPTIONS
DDL ステートメントを使用します。次の例では、プロジェクトのデフォルトの接続を構成しています。
ALTER PROJECT PROJECT_ID SET OPTIONS ( `region-REGION.default_cloud_resource_connection_id` = CONNECTION_ID);
次のように置き換えます。
PROJECT_ID
: デフォルトの接続を設定するプロジェクトの ID。REGION
: 接続のリージョン。CONNECTION_ID
: テーブルとモデルのデフォルトとして使用する接続の ID または名前。接続の ID または名前のみを指定し、名前または ID に付加されているプロジェクト ID とリージョン接頭辞を除外します。
プロジェクトのデフォルト接続の構成について詳しくは、デフォルト構成を管理するをご覧ください。
CONNECTION DEFAULT
を使用してテーブルを作成する
次の例は、BigQuery で WITH CONNECTION
DEFAULT
を指定してテーブルを作成する方法を示しています。
例: Cloud Storage BigLake テーブルを作成する
次の SQL 式は、デフォルトの接続を使用して Cloud Storage BigLake テーブルを作成します。
CREATE EXTERNAL TABLE PROJECT_ID.DATASET.EXTERNAL_TABLE_NAME
WITH CONNECTION DEFAULT
OPTIONS (
format = 'TABLE_FORMAT',
uris = ['BUCKET_PATH']);
例: デフォルトの接続を使用してオブジェクト テーブルを作成する
次の SQL 式は、デフォルトの接続を使用してオブジェクト テーブルを作成します。
CREATE EXTERNAL TABLE PROJECT_ID.DATASET.EXTERNAL_TABLE_NAME
WITH CONNECTION DEFAULT
OPTIONS (
object_metadata = 'SIMPLE'
uris = ['BUCKET_PATH']);
例: デフォルトの接続を使用して Iceberg 用の BigQuery テーブルを作成する
次の SQL 式は、デフォルトの接続を使用して Iceberg 用の BigQuery テーブルを作成します。
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 WITH CONNECTION DEFAULT
を使用してモデルを作成する
次の例は、BigQuery で REMOTE WITH
CONNECTION DEFAULT
を指定してモデルを作成する方法を示しています。
例: Vertex AI モデルを介してリモートモデルを作成する
次の SQL 式は、デフォルトの接続を使用してリモートモデルを作成します。
CREATE OR REPLACE MODEL `mydataset.flash_model`
REMOTE WITH CONNECTION DEFAULT
OPTIONS(ENDPOINT = 'gemini-1.5-flash-001');
例: Cloud AI サービスを介してリモートモデルを作成する
次の SQL 式は、デフォルトの接続を使用してリモートモデル SERVICE を作成します。
CREATE MODEL `project_id.mydataset.mymodel`
REMOTE WITH CONNECTION DEFAULT
OPTIONS(REMOTE_SERVICE_TYPE = 'CLOUD_AI_VISION_V1')
例: HTTPS エンドポイントを使用してリモートモデルを作成する
次の SQL 式は、デフォルトの接続と HTTPS エンドポイントを使用してリモートモデルを作成します。
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')
次のステップ
- BigQuery のデフォルトの構成について学習する。