BigQuery Intelligence
サーバーレスかつマルチクラウド対応のデータ分析プラットフォームである Google Cloud BigQuery の料金は主に 2 つの部分から構成されます。クエリ処理のコストに対するコンピュート料金と、データ保存のコストに対するストレージ料金です。
DoiT BigQuery Intelligence は BigQuery の利用状況を分析し、コンピュートとストレ ージの双方について実行可能な推奨事項を生成することで、クラウドコストの効率化、クエリパフォーマンスの向上、データ量の増加に伴う持続的な成長を支援します。
BigQuery Intelligence は、すべての Cloud Intelligence プランに含まれます。PerfectScale for Data Platforms(高度な BigQuery 最適化機能)は Cloud Intelligence Enterprise ティアに含まれており、他のプランでは個別サブスクリプションとして利用できます。
Dataset and audit log sink
BigQuery Intelligence は、請求プロジェクト内に次のものを作成します。
-
必要な権限でサービスアカウントを更新した際に作成され、サービスアカウントを削除した際に削除される、
doitintl_cmp_bqという名前のデータセット。 -
すべての BigQuery ジョブに対して、
<Billing_Project_ID>.doitintl_cmp_bq.cloudaudit_googleapis_com_data_accessという名前の監査ログシンク。
Queries run by BigQuery Intelligence
BigQuery Intelligence は次のプロセスを実行します。
-
テーブル検出プロセス: テーブルのメタデータを収集します。このプロセスはスケジュールに従って実行されます。収集したテーブルメタデータは、
doitintl_cmp_bqデータセット内のtables_discovery_v2という名前のテーブルに書き込まれます。 -
コスト更新プロセス: 直前の 1 時間に実行された BigQuery ジョブを 1 時間ごとにスキャンし、結果を
doitintl_cmp_bqデータセット内のcostsという名前のテーブルに書き込みます。このデータは、BigQuery Intelligence のダッシュボードと分析レポートで使用されます。 -
ダッシュボード更新プロセス: BigQuery Intelligence ダッシュボードを更新します。
- コスト削減情報と最適化可能なコストを提供するための、コストシミュレーションクエリのデイリー実行。
- BigQuery の詳細な利用状況を提供するための、インテリジェンス計算クエリのデイリー実行。
-
予約マッピングプロセス: 容量ベースの料金モデルを使用している場合、このプロセスは、任意のジョブが完了した時点で使用されていたエディションと容量コミットメントをマッピングします。これは 1 時間ごとに実行され、収集したデータを
doitintl_cmp_bqデータセット内の次のテーブルに書き込みます。- 対応するエディションとアロケーション先プロジェクトと共に予約の 一覧を含む
reservations_mapping_historyテーブル。 - その日にアクティブだった容量コミットメントに関する情報を含む
capacity_commitments_historyテーブル。
- 対応するエディションとアロケーション先プロジェクトと共に予約の 一覧を含む
BigQuery Intelligence cost
BigQuery Intelligence は、お客様に代わって doitintl_cmp_bq データセットを作成・管理し、請求プロジェクト内でクエリを実行して分析データを提供します。
クエリ実行の実際のコストは、ログのボリュームと選択したコンピュート料金モデルによって異なります。請求プロジェクトが予約に割り当てられている場合、BigQuery Intelligence のジョブは割り当てられた予約のスロットを使用します。
履歴ジョブが大量に存在する場合、サービスアカウントのセットアップ時に直近 30 日分をバックフィルすることで、BigQuery Streaming Inserts のコストが増加する場合があります。
Slots autoscaling
BigQuery のコンピュートキャパシティはスロットで測定されます。BigQuery キャパシティを予約する際には、BigQuery エディションを有効化し、そのエディションに関連付けられた予約または容量コミットメントを作成できます。
ベースラインスロットとオートスケーリングスロットを持つ予約を使用する場合は、次の点に注意してください。
-
予約に割り当てられたベースラインスロットについては常に課金されます。オートスケーリングスロットは、すべてのベースラインスロット(および該当する場合はアイドルスロット)が消費された後にのみ追加されます。
-
スロット数は常に 50 の倍数でスケールし、1 回のステップで 50 スロットを超えてスケールする場合もあります。スロットの使用状況にかかわらず 、スケールされたスロット数に対して課金されます。
-
オートスケールされたキャパシティは、少なくとも 60 秒間(スケールダウンの猶予時間)維持されます。
BigQuery コストを計算する際には、RESERVATIONS_TIMELINE ビューを使用して時間の経過に伴う予約の変更を追跡し、ジョブが完了した時点で使用されていたエディションとコミットメントを特定するための予約マッピングプロセスを実行します。
オートスケーリングイベント中に複数のジョブが存在する場合、ベースラインスロットを使用したジョブとオートスケールスロットを使用したジョブが区別されないため、重み付き平均に基づく単価を使用します。その結果、全体の合計値は概ね正確ですが、個々のジョブや予約単位でのコストは正確でない可能性があります。
Table type limitations
BigQuery Intelligence は、BigQuery のクローンとスナップショットのストレージコストを計算できません。これらのテーブルタイプは、データ共有や親テーブルからの継承に依存する複雑な請求モデルを持っています。BigQuery API を通じて利用可能なメタデータでは、それらのストレージ消費を正確にモデル化するための十分な情報が提供されていません。
ただし、クローンとスナップショットのコストは、Active logical storage や Long-term logical storage などの BigQuery SKU の下で、Google Cloud の請求エクスポートからの集計データには引き続き含まれます。クローンとスナップショットの個別のコスト寄与分が除外されるのは、BigQuery Intelligence によるストレージ分析と推奨事項においてのみです。