Snowflakeを使い始めると、「クエリが遅いな…」「同時実行が多くて待ち行列ができている…」といった悩みに必ず出会います。そんなときの解決策が スケールアップ と スケールアウト の2つ。名前は似ていますが役割はまったく違います。この記事では、フレンドリーな例えを交えながら、それぞれの違いと使い分け方を初心者向けに解説します。
※ ウェアハウスそのものの基本については Snowflakeウェアハウスとは?サイズと使い分けを初心者向けに解説 を先に読むとより理解しやすいです。
スケールアップとスケールアウトって何?
ざっくり言うと…
- スケールアップ:ウェアハウスのサイズを大きくする(XS → S → M → L…)
- スケールアウト:同じサイズのウェアハウスを複数台に増やす(クラスター数を増やす)
レストランで例えるなら、スケールアップは「シェフを名人級にパワーアップ!」、スケールアウトは「同じ腕前のシェフをもう一人雇う!」というイメージ。一品の料理を早く作りたいのか、多くのお客さんを同時にさばきたいのかで選び方が変わるんです。

スケールアップ:重いクエリを速くしたいとき
ウェアハウスのサイズを上げると、CPU・メモリ・ローカルSSDが倍々で増えていきます。1本の重いクエリ(大量データの集計や複雑なJOIN)を速く処理したいときに有効です。
-- ウェアハウスのサイズをLに変更(スケールアップ)
ALTER WAREHOUSE my_wh SET WAREHOUSE_SIZE = 'LARGE';
ただしサイズを上げるとクレジット消費も倍になります。「いつも遅いから常にXLにする」ではなく、必要なときだけ上げるのが鉄則です。
スケールアウト:同時実行ユーザーが多いとき
朝9時に分析チーム10人が一斉にクエリを投げる…そんなとき1台のウェアハウスでは順番待ち(キュー)が発生します。これを解決するのが マルチクラスターウェアハウス(Enterprise Edition以上で利用可)。混雑時に自動で台数を増やし、空いてきたら減らしてくれます。
-- 1〜3台の間で自動スケールアウト
ALTER WAREHOUSE my_wh SET
MIN_CLUSTER_COUNT = 1
MAX_CLUSTER_COUNT = 3
SCALING_POLICY = 'STANDARD';
エディションによる機能差は Snowflakeエディションの違いと選び方を初心者向けに解説 も参考になります。

どっちを選ぶ?判断のポイント
| 状況 | 選ぶべき方法 |
|---|---|
| 1本のクエリが遅い | スケールアップ |
| 同時に走るクエリが多くキューが発生 | スケールアウト |
| 大量データのバッチ処理を短時間で | スケールアップ |
| BIツールから多人数が同時アクセス | スケールアウト |
迷ったら「遅い=アップ、混んでる=アウト」と覚えればOKです。
まとめ
スケールアップは「ハイパワー1台で重い処理を高速化」、スケールアウトは「複数台で同時実行をさばく」。Snowflakeはどちらもボタン一つ・SQL一行で実現でき、しかも秒課金なので無駄になりません。まずは小さく始めて、ボトルネックを見ながら賢く拡張していきましょう!
参考リンク
関連記事
- Snowflakeウェアハウスとは?サイズと使い分けを初心者向けに解説 – ウェアハウスのサイズとT-Shirtサイズの基本を押さえたい方へ
- Snowflakeエディションの違いと選び方を初心者向けに解説 – マルチクラスターはEnterprise以上。エディション選定の参考に
- Snowflakeの3層アーキテクチャを初心者向けにやさしく解説 – なぜスケール変更が瞬時にできるのか?その仕組みを解説
- Snowflakeの主要な特徴とメリットを初心者向けにやさしく解説 – 自動スケーリングなどSnowflakeの強みを総まとめ
- Snowsightの画面構成と基本操作を初心者向けにやさしく解説 – ウェアハウス設定をGUIから変更する方法もこちら

