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 Movement | 25% | COPY INTO、Snowpipe、Snowpipe Streaming、External Tables、Data Sharing |
| 2. Data Pipeline & Transformation | 25% | Streams、Tasks、Dynamic Tables、ストアドプロシージャ、UDF/UDTF |
| 3. Performance & Optimization | 20% | クラスタリングキー、マテリアライズドビュー、検索最適化、クエリプロファイル |
| 4. Storage & Data Protection | 20% | マイクロパーティション、Time Travel、Fail-safe、Zero-Copy Clone、データ暗号化 |
| 5. Semi-structured Data | 10% | VARIANT型、FLATTEN、LATERAL JOIN、PARSE_JSON、INFER_SCHEMA |
StreamsはSnowflakeのChange Data Capture(CDC)機能で、テーブルに対するINSERT/UPDATE/DELETE操作を追跡します。 Tasksと組み合わせることで、スケジュールベースのデータパイプラインを構築できます。
| Streamの種類 | 追跡対象 | 用途 |
|---|---|---|
| Standard | INSERT / UPDATE / DELETE | 一般的なCDC |
| Append-only | INSERTのみ | 追加専用テーブル(ログ・イベント) |
| Insert-only(External Tables用) | 新規ファイル追加 | External Tableの新ファイル検出 |
Tasksはスケジュール(CRON式 or 分単位)またはStreamのデータ有無(SYSTEM$STREAM_HAS_DATA)をトリガーにSQLを実行します。 タスクツリーとして親子関係を定義し、DAG(有向非巡回グラフ)形式のパイプラインを構成できます。
Snowpipeはステージ上のファイル到着を検知して自動的にCOPY INTOを実行するサーバーレスのデータ取り込み機能です。
| 比較項目 | Auto-ingest Snowpipe | Snowpipe Streaming |
|---|---|---|
| トリガー | ファイル到着イベント | SDK API呼び出し |
| レイテンシ | 1〜数分 | 数秒 |
| ファイル必要性 | 必要(Stage上のファイル) | 不要(行単位で挿入) |
| 課金モデル | サーバーレスクレジット | サーバーレスクレジット |
Dynamic TablesはSnowflakeで宣言的にデータパイプラインを定義する機能です。 ターゲットテーブルをSQLクエリで定義すると、ソースデータの変更に応じて自動的に更新されます。
SnowflakeはJSON・XML・Avro・Parquet・ORCなどの半構造化データをVARIANT型で格納し、SQLでクエリできます。
| 手法 | 適用条件 | 効果 |
|---|---|---|
| クラスタリングキー | 1TB以上のテーブル・特定カラムでの頻繁なフィルタ | プルーニング率の向上 |
| マテリアライズドビュー | 頻繁に実行される集約クエリ | 事前計算結果の再利用 |
| 検索最適化サービス | 高カーディナリティカラムの等値検索 | ポイントルックアップの高速化 |
| ウェアハウスサイジング | 大規模クエリのスキャン量が多い場合 | 並列処理能力の向上 |
Data Engineer試験はCore以上に実践的な知識が問われるため、ハンズオンを重視した学習が必要です。
SnowPro Advanced: Data Engineer
問題 1
ソーステーブルに対するINSERT操作のみを追跡し、UPDATE/DELETEの変更は無視したい場合、どの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関数)も出題対象です。
NicheeLab編集部
データエンジニアリング・クラウド資格の専門家。Databricks・Snowflake等の認定資格を保有し、実務経験に基づいた問題作成・解説を行っています。NicheeLab運営。
Snowflake資格一覧|全11試験(SnowPro)の難易度・費用
Snowflake認定資格(SnowPro)全11試験の一覧・難易度・費用・出題範囲を徹底解説。...
Snowflake試験の難易度ランキング|全11資格を徹底比較
Snowflake(SnowPro)認定全11試験の難易度をランキング形式で比較。学習時間・合格に必要なスキルから分析。...
Snowflake資格の勉強方法|効率的な学習ルートと合格のコツ
Snowflake認定資格(SnowPro)に最短で合格するための勉強方法。公式リソース・学習スケジュールを徹底ガイド。...
SnowPro Core試験完全解説|出題範囲・問題例・合格戦略
SnowPro Core Certification(COF-C03)を徹底解説。出題範囲・100問の試験形式・合格ライ...
SnowPro Platform Associate完全解説|入門試験の攻略
SnowPro Associate: Platform Certification(SOL-C01)を徹底解説。最も簡単...