はじめに:Snowflakeのテーブルって1種類じゃないの?
こんにちは!Snowflakeを触り始めた方が「CREATE TABLE って書けばテーブルが作れるんでしょ?」と思って公式ドキュメントを開くと、いきなり TEMPORARY や TRANSIENT という見慣れない単語が出てきて戸惑うことがあります。
実はSnowflakeには 通常(Permanent)テーブル・一時(Temporary)テーブル・トランジェント(Transient)テーブル の3種類があり、それぞれ「寿命」と「守られ方」と「コスト」が違います。この記事では、その違いを初心者向けにやさしく整理します!
3種類のテーブルをざっくり比較
まずは全体像をテーブルで見てみましょう。前提として、Snowflakeには「Time Travel(過去データを遡る機能)」と「フェイルセーフ(7日間の災害対策バックアップ)」という保護機能があります。これらの扱いがテーブル種類ごとに違うのがポイントです。
比較表
違いをひと目で確認しましょう。

① 通常テーブル(Permanent)— 一番きっちり守られる
何も指定せずに CREATE TABLE を書くと作られるのがこれ。本番のマスターデータや売上データなど、絶対に失いたくないデータを入れる用です。
-- ふつうに書けばPermanent
CREATE TABLE sales (
id INT,
amount NUMBER,
sold_at TIMESTAMP
);
過去データを遡れるTime Travelが最大90日(エディションによる)使え、さらにその後7日間のフェイルセーフでSnowflake側にも保護されます。安心な反面、その期間分のストレージ料金がかかります。
② 一時テーブル(Temporary)— セッションが終わると消える
一時テーブルは そのセッション(=ログインからログアウトまで)の間だけ存在するテーブルです。ワークシートを閉じたり接続を切ると自動で消えます。
-- TEMPORARYキーワードを付ける
CREATE TEMPORARY TABLE tmp_calc AS
SELECT customer_id, SUM(amount) AS total
FROM sales
GROUP BY customer_id;
用途は 分析の途中計算やETLの中間データ。フェイルセーフがなく、セッションごと消えるためストレージコストもほぼかかりません。注意点は、同名の通常テーブルがあってもセッション中は一時テーブルが優先されることです。
③ トランジェントテーブル(Transient)— 残るけど守りは薄い
トランジェントは「セッションを超えて残るけど、フェイルセーフは無し / Time Travelも最大1日」という中間的な存在です。
-- TRANSIENTキーワードを付ける
CREATE TRANSIENT TABLE staging_logs (
log_id INT,
payload VARIANT
);
「いつでも再生成できるけれど、毎回作り直すのは面倒」というデータに最適です。例えばステージング層のテーブルやログの加工テーブルなど、消えても元ファイルから作り直せるものですね。フェイルセーフがない分、ストレージコストが安く抑えられるのが大きな魅力です。
使い分けの目安
- 本番のマスター・売上・顧客データ → 通常テーブル
- クエリ中の中間結果・一時計算 → 一時テーブル
- 再生成可能な中間層・ログ加工 → トランジェントテーブル
コストを意識したい方は料金体系の記事もあわせてどうぞ。なお、フェイルセーフがあるかどうかはエディションでも挙動が変わるので、本番運用時はチェックしておきましょう。
まとめ
Snowflakeのテーブルは「永続性」と「保護の手厚さ」で3種類に分かれます。データの重要度と再生成のしやすさを天秤にかけて選ぶことで、安心とコスト削減のバランスがとれます。一時テーブルやトランジェントテーブルを上手に使えば、ストレージ料金を大きく節約できますよ!
参考リンク
- 一時テーブルとトランジェントテーブルの操作 | Snowflake Documentation
- CREATE TABLE | Snowflake Documentation
- 継続的なデータ保護の保存期間 | Snowflake Documentation
関連記事
- Snowflakeタイムトラベル入門|過去データを一発で復元する方法 – テーブル種類によって変わるTime Travel期間の詳しい解説。
- Snowflakeゼロコピークローン入門|データベースを一瞬で複製する魔法 – テーブルを丸ごと複製したいときに使える便利機能。
- Snowflakeのデータベース・スキーマ・テーブル階層を初心者向けに解説 – そもそもテーブルがどこに置かれるかをおさらい。
- Snowflakeの料金体系をやさしく解説|クレジット・ストレージ・転送量の仕組み – テーブル種類と関わるストレージコストの考え方。
- Snowflakeエディションの違いと選び方を初心者向けに解説 – Time Travelの最大日数はエディション次第。

