本文へスキップ
統計ロードマップ
Textbook

Snowflake SnowPro Core 教科書

**Snowflake SnowPro Core Certification(COF-C02)** は、**Snowflake** が提供するクラウドデータプラットフォーム認定の **エントリーレベル**。**マルチクラウド対応 ・ ストレージとコンピュートの分離 ・ セキュアデータシェアリング** で世界中の企業に採用されている Snowflake の **アーキテクチャ ・ 基本機能 ・ SQL ・ パフォーマンス ・ セキュリティ** を測ります。**データエンジニア ・ DWH 担当 ・ アナリティクスエンジニア** が想定対象。本教科書は出題範囲を 10 章で体系的にカバーします。

目次

  1. 1 章 · SnowPro Core ─ 試験の全体像
    試験形式・出題範囲・他 Snowflake 認定との位置付けを整理します。
  2. 2 章 · Snowflake のアーキテクチャ
    ストレージ / コンピュート / クラウドサービス層の 3 層構造を整理します。
  3. 3 章 · Snowflake のオブジェクト階層
    Account / Database / Schema / Table の階層を整理します。
  4. 4 章 · データロードとアンロード
    COPY コマンド ・ Snowpipe ・ ファイル形式を整理します。
  5. 5 章 · SQL とデータ変換
    Snowflake SQL ・ 半構造化データ ・ Stored Procedure ・ Snowpark を整理します。
  6. 6 章 · パフォーマンスとコスト最適化
    クラスタリング ・ キャッシュ ・ Resource Monitor を整理します。
  7. 7 章 · Time Travel ・ Cloning ・ Data Sharing
    Snowflake の独自機能を整理します。
  8. 8 章 · セキュリティとガバナンス
    ロール ・ 認証 ・ 暗号化 ・ ガバナンス機能を整理します。
  9. 9 章 · Snowpark と Cortex AI
    Snowflake のプログラミング ・ AI 統合機能を整理します。
  10. 10 章 · 受験対策の総まとめ
    範囲別チェックリストと試験当日の戦略を整理します。
Chapter 1

1 章 · SnowPro Core ─ 試験の全体像


§1.1

試験の位置付け

SnowPro Core(COF-C02) は Snowflake 認定の コア(基礎)レベル。すべての Snowflake 認定の前提となる 登竜門 で、これ以上の Specialty / Advanced を取得する場合は SnowPro Core が必須前提となります。

  • 主催: Snowflake
  • 形式: オンライン監督受験(Pearson VUE)or テストセンター
  • 問題数 / 時間: 100 問 / 115 分
  • 回答方式: 多肢選択 + 複数選択
  • 合格スコア: 750 / 1000
  • 有効期限: 2 年(再認定が必要)
  • 受験料: 175 USD(参考)
  • 前提知識: SQL の基礎 + データベースの基本概念

Snowflake 認定の階層

  • SnowPro Associate(Associate Architect / Platform / Solutions Provider): 入門の上位
  • SnowPro Core(本資格): 基礎
  • SnowPro Specialty: Data Engineer / Data Analyst / Data Scientist / Architect / Administrator
  • SnowPro Advanced: Data Engineer / Architect / Administrator / Data Analyst / Data Scientist
§1.2

出題ドメインと推奨学習プラン

出題ドメイン(公式試験ガイド)

  1. Domain 1: Snowflake AI Data Cloud Features and Architecture(25%): Account ・ Cloud ・ アーキテクチャ
  2. Domain 2: Account Access and Security(20%): Role ・ ユーザ ・ ネットワーク ・ 暗号化
  3. Domain 3: Performance Concepts(15%): クラスタリング ・ キャッシュ ・ Search Optimization
  4. Domain 4: Data Loading and Unloading(10%): COPY / Snowpipe / Data Engineering Pipeline
  5. Domain 5: Data Transformations(20%): SQL / Stored Procedure / UDF / Snowpark
  6. Domain 6: Data Protection and Data Sharing(10%): Time Travel / Fail-safe / Cloning / Sharing

60 〜 100 時間プラン

  1. Week 1: アーキテクチャ + 主要オブジェクト(本教科書 第 2 〜 3 章)
  2. Week 2: SQL + データロード(第 4 〜 5 章)
  3. Week 3: パフォーマンス + コスト(第 6 章)
  4. Week 4: Time Travel + データシェアリング(第 7 章)
  5. Week 5: セキュリティ + ガバナンス(第 8 章)
  6. Week 6: 模擬試験 + 過去問
Snowflake トライアル + Hands-on Lab が王道

Snowflake 30 日トライアル(400 USD クレジット)で実機演習が可能。Snowflake University に SnowPro Core 専用ラーニングパスが無料公開されています。実機で TPC-H サンプル を触りながら本教科書を進めるのが最短ルート。

Chapter 2

2 章 · Snowflake のアーキテクチャ


§2.1

3 層アーキテクチャ

Snowflake の最大の特徴は ストレージとコンピュートの完全分離 + 共有データアーキテクチャ。これにより 同じデータに対して複数の独立したコンピュートが並列にアクセス でき、競合せずスケールアウトできます。

Snowflake の 3 層

1. Database Storage: マイクロパーティション化された圧縮済 ・ 列指向ストレージ。S3 / Azure Blob / GCS にホスト。ユーザは直接アクセス不可

2. Query Processing(Virtual Warehouse): 計算層。X-Small 〜 6X-Large のサイズ。複数並列起動可能。

3. Cloud Services: メタデータ ・ 認証 ・ クエリ最適化 ・ アクセス制御 ・ Time Travel などを担う管理層。

§2.2

Virtual Warehouse

  • T-Shirt サイズ: XS(1 ノード)→ 6XL(512 ノード)
  • Auto-suspend: 一定時間アイドルで自動停止(コスト削減)
  • Auto-resume: クエリ実行時に自動再開
  • Multi-cluster Warehouse: 同時実行クエリ多数で自動スケールアウト
  • Standard Edition: シングルクラスタ
  • Enterprise+ Edition: マルチクラスタ可能
  • Resource Monitor: クレジット使用量の監視 ・ 制限
  • Per-second billing: 起動から 60 秒最低 + 1 秒単位課金
§2.3

マルチクラウド対応

  • サポートクラウド: AWS / Azure / GCP
  • リージョン: 各クラウドの主要リージョン
  • Cross-Region Replication: リージョン間レプリケーション
  • Cross-Cloud Replication: クラウド間レプリケーション
  • Snowgrid: マルチクラウド ・ マルチリージョンの統合管理
  • External Stages: S3 / Azure Blob / GCS への参照
Chapter 3

3 章 · Snowflake のオブジェクト階層


§3.1

オブジェクトの階層

  • Organization: 複数 Account の統括
  • Account: テナント単位、URL: `https://<account>.<region>.snowflakecomputing.com`
  • Database: 論理的なデータの集合
  • Schema: Database 内の論理グループ
  • Table / View / Stage / Stream / Task / Function / Procedure: スキーマ内オブジェクト
§3.2

テーブルの種類

  • Permanent: 標準テーブル、Time Travel + Fail-safe あり
  • Transient: Fail-safe なし、Time Travel あり(0 〜 1 日)
  • Temporary: セッション内のみ、Fail-safe / Time Travel なし
  • External: S3 / Azure Blob / GCS のファイルを参照(Snowflake 外保管)
  • Iceberg Tables: Apache Iceberg 形式での外部 ・ Snowflake 管理
  • Hybrid Tables(Unistore): トランザクション + 分析の両立
  • Dynamic Tables: マテリアライズドビュー進化版
§3.3

View ・ Stage ・ Stream ・ Task

  • View: 仮想テーブル(SELECT 定義)
  • Materialized View: 実体化、自動更新、Enterprise+ Edition
  • Secure View / Secure Materialized View: 定義非公開
  • Stage: ファイルの一時置き場(Internal / External)
  • Stream: テーブルの変更追跡(CDC)
  • Task: SQL の定期実行(クロン式)
  • Pipe(Snowpipe): ファイル到着でストリーミングロード
Chapter 4

4 章 · データロードとアンロード


§4.1

ファイル形式とステージ

  • サポート形式: CSV / TSV / JSON / Avro / Parquet / ORC / XML
  • File Format オブジェクト: 形式定義の再利用
  • Internal Stage: User / Table / Named
  • External Stage: S3 / Azure Blob / GCS への参照
  • Stage 暗号化: AWS_SSE / KMS / Customer-Managed Key
  • PUT / GET コマンド: SnowSQL 経由でローカル ⇔ Internal Stage
§4.2

COPY コマンドと一括ロード

COPY INTO の例
-- ファイル形式作成
CREATE FILE FORMAT csv_format
  TYPE = 'CSV'
  FIELD_DELIMITER = ','
  SKIP_HEADER = 1
  NULL_IF = ('NULL', '');

-- 外部ステージ作成
CREATE STAGE my_s3_stage
  URL = 's3://my-bucket/data/'
  CREDENTIALS = (AWS_KEY_ID = 'xxx' AWS_SECRET_KEY = 'yyy')
  FILE_FORMAT = csv_format;

-- ロード
COPY INTO sales_table
FROM @my_s3_stage
PATTERN = '.*\.csv'
ON_ERROR = 'CONTINUE';
  • ON_ERROR: CONTINUE / SKIP_FILE / ABORT_STATEMENT
  • VALIDATION_MODE: ロード前検証
  • FORCE = TRUE: 既ロード済ファイルも再ロード
  • PATTERN: 正規表現でファイル選択
  • 並列度: ファイルを 100 〜 250 MB に分割すると最適
§4.3

Snowpipe(継続的ロード)

Snowpipe はファイルが Stage に到着したら自動でロードする継続的取込み機能。バッチ COPY の代替として 数分以内のリアルタイム性 を実現します。

  • Auto-Ingest: S3 SQS / EventGrid 通知で自動起動
  • REST API: 明示的なファイル通知
  • Snowpipe Streaming(Kafka 統合): ms 級のストリーミング
  • Per-file 課金: ロードファイル数で課金
  • Snowpark Python API: コードからのロード制御
Chapter 5

5 章 · SQL とデータ変換


§5.1

Snowflake SQL の特徴

  • ANSI SQL 準拠 + 独自拡張
  • JOIN: INNER / LEFT / RIGHT / FULL OUTER / CROSS / LATERAL / ASOF
  • ウィンドウ関数: ROW_NUMBER / RANK / LAG / LEAD / NTILE
  • CTE / 再帰 CTE: WITH RECURSIVE
  • QUALIFY: ウィンドウ関数の結果でフィルタ
  • COPY GRANTS: 権限の引継ぎ
  • ZEROIFNULL / NULLIFZERO / NVL / COALESCE
  • TRY_CAST: 失敗時 NULL を返す型変換
§5.2

半構造化データ(VARIANT)

VARIANT 型は JSON / Avro / XML を そのまま格納 → SQL でクエリ できる Snowflake の独自型。スキーマ進化に強く、データレイク的な使い方が可能です。

VARIANT の例
-- JSON をそのまま格納
CREATE TABLE events (raw VARIANT);

INSERT INTO events SELECT PARSE_JSON('{"user": "alice", "action": "click", "item": {"id": 42}}');

-- ドット記法 + コロン記法でアクセス
SELECT
  raw:user::STRING AS user,
  raw:action::STRING AS action,
  raw:item.id::NUMBER AS item_id
FROM events;
  • FLATTEN: 配列を行に展開
  • OBJECT_CONSTRUCT / ARRAY_CONSTRUCT: JSON 構築
  • LATERAL FLATTEN: クロス結合的に展開
  • Schema Detection: VARIANT から論理スキーマを推論
  • INFER_SCHEMA: Parquet / Avro からのスキーマ推論
§5.3

Stored Procedure ・ UDF ・ Snowpark

  • Stored Procedure: JavaScript / Python / Scala / SQL で記述
  • UDF(User Defined Function): SQL / JavaScript / Python / Java / Scala
  • External Function: AWS Lambda / Azure Function / GCP Cloud Function を呼出
  • Snowpark: Python / Java / Scala API、DataFrame 風で SQL 生成
  • Snowpark ML: 特徴量エンジニアリング ・ ML モデル構築
  • Cortex AI: SQL から LLM(Llama / Claude / Mistral)を呼出
  • Cortex Search: ベクトル検索
Chapter 6

6 章 · パフォーマンスとコスト最適化


§6.1

マイクロパーティションとクラスタリング

  • Micro-partition: Snowflake が自動的に作る圧縮済 ・ 列指向の単位(50 〜 500 MB)
  • Pruning: クエリのフィルタ条件でマイクロパーティションを除外、I/O 削減
  • Cluster Key: 並べ替えのヒント。大規模テーブルで自動最適化
  • Automatic Clustering: バックグラウンドで再クラスタリング(Enterprise+)
  • SYSTEM$CLUSTERING_INFORMATION: クラスタ品質の確認
§6.2

3 種のキャッシュ

Snowflake のキャッシュ階層

1. Result Cache(クエリ結果): クラウドサービス層に保存、24 時間有効、データ不変なら同じクエリで即返答

2. Local Disk Cache(SSD): Warehouse の SSD にデータをキャッシュ、Warehouse 再起動で消える

3. Remote Disk(マイクロパーティション): 元の永続ストレージ

クエリは Result → Local SSD → Remote の順で確認される。

§6.3

Search Optimization と Query Acceleration

  • Search Optimization Service: 等価検索 ・ サブストリング検索の高速化(Enterprise+)
  • Query Acceleration Service: 一時的に追加の計算リソースを動的に付与
  • Materialized View: 集計結果の事前計算 + 自動更新
  • Result Reuse: 同一クエリの結果を再利用
  • Data Sampling: TABLESAMPLE で確率的サンプリング
  • EXPLAIN: クエリプランの確認
  • Query Profile: 実行詳細の可視化(UI)
Chapter 7

7 章 · Time Travel ・ Cloning ・ Data Sharing


§7.1

Time Travel と Fail-safe

データ保護の 2 段階

Time Travel: 過去の状態にクエリ ・ 復元できる期間。Standard Edition では 1 日、Enterprise+ で最大 90 日。誤削除 ・ 誤更新からの復旧。

Fail-safe: Time Travel が切れた後の 追加 7 日間 の隠れバックアップ(Snowflake サポート経由でのみ復元可)。Permanent テーブルのみ。

Time Travel の例
-- 1 時間前の状態をクエリ
SELECT * FROM sales
  AT(OFFSET => -3600);

-- 特定タイムスタンプの状態
SELECT * FROM sales
  AT(TIMESTAMP => '2025-04-01 09:00:00'::TIMESTAMP);

-- 特定クエリ実行直前の状態
SELECT * FROM sales
  BEFORE(STATEMENT => '8e5d0ca9-005e-44e6-b858-a8f5b37c5726');

-- テーブルを 1 日前の状態に復元
UNDROP TABLE sales;
§7.2

Zero-Copy Cloning

Zero-Copy Cloning はテーブル ・ Schema ・ Database を メタデータ操作だけで瞬時に複製 する機能。実データはコピーせず参照を共有し、変更があった部分のみ新規データとして書き込まれます(コピーオンライト)。

  • 用途: dev / test 環境の作成、本番データのスナップショット、A/B 試験
  • コスト: クローン時点ではほぼゼロ(変更分のみ課金)
  • Database / Schema / Table の単位でクローン可能
  • `CREATE TABLE my_test CLONE prod.sales;` のような構文
§7.3

Data Sharing と Marketplace

  • Secure Data Sharing: 別 Account へデータをコピーせず安全に共有
  • Reader Account: Snowflake 未契約の取引先にも提供可能
  • Snowflake Marketplace: 公開データセット ・ サードパーティデータの売買
  • Snowflake Native Apps: アプリ自体を Snowflake 上で配布
  • Data Clean Room: 複数組織間で個別データを開示せず分析
  • Listings: 共有の単位
  • Cross-region / Cross-cloud Sharing: リージョン ・ クラウドを超えた共有
Chapter 8

8 章 · セキュリティとガバナンス


§8.1

RBAC と Role 階層

Snowflake は RBAC(Role-Based Access Control) が基本。ユーザ → ロール → オブジェクトへの権限 の 3 段階で、ロールの 継承(Role Hierarchy) が可能。

システム定義ロール

  • ACCOUNTADMIN: 最上位、全権限。日常使用は推奨されない
  • SECURITYADMIN: Role / User 管理
  • USERADMIN: User / Role 作成
  • SYSADMIN: 一般オブジェクト作成 ・ 管理
  • PUBLIC: デフォルトロール、最小権限
  • ORGADMIN: 組織レベルの管理
§8.2

認証とネットワーク

  • MFA(多要素認証): 必須化推奨
  • SSO(SAML / OAuth): Okta / Azure AD / Ping
  • SCIM: ユーザ ・ グループの自動同期
  • Key-pair Authentication: パスワードレス API 認証
  • OAuth: 外部システム統合
  • Network Policies: IP allowlist / blocklist
  • Private Connectivity: AWS PrivateLink / Azure Private Link / GCP Private Service Connect
  • Tri-Secret Secure: 顧客 + Snowflake + クラウドの 3 鍵による暗号化
§8.3

データガバナンス機能

  • Row Access Policy(RLS): 行レベルセキュリティ
  • Dynamic Data Masking: 列レベルマスキング(動的)
  • External Tokenization: 外部トークン化サービスとの連携
  • Tag: メタデータのタグ付け
  • Object Tagging + Policy Assignment: タグでポリシー一括管理
  • Access History: 監査ログ
  • Login History: ログイン履歴
  • Snowflake Horizon: 統合ガバナンス機能
Chapter 9

9 章 · Snowpark と Cortex AI


§9.1

Snowpark

  • Snowpark API: Python / Java / Scala で DataFrame 風の API
  • Snowpark Python: pandas 風のコード → SQL 自動変換
  • UDF / Stored Procedure を Python で
  • Snowpark Container Services: Snowflake 上でコンテナ実行
  • Snowpark ML: 機械学習 API
  • External Network Access: Snowflake から外部 API 呼出
  • Native Apps: Snowflake 上で配布可能なアプリ
§9.2

Cortex AI

  • Cortex LLM Functions: SQL から `COMPLETE / SUMMARIZE / TRANSLATE / SENTIMENT / EXTRACT_ANSWER` などの LLM 関数
  • Cortex Search: ベクトル + キーワードのハイブリッド検索
  • Cortex Analyst: 自然言語からの SQL 生成 + 質問応答
  • Cortex Agents: タスク実行エージェント
  • Document AI: PDF からの情報抽出
  • Snowflake Copilot: SQL コーディング AI アシスタント
  • サポート LLM: Llama 3 / Mistral / Snowflake Arctic / Claude(参考)
§9.3

他システム統合

  • Connectors / Drivers: JDBC / ODBC / Python / Spark
  • dbt / Fivetran / Stitch: ELT パートナー
  • Tableau / Power BI / Looker: BI 連携
  • Apache Iceberg: オープンテーブル形式での相互運用
  • Streamlit in Snowflake: アプリ開発 UI
  • Snowflake Notebooks: Jupyter 風のノートブック
Chapter 10

10 章 · 受験対策の総まとめ


§10.1

範囲別チェックリスト

  1. 第 2 章: 3 層アーキテクチャ / Virtual Warehouse / マルチクラウド
  2. 第 3 章: テーブル種別 4 種(Permanent/Transient/Temporary/External)/ Stream / Task
  3. 第 4 章: COPY / Snowpipe / File Format / Internal vs External Stage
  4. 第 5 章: VARIANT / FLATTEN / Snowpark / Cortex AI
  5. 第 6 章: マイクロパーティション / 3 種キャッシュ / Search Optimization
  6. 第 7 章: Time Travel(Standard 1 日 / Enterprise+ 90 日)/ Fail-safe(7 日)/ Zero-Copy Cloning / Data Sharing
  7. 第 8 章: RBAC / システム定義ロール 6 種 / Network Policies / RLS / Dynamic Data Masking
  8. 第 9 章: Snowpark / Cortex LLM Functions / Snowflake Copilot

試験当日のコツ

  • 100 問 / 115 分 = 1 問 約 70 秒、スピード勝負
  • Edition 別の機能差: Standard / Enterprise+ / Business Critical / VPS で機能差あり
  • Time Travel の期間: Standard 1 日、Enterprise+ で最大 90 日
  • Fail-safe の 7 日間 + Permanent のみ
  • Marketplace: Free / Paid / Personalized
  • Snowflake University の練習問題 を必ず受ける
§10.2

次のステップ

SnowPro Core 合格 → SnowPro Specialty(Data Engineer / Data Analyst / Data Scientist / Architect / Administrator) が次のステップ。クラウドに関する知識を加えるなら本サイトの[AWS SAA](/certs/aws-saa) ・ [Azure AI-900](/certs/azure-ai-900)も。

SnowPro Core のキャリア活用

Snowflake は 金融 ・ 小売 ・ メディア ・ ヘルスケア など幅広い業界で採用が拡大中。データエンジニア ・ アナリティクスエンジニア ・ データプラットフォーム担当 で評価が高く、dbt + Snowflake 案件が特に多い。本サイトの[DB スペシャリスト](/certs/db-specialist)と組合せると、伝統的 DB + モダンデータ基盤の両軸で強みになります。