メインコンテンツへスキップ

BigQuery Intelligence

サーバーレスでマルチクラウド対応のデータ分析プラットフォームである Google Cloud BigQuery の料金は主に 2 つの部分から構成されます。クエリ処理コストのための compute pricing と、データ保存コストのための storage pricing です。

DoiT BigQuery Intelligence は BigQuery の利用状況を分析し、コンピュートとストレージの両方に対して実行可能な推奨事項を生成することで、クラウド支出の効率最大化、クエリパフォーマンスの向上、データの拡大に伴う持続的な成長を支援します。

Dataset and audit log sink

BigQuery Intelligence は billing project 内に次のものを作成します。

Queries run by BigQuery Intelligence

BigQuery Intelligence は次のプロセスを実行します。

  • Table discovery process:テーブルのメタデータを収集します。このプロセスはスケジュールに基づいて実行されます。収集したテーブルメタデータは、doitintl_cmp_bq データセット内の tables_discovery_v2 というテーブルに書き込まれます。

  • Costs update process:1 時間あたり 1 回、前時間内の BigQuery ジョブをスキャンし、その結果を doitintl_cmp_bq データセット内の costs というテーブルに書き込みます。このデータは BigQuery Intelligence ダッシュボードおよび分析レポートで利用されます。

  • Dashboard update process:BigQuery Intelligence ダッシュボードを更新します。

    • コスト削減情報および最適化可能なコストを提供するため、コストシミュレーションクエリを毎日実行します。
    • 詳細な BigQuery 利用状況を提供するため、intelligence calculation クエリを毎日実行します。
  • Reservation mapping process:capacity pricing モデルでワークロードを実行している場合、このプロセスは、任意のジョブが完了した時点で使用されていた edition と capacity commitments をマッピングします。1 時間あたり 1 回実行され、収集したデータを doitintl_cmp_bq データセット内の次のテーブルに書き込みます。

    • edition と割り当て先プロジェクトに関連付けられた reservation の一覧を含む reservations_mapping_history テーブル。
    • その日にアクティブだった capacity commitments に関する情報を含む capacity_commitments_history テーブル。

BigQuery Intelligence cost

BigQuery Intelligence は、お客様に代わって doitintl_cmp_bq データセットを作成および管理し、billing project 内でクエリを実行して分析データを提供します。

クエリ実行の実際のコストは、ログのボリュームと、選択した compute pricing モデルに依存します。billing project が reservation に割り当てられている場合、BigQuery Intelligence のジョブは、割り当てられた reservation の slots を使用します。

注意

履歴ジョブが大量に存在する場合、サービスアカウントのセットアップ時に過去 30 日間分をバックフィルする際、BigQuery Streaming Inserts のコストが増加する可能性があります。

Slots autoscaling

BigQuery のコンピュートキャパシティは slots で測定されます。BigQuery capacity の reservation を行う際、BigQuery editions を有効にし、edition に紐づく reservation または capacity commitment を作成できます。

baseline と autoscaling slots を組み合わせた reservations を利用している場合、次の点に注意してください。

  • reservation に割り当てられた baseline slots については常に課金されます。autoscaling slots は、すべての baseline slots(および該当する場合は idle slots)が消費された後にのみ追加されます。

  • slots の数は常に 50 の倍数でスケールし、1 ステップで 50 slots を超えてスケールすることもあります。実際に使用されたかどうかにかかわらず、スケールされた slots の数に応じて課金されます。

  • autoscale されたキャパシティは、少なくとも 60 秒間(スケールダウンウィンドウ)保持されます。

BigQuery コストを算出する際には、RESERVATIONS_TIMELINE view を使用して時間経過に伴う reservation の変更を追跡し、ジョブが完了した時点で使用されていた edition と commitments を特定するために reservation mapping process を実行します。

autoscaling 発生中に複数のジョブがある場合、baseline slots を使用したジョブと autoscaled slots を使用したジョブを区別できないため、重み付き平均に基づく価格を用います。その結果、全体の合計値は概ね正確である一方、個々のジョブまたは reservation のコストは正確でない可能性があります。

Table type limitations

BigQuery Intelligence は、BigQuery の clones および snapshots のストレージコストを算出できません。これらのテーブルタイプは、データ共有や親テーブルからの継承に依存する複雑な課金モデルを持っています。BigQuery APIs を介して利用可能なメタデータだけでは、それらのストレージ消費を正確にモデル化するための情報が十分ではありません。

ただし、clones と snapshots のコストは、Active logical storageLong-term logical storage などの BigQuery SKU の下で、Google Cloud の billing export から得られる集計データには引き続き含まれます。clones および snapshots からの個々のコスト寄与分は、BigQuery Intelligence によるストレージ分析と推奨事項からのみ除外されます。