システム プロシージャ リファレンス

BigQuery は以下のシステム プロシージャをサポートしています。これらのシステム プロシージャは、ユーザーが作成したストアド プロシージャと同様に使用できます。

BQ.ABORT_SESSION

構文

CALL BQ.ABORT_SESSION([session_id]);

説明

現在のセッションを終了します。

必要に応じてセッション ID を指定できます。セッション ID を指定すると、そのセッションからシステム プロシージャが呼び出されない場合にセッションを終了できます。

詳細については、セッションを終了するをご覧ください。

BQ.JOBS.CANCEL

構文

CALL BQ.JOBS.CANCEL(job);

説明

実行中のジョブをキャンセルします。

ジョブを '[project_id.]job_id' 形式の文字列として指定します。ジョブとは異なるプロジェクトからこのシステム プロシージャを実行する場合は、プロジェクト ID を含める必要があります。このプロシージャは、ジョブと同じリージョンで実行する必要があります。

詳細については、ジョブをキャンセルするをご覧ください。

BQ.REFRESH_EXTERNAL_METADATA_CACHE

構文

CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE(table_name [, [subdirectory_uri, ]]);

説明

BigLake テーブルまたはオブジェクト テーブルのメタデータ キャッシュを更新します。このプロシージャは、メタデータ キャッシュ モードが AUTOMATIC に設定されているテーブルに対して実行すると失敗します。

このシステム プロシージャを実行するには、bigquery.tables.update 権限と bigquery.tables.updateData 権限が必要です。

テーブルの名前を '[project_id.]dataset.table' 形式の文字列として指定します。テーブルとは異なるプロジェクトからこのシステム プロシージャを実行する場合は、プロジェクト ID を含める必要があります。

BigLake テーブルの場合、Cloud Storage のテーブルデータ ディレクトリの 1 つ以上のサブディレクトリを 'gs://table_data_directory/subdirectory/.../' の形式で指定できます。これにより、これらのサブディレクトリのテーブル メタデータのみを更新し、不要なメタデータ処理を回避できます。

テーブルのメタデータをすべて更新するには:

CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE('myproject.test_db.test_table')

BigLake テーブルのメタデータを選択的に更新するには:

CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE('myproject.test_db.test_table', ['gs://source/uri/sub/path/d1/*', 'gs://source/uri/sub/path/d2/*'])

制約事項

外部データセットに関してリンクされたデータセットから参照されるテーブルでは、メタデータ キャッシュの更新はサポートされていません。

BQ.REFRESH_MATERIALIZED_VIEW

構文

CALL BQ.REFRESH_MATERIALIZED_VIEW(view_name);

説明

マテリアライズド ビューを更新します。

マテリアライズド ビューの名前を '[project_id.]dataset.table' 形式の文字列として指定します。マテリアライズド ビューとは異なるプロジェクトからこのシステム プロシージャを実行する場合は、プロジェクト ID を含める必要があります。

詳細については、手動更新をご覧ください。