ASSIGNMENTS ビュー
INFORMATION_SCHEMA.ASSIGNMENTS ビューには、管理プロジェクト内の現在のすべての割り当てのニア リアルタイム リストが表示されます。各行は、現在の 1 つの割り当てを表します。現在の割り当ては、保留中かアクティブのいずれかで、削除されていません。予約の詳細については、予約の概要をご覧ください。
必要な権限
INFORMATION_SCHEMA.ASSIGNMENTS ビューをクエリするには、プロジェクトの bigquery.reservationAssignments.list Identity and Access Management(IAM)権限が必要です。次に示す各 IAM の事前定義ロールには、必要な権限が含まれています。
- roles/bigquery.resourceAdmin
- roles/bigquery.resourceEditor
- roles/bigquery.resourceViewer
- roles/bigquery.user
- roles/bigquery.admin
BigQuery の権限の詳細については、IAM でのアクセス制御をご覧ください。
スキーマ
INFORMATION_SCHEMA.ASSIGNMENTS ビューのスキーマは次のとおりです。
| 列名 | データ型 | 値 | 
|---|---|---|
| ddl | STRING | この割り当ての作成に使用される DDL ステートメント。 | 
| project_id | STRING | 管理プロジェクトの ID。 | 
| project_number | INTEGER | 管理プロジェクトの番号。 | 
| assignment_id | STRING | 割り当てを一意に識別する ID。 | 
| reservation_name | STRING | 割り当てが使用する予約の名前。 | 
| job_type | STRING | 予約に使用できるジョブの種類。 PIPELINE、QUERY、CONTINUOUS、ML_EXTERNAL、またはBACKGROUNDのいずれか。 | 
| assignee_id | STRING | 割り当て先リソースを一意に識別する ID。 | 
| assignee_number | INTEGER | 割り当て先リソースを一意に識別する番号。 | 
| assignee_type | STRING | 割り当て先リソースの種類。 organization、folder、projectのいずれかです。 | 
スコープと構文
このビューに対するクエリでは、リージョン修飾子を指定する必要があります。リージョン修飾子を指定しない場合、メタデータはすべてのリージョンで取得されます。次の表で、このビューのリージョン スコープを説明します。
| ビュー名 | リソース スコープ | リージョン スコープ | 
|---|---|---|
| [PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.ASSIGNMENTS[_BY_PROJECT] | プロジェクト レベル | REGION | 
- 
  省略可: PROJECT_ID: Google Cloud プロジェクトの ID。指定しない場合は、デフォルトのプロジェクトが使用されます。
- 
  REGION: 任意のデータセット リージョン名。例:`region-us`
例
デフォルト プロジェクト以外のプロジェクトに対してクエリを実行するには、次の形式でプロジェクト ID を追加します。
`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.ASSIGNMENTS
次のように置き換えます。
- PROJECT_ID: 予約を割り当てたプロジェクトの ID。
- REGION_NAME: リージョンの名前。
たとえば、`myproject`.`region-us`.INFORMATION_SCHEMA.ASSIGNMENTS のようにします。
次の例では、プロジェクトに現在割り当てられている予約とそのスロット容量を取得します。この情報は、プロジェクトのスロットの使用状況をそのプロジェクトに割り当てられている予約の容量と比較して、ジョブのパフォーマンスをデバッグする場合に役立ちます。
SELECT reservation.reservation_name, reservation.slot_capacity FROM `RESERVATION_ADMIN_PROJECT.region-REGION_NAME`. INFORMATION_SCHEMA.ASSIGNMENTS_BY_PROJECT assignment INNER JOIN `RESERVATION_ADMIN_PROJECT.region-REGION_NAME`. INFORMATION_SCHEMA.RESERVATIONS_BY_PROJECT AS reservation ON (assignment.reservation_name = reservation.reservation_name) WHERE assignment.assignee_id = "PROJECT_ID" AND job_type = "QUERY";