Snowflake

SnowPro Advanced: Data Engineer

2026-03-26
更新: 2026-03-27
NicheeLab編集部

SnowPro Advanced: Data Engineer Certificationは、Snowflake上でのデータパイプライン構築・最適化・運用管理に関する高度な知識を証明する試験です。 Streams/Tasks/Snowpipe/Dynamic Tables/Semi-structured Dataなど、データエンジニアリングの実務に直結するトピックが中心です。 本記事では試験概要、出題ドメイン、各トピックの学習ポイント、合格戦略を解説します。

試験概要

項目詳細
問題数65問(単一選択・複数選択)
試験時間115分
合格ライン750点 / 1000点満点
受験料$375 USD
前提条件SnowPro Core認定(有効期間内)
受験方法Pearson VUE(テストセンター or オンライン)
認定有効期間2年間
推奨経験Snowflakeでのデータエンジニアリング実務2年以上

出題ドメインと配点

ドメイン配点主要トピック
1. Data Movement25%COPY INTO、Snowpipe、Snowpipe Streaming、External Tables、Data Sharing
2. Data Pipeline & Transformation25%Streams、Tasks、Dynamic Tables、ストアドプロシージャ、UDF/UDTF
3. Performance & Optimization20%クラスタリングキー、マテリアライズドビュー、検索最適化、クエリプロファイル
4. Storage & Data Protection20%マイクロパーティション、Time Travel、Fail-safe、Zero-Copy Clone、データ暗号化
5. Semi-structured Data10%VARIANT型、FLATTEN、LATERAL JOIN、PARSE_JSON、INFER_SCHEMA

Streams & Tasks

StreamsはSnowflakeのChange Data Capture(CDC)機能で、テーブルに対するINSERT/UPDATE/DELETE操作を追跡します。 Tasksと組み合わせることで、スケジュールベースのデータパイプラインを構築できます。

Streamの種類追跡対象用途
StandardINSERT / UPDATE / DELETE一般的なCDC
Append-onlyINSERTのみ追加専用テーブル(ログ・イベント)
Insert-only(External Tables用)新規ファイル追加External Tableの新ファイル検出

Tasksはスケジュール(CRON式 or 分単位)またはStreamのデータ有無(SYSTEM$STREAM_HAS_DATA)をトリガーにSQLを実行します。 タスクツリーとして親子関係を定義し、DAG(有向非巡回グラフ)形式のパイプラインを構成できます。

Snowpipe & Snowpipe Streaming

Snowpipeはステージ上のファイル到着を検知して自動的にCOPY INTOを実行するサーバーレスのデータ取り込み機能です。

  • Auto-ingest Snowpipe:クラウドイベント通知(AWS SQS / Azure Event Grid / GCS Pub/Sub)をトリガーに自動取り込み
  • REST API Snowpipe:insertFiles REST APIを呼び出して手動トリガー
  • Snowpipe Streaming:Snowflake Ingest SDKを使ったロー・レベルのストリーミング取り込み(ファイル不要・低レイテンシ)
比較項目Auto-ingest SnowpipeSnowpipe Streaming
トリガーファイル到着イベントSDK API呼び出し
レイテンシ1〜数分数秒
ファイル必要性必要(Stage上のファイル)不要(行単位で挿入)
課金モデルサーバーレスクレジットサーバーレスクレジット

Dynamic Tables

Dynamic TablesはSnowflakeで宣言的にデータパイプラインを定義する機能です。 ターゲットテーブルをSQLクエリで定義すると、ソースデータの変更に応じて自動的に更新されます。

  • TARGET_LAGパラメータで更新頻度を制御(例: 1 MINUTE / 1 HOUR / DOWNSTREAM)
  • DOWNSTREAMを指定すると、下流のDynamic Tableのラグに合わせて更新
  • 複数のDynamic Tablesを連鎖させてメダリオンアーキテクチャ(Bronze → Silver → Gold)を構築可能
  • Streams + Tasksと比較して、パイプラインの定義・保守がシンプル

Semi-structured Data

SnowflakeはJSON・XML・Avro・Parquet・ORCなどの半構造化データをVARIANT型で格納し、SQLでクエリできます。

  • 格納:VARIANT / OBJECT / ARRAY 型にPARSE_JSONで変換して格納
  • アクセス:ドット記法(col:key)またはブラケット記法(col['key'])
  • 展開:FLATTEN関数 + LATERAL JOINでネスト配列を行に展開
  • スキーマ検出:INFER_SCHEMA関数でステージ上のファイルからスキーマを自動推定
  • 型変換:::演算子でVARIANT内の値を指定型にキャスト(例: col:price::NUMBER)

パフォーマンス最適化のポイント

手法適用条件効果
クラスタリングキー1TB以上のテーブル・特定カラムでの頻繁なフィルタプルーニング率の向上
マテリアライズドビュー頻繁に実行される集約クエリ事前計算結果の再利用
検索最適化サービス高カーディナリティカラムの等値検索ポイントルックアップの高速化
ウェアハウスサイジング大規模クエリのスキャン量が多い場合並列処理能力の向上

学習戦略

Data Engineer試験はCore以上に実践的な知識が問われるため、ハンズオンを重視した学習が必要です。

  • Streams + Tasksのパイプラインを実際に構築し、SYSTEM$STREAM_HAS_DATAの動作を確認する
  • Dynamic Tablesを作成してTARGET_LAGの挙動を検証する
  • Snowpipeの自動取り込みをS3イベント通知で設定し、パイプステータスを確認する
  • VARIANT型にJSONデータを格納し、FLATTEN + LATERAL JOINで展開するクエリを書く
  • クエリプロファイルでスピリング・プルーニング率を確認する方法を覚える

データ保護のポイント

  • Time Travel:Enterprise Editionで最大90日間の過去データ参照。UNDROP TABLE / SELECT ... AT(TIMESTAMP =>)構文で復元・参照
  • Fail-safe:Time Travel期間終了後7日間のSnowflake側バックアップ。ユーザーからはアクセス不可
  • Zero-Copy Clone:CREATE TABLE ... CLONE構文でメタデータのみコピー。ストレージコストは変更差分のみ発生
  • データ暗号化:AES-256による透過的暗号化。ユーザー操作不要で常時有効

問題で確認

SnowPro Advanced: Data Engineer

問題 1

ソーステーブルに対するINSERT操作のみを追跡し、UPDATE/DELETEの変更は無視したい場合、どのStreamタイプを使用すべきですか?

  1. Standard Stream
  2. Append-only Stream
  3. Insert-only Stream
  4. Delta Stream

正解: B

Append-only StreamはINSERT操作のみを追跡し、UPDATEやDELETEの変更は記録しません。ログテーブルやイベントテーブルなど、追加専用のワークロードに最適です。Standard Streamは全DML操作を追跡します。Insert-only StreamはExternal Tables専用です。Delta Streamという種類は存在しません。

よくある質問

SnowPro Advanced Data Engineer試験にはCore認定が必須ですか?

はい、SnowPro Core Certification(COF-C03)の有効な認定が受験の前提条件です。Core認定が失効している場合は先にCoreの再認定を取得する必要があります。Core合格後すぐにAdvancedを受験することも可能ですが、Coreの知識を基盤としつつStreams/Tasks/Snowpipe/Dynamic Tablesなどの深い理解が求められるため、追加で4〜8週間の学習期間を確保することが推奨されます。

Dynamic TablesとStreams + Tasksの使い分けはどのように出題されますか?

試験ではシナリオベースで「宣言的にパイプラインを定義したい場合はDynamic Tables」「CDCベースで細かい制御が必要な場合はStreams + Tasks」という判断が問われます。Dynamic Tablesはターゲットテーブルの定義をSQLで宣言するだけで自動的にデータ更新される簡潔さが利点です。一方、Streams + Tasksは変更データの中間処理やエラーハンドリングを細かく制御できる柔軟性があります。

半構造化データの出題範囲はどの程度ですか?

出題ドメインの約10%を占めます。VARIANT型へのJSON/XML格納、ドット記法・ブラケット記法によるアクセス、FLATTEN関数によるネスト配列の展開、LATERAL JOINとの組み合わせが頻出です。また、Parquet/ORC/Avroファイルのクエリ(SELECT $1 FROM @stage構文)やスキーマ検出(INFER_SCHEMA関数)も出題対象です。

この記事で学んだ内容を問題で確認しましょう

16,000問以上の問題で実力チェック

無料で問題を解いてみる
この記事の著者

NicheeLab編集部

データエンジニアリング・クラウド資格の専門家。Databricks・Snowflake等の認定資格を保有し、実務経験に基づいた問題作成・解説を行っています。NicheeLab運営。


関連記事
Snowflake

Snowflake資格一覧|全11試験(SnowPro)の難易度・費用

Snowflake認定資格(SnowPro)全11試験の一覧・難易度・費用・出題範囲を徹底解説。...

Snowflake

Snowflake試験の難易度ランキング|全11資格を徹底比較

Snowflake(SnowPro)認定全11試験の難易度をランキング形式で比較。学習時間・合格に必要なスキルから分析。...

Snowflake

Snowflake資格の勉強方法|効率的な学習ルートと合格のコツ

Snowflake認定資格(SnowPro)に最短で合格するための勉強方法。公式リソース・学習スケジュールを徹底ガイド。...

Snowflake

SnowPro Core試験完全解説|出題範囲・問題例・合格戦略

SnowPro Core Certification(COF-C03)を徹底解説。出題範囲・100問の試験形式・合格ライ...

Snowflake

SnowPro Platform Associate完全解説|入門試験の攻略

SnowPro Associate: Platform Certification(SOL-C01)を徹底解説。最も簡単...

Snowflakeの記事一覧 (102件)
© 2026 NicheeLab All rights reserved.