投稿日:2025-03-30
Looker Studioが使用しているBigQueryのクエリ料金を可視化してみます。
今回は Looker Studio が使用している BigQuery のクエリ料金を可視化する方法について紹介します。
Looker Studio でデータソースとして BigQuery を使用している場合、Looker Studio から
BigQuery へクエリが実行されています。
BigQuery 側の情報を取得し、クエリの実行にかかる料金をモニタリングすることで、
予算管理や最適化を行うことができます。
今回ご紹介する方法は下記になります。
Looker Studio のカスタムクエリと BigQuery の INFORMATION_SCHEMA については、
それぞれの公式ドキュメントをご参照ください。
それぞれ一言で説明すると、以下の通りです。
Looker Studio のカスタムクエリ
INFORMATION_SCHEMA
参考資料
クエリジョブを取得するための INFORMATION_SCHEMA は 4 つ用意されています。
ビュー名 | スコープ |
---|---|
JOBS ビュー | プロジェクトレベル |
JOBS_BY_USER ビュー | 指定したプロジェクトで現在のユーザーが送信したジョブ |
JOBS_BY_PROJECT ビュー | 指定したプロジェクトを含むフォルダ |
JOBS_BY_ORGANIZATION ビュー | 指定したプロジェクトを含む組織 |
今回は JOBS ビューを使用して、クエリジョブ情報を取得します。 (このビューには、現在実行中のジョブと過去 180 日間のジョブ情報を保持しています。)
Looker Studio からのクエリの情報のみを取得したいので下記条件でフィルタリングします。
クエリは下記の通りです。 FROM 句の PROJECT_ID と REGION を環境に合わせて変更してください。 (執筆時のクエリ料金は 6.25$/TiB で1$あたり約 153 円です。)
SELECT
creation_time,
total_bytes_billed,
total_bytes_billed * 6.25 * 153 / 1099511627776 AS fee,
job_id,
(
SELECT
label.value
FROM
UNNEST(labels) label
WHERE
label.key = "looker_studio_report_id" ) AS report_id,
FROM
PROJECT_ID.`region-REGION`.INFORMATION_SCHEMA.JOBS
WHERE
job_type = "QUERY"
AND statement_type = "SELECT"
AND (
SELECT
label.value
FROM
UNNEST(labels) AS label
WHERE
label.key = "requestor" ) = "looker_studio"
作成したクエリを Looker Studio のカスタムクエリとして登録します。
2-1. データソース編集画面に移動
2-2. データソースを追加で BigQuery を選択
2-3. カスタムクエリを選択し、クエリを実行する BigQuery プロジェクトを選択 2-4. クエリを入力しデータソースを追加
ディメンションに creation_time の日付, 指標に fee の合計を指定することで daily のクエリ料金が確認できます。 また、ディメンションに report_id を追加することで、どのレポートにどのくらいコストがかかっているかが確認できます。
今回はデータがなく確認できませんが、時系列の折れ線グラフなどで可視化すると見やすいかなと思います。
今回は Looker Studio が使用している BigQuery のクエリ料金を可視化してみました。 INFORMATION_SCHEMA を使用することで Looker Studio が使用している分 だけでなく、BigQuery 自体の利用状況を可視化することができます。
データ関連の技術情報を中心に発信していく技術ブログを始めました!
これから、データ基盤、クラウド、生成 AI、データ可視化などの情報を発信していきます。