〜AUTO_SUSPENDとクエリ実行時間による請求ロジック〜
❄️ 基本ルール
Snowflakeでは、仮想ウェアハウス(Virtual Warehouse)の起動中の時間に対して課金されます。
これには、クエリ実行中だけでなく、実行後の自動停止までの待機時間も含まれます。
⏳ 課金時間に影響する主な設定
設定項目 | 内容 |
---|---|
AUTO_SUSPEND | ウェアハウスが非アクティブ後、何秒で停止するかを設定(例:600秒 = 10分) |
AUTO_RESUME | クエリが実行されたときに、自動でウェアハウスを再起動するかを設定 |
💸 課金単位のルール
時間 | 課金単位 |
---|---|
60秒未満 | 切り上げで**60秒(1分)**として課金される |
60秒以上 | 分単位 + 秒単位で正確に課金される |
🧪 例題シナリオの構成
AUTO_SUSPEND = 600秒(=10分)
ウェアハウスは初期状態で一時停止中
① 最初のクエリ:7分間実行
② クエリ後、10分間自動停止待機 → 停止
③ 1時間後、2つ目のクエリ実行:50秒間実行
④ クエリ後、10分間自動停止待機 → 停止
📊 請求時間の内訳
フェーズ | 実行時間 | 課金時間の計算方法 | 請求対象時間 |
---|---|---|---|
最初のクエリ | 7分 | 実行時間+AUTO_SUSPEND待機 | 7分 + 10分 = 17分 |
2回目のクエリ | 50秒 | 切り上げ → 60秒 + AUTO_SUSPEND待機(10分) | 1分 + 10分 = 11分 |
合計 | – | – | 28分 |
✅ 最終請求時間:28分
❗注意すべきポイント
AUTO_SUSPEND
の設定値はクエリ実行後のウェアハウス課金時間に直結します。- クエリ時間が60秒未満でも、切り上げで1分請求されます。
- 停止していたウェアハウスが再起動する場合でも、その起動・実行・待機時間はすべて課金対象です。