はじめに:気づいたらクレジットが…を防ぎたい!
Snowflakeは従量課金なので、ウェアハウスを動かしている時間ぶんだけクレジット(Snowflakeの利用料単位)を消費します。便利な反面、「重いクエリを放置」「自動サスペンドの設定ミス」などで、月末に請求を見てびっくり…なんてことも。
そんな事故を防いでくれるのが、今日ご紹介する リソースモニター(Resource Monitor) です。あらかじめ「今月は◯◯クレジットまで」と上限を決めておけば、超えそうになった時に通知したり、ウェアハウスを自動で止めてくれたりします。いわばクレジットの番人ですね!

リソースモニターの基本概念
リソースモニターは「クレジット上限 + 監視期間 + しきい値ごとのアクション」の3点セットで動きます。
- CREDIT_QUOTA:期間内に使ってよいクレジット数(例:100)
- FREQUENCY:DAILY / WEEKLY / MONTHLY / YEARLY / NEVER
- TRIGGERS:消費率(%)に応じた動作 ― NOTIFY / SUSPEND / SUSPEND_IMMEDIATE
SUSPENDは「実行中のクエリは終わらせてから停止」、SUSPEND_IMMEDIATEは「即停止」です。後者は強制シャットダウンに近いので、本番では使い分けに注意しましょう。
SQLで作ってみよう
ACCOUNTADMIN ロールで、以下のように作成します。
USE ROLE ACCOUNTADMIN;
CREATE OR REPLACE RESOURCE MONITOR rm_dev_monthly
WITH CREDIT_QUOTA = 100
FREQUENCY = MONTHLY
START_TIMESTAMP = IMMEDIATELY
TRIGGERS
ON 75 PERCENT DO NOTIFY
ON 90 PERCENT DO SUSPEND
ON 100 PERCENT DO SUSPEND_IMMEDIATE;
-- 特定ウェアハウスに割り当て
ALTER WAREHOUSE dev_wh
SET RESOURCE_MONITOR = rm_dev_monthly;
これで、月100クレジットを基準に「75%で通知 → 90%でサスペンド → 100%で即停止」という三段階の安全弁が完成します。アカウント全体に適用したい場合は ALTER ACCOUNT SET RESOURCE_MONITOR = ... を使います。
Snowsightでの設定手順
GUI派の方は Snowsight からも作れます。
- 左メニューの Admin → Cost Management → Resource Monitors を開く
- 右上の + Resource Monitor をクリック
- 名前・クォータ・スケジュール・トリガーを入力
- 適用先(Account / Warehouse)を選んで保存
通知メールを受け取りたいユーザーは、自分のプロフィールで「Receive Resource Monitor Notifications」をONにしておく必要があります。ここを忘れがちなので注意!

よくあるユースケースと注意点
典型例は「開発用ウェアハウスは月50クレジットまで」「BI用は週20クレジットまで」のように、用途別に上限を分けるパターンです。本番ETL用には通知のみ(SUSPENDなし)にして止まらないよう運用するのも定番。
注意点としては、リソースモニターはサーバーレス機能(Snowpipe、自動クラスタリング、検索最適化など)のクレジットは制御できないこと。コスト全体を見るには ACCOUNT_USAGEビューでのクレジット分析と組み合わせるのがおすすめです。また、根本的にクレジット消費を抑えるには、クエリ最適化のベストプラクティスや、過剰スケールを避けるマルチクラスタウェアハウスの調整も効果的です。
まとめ
リソースモニターは、Snowflake運用で最初に必ず仕掛けておきたい安全装置です。CREDIT_QUOTA・FREQUENCY・TRIGGERSの3点を理解すれば、5分で予算超過対策ができます。「通知だけ」から始めて、慣れてきたらSUSPENDも組み込む、という段階的な導入が安心ですよ。
参考リンク
関連記事
- Snowflakeクレジット消費を分析|ACCOUNT_USAGEビュー入門 – リソースモニターと併用したい全社コスト分析の基本。
- Snowflakeクエリ最適化ベストプラクティス10選 – 消費クレジットそのものを減らすチューニング集。
- Snowflakeマルチクラスタウェアハウス入門 – スケール設定によってもコストは大きく変わります。
- Snowflakeの3つのキャッシュの違い – キャッシュを活かして無駄な課金を回避するヒント。

