データエンジニアの技術メモと日常の記録
現役エンジニアの学びと日常
  • ホーム
  • Snowflake
    • 入門系
    • トラブルシューティング系
    • 新機能・ニュース系
  • 野球データ分析
  • 旅行
  • About
  • サイトポリシー
  • お問い合わせ

Snowflakeクレジット消費を分析|ACCOUNT_USAGEビュー入門

Snowflakeクレジット消費を分析|ACCOUNT_USAGEビュー入門 Snowflake
2026.05.032026.05.10
  1. はじめに:なぜクレジット消費の分析が必要なの?
  2. ACCOUNT_USAGEって何?
    1. アクセスにはACCOUNTADMINが基本
  3. クレジット分析でよく使う主要ビュー
  4. 実践!クレジット消費を可視化するSQL
    1. ① ウェアハウスごとの月次クレジット消費
    2. ② ユーザー別のクレジット消費トップ10
    3. ③ Snowsightのダッシュボードでグラフ化
  5. よくあるユースケースと注意点
  6. まとめ
  7. 参考リンク
  8. 関連記事

はじめに:なぜクレジット消費の分析が必要なの?

こんにちは!Snowflakeを使い始めると、最初は「便利!速い!」とテンションが上がりますが、しばらく経って気になり始めるのがクレジット(=利用料金)の消費量ですよね。「あれ?今月思ったより使ってる…」と慌てた経験、ありませんか?

そんなときに大活躍するのが、Snowflakeが標準で用意してくれている ACCOUNT_USAGEスキーマ です。これを使えば「どのウェアハウスが」「いつ」「どれくらい」クレジットを消費したかを SQL でズバッと可視化できます。本記事では、データベース初心者の方でも今日から使えるように、基本の考え方と実用SQLをまとめました!

Snowflakeクレジット消費を分析|ACCOUNT_USAGEビュー入門

ACCOUNT_USAGEって何?

ACCOUNT_USAGE は、Snowflakeの共有データベース SNOWFLAKE の中にあるスキーマで、アカウント全体の利用履歴(ログイン、クエリ、ストレージ、クレジット消費など)を ビュー(VIEW) として閲覧できる仕組みです。

ビューは「実態のテーブルではなく、SQLで定義された見せ方」のことで、ビューとマテリアライズドビューの違いでも解説しています。ACCOUNT_USAGE のビューはあらかじめ Snowflake が用意してくれているので、私たちは SELECT するだけでOK!

アクセスにはACCOUNTADMINが基本

ACCOUNT_USAGE はデフォルトで ACCOUNTADMINロール のみアクセス可能です。他のロールに見せたい場合は GRANT IMPORTED PRIVILEGES で権限を渡します。

USE ROLE ACCOUNTADMIN;
GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE TO ROLE COST_ANALYST;

クレジット分析でよく使う主要ビュー

たくさんビューがありますが、まずは以下の3つを押さえればOKです。

  • WAREHOUSE_METERING_HISTORY:ウェアハウスごとの1時間単位のクレジット消費
  • METERING_DAILY_HISTORY:サービス種別×日単位のクレジット消費(ざっくり把握用)
  • QUERY_HISTORY:個々のクエリ実行履歴(誰が何のクエリで使ったか)

※データは最大45分〜3時間ほど遅延して反映される点に注意してください(リアルタイムではありません)。

クレジット分析でよく使う主要ビューの解説図

実践!クレジット消費を可視化するSQL

① ウェアハウスごとの月次クレジット消費

SELECT
    WAREHOUSE_NAME,
    DATE_TRUNC('MONTH', START_TIME) AS MONTH,
    SUM(CREDITS_USED) AS TOTAL_CREDITS
FROM SNOWFLAKE.ACCOUNT_USAGE.WAREHOUSE_METERING_HISTORY
WHERE START_TIME >= DATEADD('MONTH', -3, CURRENT_DATE)
GROUP BY 1, 2
ORDER BY MONTH DESC, TOTAL_CREDITS DESC;

「直近3か月で、どのウェアハウスが食いしん坊さんか」が一目瞭然です。

② ユーザー別のクレジット消費トップ10

SELECT
    USER_NAME,
    SUM(CREDITS_USED_CLOUD_SERVICES) + 
    SUM(CREDITS_USED_CLOUD_SERVICES) AS APPROX_CREDITS,
    COUNT(*) AS QUERY_COUNT
FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY
WHERE START_TIME >= DATEADD('DAY', -30, CURRENT_DATE)
GROUP BY USER_NAME
ORDER BY QUERY_COUNT DESC
LIMIT 10;

「クエリを大量に投げているのは誰か?」が分かるので、研修や最適化の対象を絞り込めます。

③ Snowsightのダッシュボードでグラフ化

Snowsight 左メニューの「Projects → Dashboards」から新規ダッシュボードを作成し、上記SQLをタイル化すれば棒グラフや折れ線グラフでチームに共有できます。毎週月曜の朝にチェックする習慣をつけると、無駄使いに早く気づけますよ。

よくあるユースケースと注意点

  • 急にクレジットが跳ねた日を特定:WAREHOUSE_METERING_HISTORY を時間単位で見て、原因クエリを QUERY_HISTORY で深掘り。マルチクラスタウェアハウスのクラスタ起動状況も確認しましょう。
  • キャッシュヒット率の確認:同じクエリでもキャッシュが効けば0クレジット。Snowflakeのキャッシュの違いもあわせてチェック!
  • 遅いクエリの最適化候補抽出:クエリ最適化ベストプラクティスと組み合わせると効果絶大です。

注意点として、ACCOUNT_USAGE のデータ保持期間は1年間。長期分析したい場合は別テーブルにコピーしておきましょう。

まとめ

ACCOUNT_USAGE ビューは、Snowflake のコスト管理における「健康診断ツール」のような存在です。最初はWAREHOUSE_METERING_HISTORYとQUERY_HISTORYの2つだけでも十分に強力。まずはコピペで試して、自分のアカウントのクセを掴むところから始めてみてください!

参考リンク

  • ACCOUNT_USAGE スキーマ(公式ドキュメント)
  • WAREHOUSE_METERING_HISTORY ビュー
  • QUERY_HISTORY ビュー

関連記事

  • Snowflakeクエリ最適化ベストプラクティス10選|初心者向け早見ガイド – クレジット節約の第一歩はクエリ最適化から。
  • Snowflakeマルチクラスタウェアハウス入門|同時実行クエリを増やす仕組み – クラスタ数の増減はクレジット消費に直結します。
  • Snowflakeの3つのキャッシュの違い|リザルト・ウェアハウス・メタデータをやさしく解説 – キャッシュを活かしてクレジットを節約。
  • Snowflakeクエリプロファイル入門|遅いクエリのボトルネックを見抜く方法 – 高コストクエリの原因特定にどうぞ。

この記事は Snowflake入門ガイド の一部です。
全53記事の学習ロードマップに戻って、次のステップへ進めます。

Snowflake入門ガイドへ戻る
Snowflake入門系
ACCOUNT_USAGESnowflakeSnowflake 初心者クレジットコスト分析
Somaをフォローする
Soma

関連記事

Snowflake

Snowflake UDF入門|SQL・JavaScript・Pythonで関数を自作する方法

SnowflakeのUDF(ユーザー定義関数)を初心者向けに解説。SQL・JavaScript・Pythonの3言語で関数を自作する方法、ストアドプロシージャとの違い、書き方のサンプルとSnowsightでの確認手順をまとめました。
Snowflake

Snowflakeリソースモニター入門|予算超過を防ぐ仕組み

Snowflakeのリソースモニターを使えば、ウェアハウスのクレジット消費に上限を設定し、予算超過を未然に防げます。基本概念からSQL例、Snowsightでの設定手順までやさしく解説します。
Snowflake

Snowflake監査ログ入門|Account UsageとInformation Schemaの違いをやさしく解説

Snowflakeの監査ログを初心者向けにやさしく解説。Account UsageとInformation Schemaの違い、ログイン履歴やクエリ履歴の確認方法をSQL例とともに紹介します。
Snowflake

Snowflakeのデータ保持期間とFail-safeでストレージ料金を抑えるコツ

Snowflakeのストレージ料金は「実データ」だけでなくTime Travel領域とFail-safe領域も加算されます。保持期間とFail-safeの仕組みを理解して、無駄なくコストを抑えましょう。
Snowflake

Snowflake QUALIFY句の使い方|ウィンドウ関数の絞り込みが超簡単に

SnowflakeのQUALIFY句は、ウィンドウ関数の結果をWHEREのように絞り込めるSnowflake独自の便利機能。サブクエリ不要でTOP N抽出や重複排除がスッキリ書けます。基本から実用例まで初心者向けに解説します。
Snowflake

Snowflake対応ファイル形式まとめ|CSV/JSON/Parquet/Avroの違い

Snowflakeにロードできる主なファイル形式(CSV / JSON / Parquet / Avro)の特徴と使い分けを、初心者向けにやさしく解説します。
Snowflakeの3つのキャッシュの違い|リザルト・ウェアハウス・メタデータをやさしく解説
FanGraphs・Baseball Reference・Baseball Savantの使い方入門ガイド
ホーム
Snowflake

サイト内を検索

最新記事

FIPとは?防御率では見抜けない投手の実力を測る指標を徹底解説
2026.05.12
Snowflakeにログインできない時の対処法|MFA・IP・SSO切り分け完全ガイド
2026.05.10
WARとは?意味・計算方法・fWAR/bWARの違いを初心者向けに解説
2026.05.10
Snowflake vs BigQuery 徹底比較|現役データエンジニアが料金・性能・運用で選び方を解説
2026.05.092026.05.10
Snowflake「Object does not exist or not authorized」エラーの原因と解決法|権限・ロール・テーブル参照を確認
2026.05.092026.05.10
現役エンジニアの学びと日常
  • About
  • お問い合わせ
  • プライバシーポリシー
  • サイトマップ
© 2025 現役エンジニアの学びと日常.
    • ホーム
    • Snowflake
      • 入門系
      • トラブルシューティング系
      • 新機能・ニュース系
    • 野球データ分析
    • 旅行
    • About
    • サイトポリシー
    • お問い合わせ
  • ホーム
  • トップ