Snowflakeとは:ストレージとコンピュートを切り離したDWH

Snowflakeの最大の設計上の特徴は、ストレージ(データ保管)とコンピュート(計算処理)を完全に分離していることです。
従来のオンプレミスDWHでは、データの保管と処理を同じサーバーが担っていました。データが増えれば保管も処理も同時に増強する必要があり、コストが急増しました。Snowflakeはこの2つを独立したレイヤーとして設計することで、「大量データを安く保管しながら、処理は必要なときだけ強力に」を実現しています。
この分離の仕組みは3層アーキテクチャとして整理されます。
| レイヤー | 役割 | Snowflakeの実装 |
|---|
| ストレージ層 | データを保管する | S3/Azure Blob/GCS上に列指向形式で保存 |
| コンピュート層 | クエリを処理する | 仮想ウェアハウス(Virtual Warehouse) |
| クラウドサービス層 | メタデータ・認証・最適化 | Snowflakeが完全管理 |
仮想ウェアハウス:計算リソースを用途ごとに分離する

Snowflake独自の概念として最も重要なのが仮想ウェアハウス(Virtual Warehouse、VW)です。
仮想ウェアハウスとは、クエリを実行するための計算リソースのまとまりです。XS(最小)から6XL(最大)まで複数のサイズが用意されており、1段階上げるごとに消費クレジットが倍になり、並列処理能力も増します。
XS = 1クレジット/時間(最小、軽いクエリ向け)
S = 2クレジット/時間
M = 4クレジット/時間
L = 8クレジット/時間
XL = 16クレジット/時間
...(1段階ごとに倍増。大規模バッチには上位サイズを使う)
VWの最大の特徴は複数を同時に起動できることです。たとえば「データエンジニアが変換処理を走らせるVW」と「BI担当者がダッシュボードのクエリを実行するVW」を別々に立てると、互いのクエリが影響し合いません。部門ごとに別VWを割り当てることで、コスト配賦も簡単です。
クエリを実行していない間はVWを停止(suspend)でき、その間は課金されません。「平日9〜18時だけ起動、それ以外は停止」といった自動スケジュールも設定可能です。
Evastの現場では、開発用VW(XS)と本番バッチ用VW(M〜L)を別々に立て、開発中のクエリが本番パイプラインに影響しない構成にしています。
Snowflakeの主要機能

Time Travel:過去のデータにさかのぼれる
SnowflakeのTime Travelは、過去最大90日間(Enterprise以上)のデータの状態を参照できる機能です。
-- 1時間前のテーブルの状態を参照
SELECT * FROM orders AT (OFFSET => -3600);
-- 特定のクエリIDが実行される前の状態を参照
SELECT * FROM orders BEFORE (STATEMENT => 'your-query-id');
「誰かが誤ってテーブルを削除した」「昨日までは正しかった集計が今日おかしい」。こうしたインシデントをSQLだけで復旧できます。復旧にバックアップリストアの手間が不要なため、データエンジニアにとって非常に価値の高い機能です。
Secure Data Sharing:データをコピーせず共有する
Secure Data Sharingは、Snowflakeの独自機能の中で特に評価が高いものです。データの物理的なコピーを作らずに、他のSnowflakeアカウントへリアルタイムのアクセス権を付与できます。
活用シーン:
- グループ会社間で分析基盤を共有
- サプライヤーへの在庫・発注データのリアルタイム共有
- Snowflake Marketplaceで外部の市場データ・気象データを購入して取り込む
データコピーが発生しないため、共有された側は常に最新データにアクセスでき、ストレージコストの二重払いもありません。
マルチクラウド:AWS・Azure・GCPすべてに対応
SnowflakeはAWS・Azure・GCPすべてのクラウド上で動作します。同じSnowflakeアカウントで複数クラウドのデータを扱うこともできるため、「AWSにあるアプリのデータとGCPにあるBigQueryのデータを統合したい」という複雑な要件にも対応できます。
BigQueryが「GCPのみ」であるのと対照的で、既存インフラが複数クラウドにまたがっている場合の選択肢としてSnowflakeが有力になります。
Snowpark:Python・Java・Scalaでデータ処理を書く
Snowparkは、Python・Java・ScalaのコードをSnowflakeの計算リソース上で実行できる機能です。SQLだけでは表現しにくい機械学習の前処理や複雑な変換ロジックを、PythonのDataFrame APIで記述してSnowflake上で実行できます。
料金体系:クレジット課金の仕組み

Snowflakeの課金はストレージ課金とコンピュート課金(クレジット)の2本立てです。
ストレージ課金
データの保管量に応じた月次課金です。圧縮後のデータサイズが基準になるため、実際の課金対象は元データより小さくなります。単価はリージョンや契約形態(オンデマンド/年間契約)によって変わり、年間契約のほうが安くなります。最新の単価はSnowflakeの公式料金ページで確認してください。
コンピュート課金(クレジット)
仮想ウェアハウスの稼働時間に応じた課金です。最初の起動時に最低60秒分が課金され、それ以降は1秒単位で課金されます。
クレジットの単価は、エディション(Standard/Enterpriseなど上位ほど高い)・クラウド・リージョンによって変わります。具体的な金額はSnowflakeの公式料金ページで確認するのが確実です。
仕組みとしては、XSのVWを1時間動かすと1クレジット、Lサイズ(8クレジット/時間)なら8倍、という形で消費量が決まります。サイズの大きいVWを止め忘れて常時起動すると月額コストが一気に膨らむため、自動停止(後述)の設定は必須です。
エディションの違い
| エディション | Time Travel | データマスキング | 向いている用途 |
|---|
| Standard | 1日 | なし | PoC・スモールスタート |
| Enterprise | 90日 | ○ | 本番運用・コンプライアンス要件あり |
| Business Critical | 90日 | ○ | 金融・医療・高セキュリティ要件 |
Evastの新規プロジェクトでは、まずStandardでPoC(試験導入)→本番はEnterpriseという進め方が多いです。Enterpriseでないとダイナミックデータマスキング(参照する人の権限に応じて、個人情報などを自動的に伏せ字表示する機能)や90日Time Travelが使えないため、個人情報を扱う場合はEnterpriseが事実上必須になります。
dbt + Snowflakeのモダンデータスタック構成

Snowflakeはdbtとの相性が非常に良く、Fivetran/trocco(データ転送)+ Snowflake(DWH)+ dbt(変換)+ BI(可視化)という4層構成がモダンデータスタックの定番になっています。
この構成のデータの流れ:
- Fivetran/trocco がSalesforce・Google Analytics・基幹システムからデータを抽出してSnowflakeのraw層に投入(データ転送ツールの比較はデータ連携ツールの選び方:コスト・サポート・コネクタ数で比較を参照)
- dbt がSnowflake内でSQLを使い、生データ(raw)→中間整形(staging)→分析用テーブル(mart)の順に変換を実行
- BI(Tableau・Looker・Power BI等) がmart層のテーブルを参照してダッシュボードを構築
SnowflakeのVW分離機能を活用すると、「dbtの変換VW」「BIのクエリVW」「データエンジニアの探索VW」を別々に管理でき、コスト配賦と性能分離が同時に実現できます。
dbtの基本的な仕組みについてはdbtとは?SQLでデータ変換を行うツールの基本と導入メリットで解説しています。
BigQueryとの違い:どちらを選ぶか
SnowflakeとBigQueryはどちらもクラウドDWHの主流ですが、設計思想が異なります。
Snowflakeが向くケース:
- マルチクラウド環境(AWS・Azureをメインで使っている)
- 複数チームが並列でクエリを実行し、コストを部門別に管理したい
- データ共有(社外・グループ会社)を活用したい
BigQueryが向くケース:
- GCPをメインで使っている
- インフラ管理ゼロのサーバーレス(サーバーの構築・運用を意識せず、使った分だけ課金される方式)で始めたい
- クエリ頻度が低くスモールスタートしたい
7軸での詳細比較はSnowflakeとBigQuery比較:コスト・性能・機能の違いと選び方で整理しています。
まとめ
Snowflakeを一言で表すなら「コンピュートを柔軟に分離できるマルチクラウドDWH」です。
仮想ウェアハウスによる計算リソースの独立管理、Time Travelによる安全な運用、Secure Data Sharingによる組織間連携。これらを組み合わせることで、単なる「データを溜める場所」を超えた基盤になります。SnowflakeをDWHとして据えたデータ基盤全体の構成要素や導入効果は、データ基盤とは?企業が導入すべき3つの理由と構成要素を解説で整理しています。
導入前に確認すべき点は3つです。
- エディション選択:個人情報・機密データを扱うならEnterprise以上が必要
- VW自動停止の設定:設定しないと開発用VWが常時起動でコストが膨らむ
- 既存インフラとの相性:AWSメインならSnowflake、GCPメインならBigQueryが自然な選択
DWHの基本概念についてはDWH(データウェアハウス)とは?データレイクとの違いと選び方も合わせてご覧ください。
データ基盤構築のご相談はEvastへ
Snowflakeのエディション選定やコスト試算といった導入前の検討から、PoC設計・本番構築・dbt連携・BIダッシュボード開発まで一貫して支援します。
- 「Snowflakeの料金体系を理解してコスト試算したい」
- 「BigQueryとSnowflakeのどちらが自社に合うか判断したい」
- 「dbt + Snowflakeのモダンデータスタックを構築したい」
→ データ基盤構築サービスを見る → 無料相談を申し込む