カスタムコスト管理を作成する
複数の BigQuery プロジェクトとユーザーが存在している場合、1 日に処理されるクエリデータの量に対する上限を指定するカスタム割り当てを要求することで、コストを管理できます。
クエリデータに対してカスタム割り当てを作成すると、プロジェクト レベルまたはユーザーレベルでコストを管理できます。
プロジェクト レベルのカスタム割り当ては、そのプロジェクト内のすべてのユーザーの合計使用量を制限します。
ユーザーレベルのカスタム割り当ては、プロジェクト内のすべてのユーザー アカウントとサービス アカウントに個別に適用されます。
特定のユーザーまたはサービス アカウントにカスタム割り当てを行うことはできません。
現在のオンデマンドのクエリ料金については、料金ページをご覧ください。
カスタム割り当てを設定または変更する方法
Google Cloud Console の [割り当て] ページでは、カスタム割り当ての設定や既存のカスタム割り当ての変更を行うことができます。詳細については、Google Cloud コンソールを使用して割り当てを管理するをご覧ください。割り当ての引き下げをリクエストすると、数分以内に変更が反映されます(割り当ての増加をリクエストすると、承認プロセスが行われるため、処理に時間がかかることがあります。詳細については、割り当て上限の引き上げをリクエストするをご覧ください)。
割り当て量を変更するには、serviceusage.quotas.update
権限が必要です。serviceusage.quotas.update
権限は、以下の IAM 事前定義ロールに含まれます。
- オーナーと編集者の基本ロール
- 割り当て管理者(
servicemanagement.quotaAdmin
)の Service Management のロール
カスタム割り当てが適用される仕組み
カスタム割り当てを設定すると、それを超えたときにエラーが返されます。
プロジェクト レベルのカスタム割り当てを超えると、次の usageQuotaExceeded エラーが返されます。
Custom quota exceeded: Your usage exceeded the custom quota for QueryUsagePerDay, which is set by your administrator. For more information, see https://cloud.google.com/bigquery/cost-controls
ユーザーレベルのカスタム割り当てを超えると、それぞれエラー メッセージが異なる usageQuotaExceeded
エラーが返されます。
Custom quota exceeded: Your usage exceeded the custom quota for QueryUsagePerUserPerDay, which is set by your administrator. For more information, see https://cloud.google.com/bigquery/cost-controls
例
10 人のユーザー(そのうち 1 人がサービス アカウント)のプロジェクトに次のカスタム割り当てを設定したとします。
- プロジェクト レベル: 1 日あたり 50 TB
- ユーザーレベル: 1 日あたり 10 TB
プロジェクト レベルのカスタム割り当ては、そのプロジェクト内のすべてのユーザーの合計使用量を制限します。ユーザーレベルのカスタム割り当ては、プロジェクト内の各ユーザー アカウントまたはサービス アカウントに個別に適用されます。
次の表は、10 人のユーザーが 1 日クエリを実行したときの残りの割り当ての変化を示しています。
使用状況 | 残りの割り当て |
---|---|
プロジェクト レベル: 残り 10 TB。 ユーザーレベル: ユーザーあたり残り 6 TB、ただし合計で 10 TB まで。 |
|
サービス アカウントがさらに 6 TB を実行 | プロジェクト レベル: 残り 4 TB。 ユーザーレベル: サービス アカウントは、BigQuery をこれ以上使用できません。他のユーザーはユーザーあたり残り 6 TB、ただし合計で 4 TB まで。 |
1 人のユーザーがさらに 4 TB のクエリを実行 | プロジェクト レベル: 残り 0 TB。 ユーザーレベル: ユーザーによっては割り当てが残っていますが、プロジェクト レベルの割り当てを超過したため、どのユーザーも BigQuery をこれ以上使用できません。 |
割り当ての残量がなくなると、そのプロジェクトの全ユーザーが BigQuery を使用できなくなります。
よくある質問
カスタム割り当てを自分でプロビジョニングできますか?
はい。Google Cloud Console ページからカスタム割り当てをセルフ プロビジョニングできます。
カスタム割り当てレベルを確認するにはどうすればよいですか?
カスタム割り当てレベルは Google Cloud Console ページで確認できます。
カスタム割り当てはいつ補充されますか?
毎日の割り当ては、太平洋時間の午前 0 時にリセットされます。
カスタム割り当てを超えたときにリセットするにはどうすればよいですか?
カスタム割り当てがないか、カスタム割り当てを超えていない別のプロジェクトがデータセットにアクセスできる場合、そのプロジェクトからクエリを実行できます。
カスタム割り当てはプロアクティブですか、それともリアクティブですか?たとえば、10 TB の割り当てがある場合、11 TB のクエリを実行できますか?
カスタム割り当てはプロアクティブなので、割り当てが 10 TB の場合は 11 TB のクエリを実行できません。