Instiq
第2章 · データの取り込みと変換·v2.0.0·更新 2026/6/16·読了目安 約9分

変更要約: DP-700 第2章を深掘り(図ja化・比較表/シナリオ/FAQ/ひっかけ/深掘り段落を全節に追加)

2.2データの変換(Spark・ノートブック・T-SQL)

この節の要点

Fabric でデータを変換する手段——Spark ノートブック(PySpark/Spark SQL)・データフロー Gen2T-SQL(Warehouse)と、メダリオンアーキテクチャ(ブロンズ/シルバー/ゴールド)による段階的な整形を理解します。

取り込んだ生データは整形・結合・集計して使える形にします。大規模/複雑なら Spark、SQL に慣れているなら T-SQL、ノーコードなら Dataflow を選びます。

2.2.1変換手段とメダリオン

変換手段(Spark ノートブック=PySpark/Spark SQL で大規模変換、データフロー Gen2=ノーコード、T-SQL=Warehouse でセット処理)を並べ、メダリオンアーキテクチャのブロンズ(生データ)→シルバー(クレンジング/結合)→ゴールド(集計/ビジネス向け)の段階的整形の流れを示した図。
変換手段とメダリオンアーキテクチャ
  • Spark ノートブックPySpark/Spark SQL で大規模・複雑な変換を行う(Lakehouse 中心)。
  • T-SQL(Warehouse)セットベースの SQL で変換する。SQL に慣れたチーム向き。
  • データフロー Gen2ノーコード(Power Query)で整形する。
  • メダリオンブロンズ(生)→シルバー(整形/結合)→ゴールド(集計/ビジネス向け)で段階的に品質を上げる。
試験ポイント

「大規模/複雑な変換=Spark ノートブック(PySpark)」「SQL でセット処理=T-SQL(Warehouse)」「ノーコード整形=データフロー Gen2」「段階的な品質向上=メダリオン(ブロンズ/シルバー/ゴールド)」 は DP-700 で頻出です。データは Delta テーブルとして OneLake に保存されます。

コツ

どの手段で変換しても、結果は Delta 形式で OneLake に保存され、SQL 分析エンドポイントや Power BI(Direct Lake)から参照できます。

変換手段は得意領域で選びます。Spark ノートブックPySparkSpark SQL・Scala/R)は大規模・複雑・機械学習向けで、Lakehouse の Delta テーブルに MERGE(アップサート)や パーティション 書き込みができます。T-SQL(Warehouse) はセットベースで、SQL に慣れたチームの ETL/ELT に向き、ストアドプロシージャ でロジックを再利用します。データフロー Gen2 は Power Query でノーコード整形(小〜中規模・市民開発者向け)。整形の設計は メダリオンアーキテクチャブロンズ(生データをそのまま)→シルバー(クレンジング・重複排除・結合・型統一)→ゴールド(集計・スタースキーマ等ビジネス向け) と段階化し、各層を Delta テーブルとして OneLake に保存します。これにより再処理が容易で、下流(Power BI の Direct Lake)から一貫して参照できます。Delta の利点(ACIDタイムトラベル・スキーマ進化)を活かし、増分は MERGE で取り込みます。「大規模/ML=Spark」「SQL の ELT=T-SQL」「ノーコード=Dataflow」「品質の段階化=メダリオン」を判断軸にします。

手段言語/UI向く用途
Spark ノートブックPySpark/Spark SQL/Scala/R大規模・複雑・ML
T-SQL(Warehouse)セットベース SQLSQL チームの ETL/ELT
データフロー Gen2Power Query(ノーコード)小〜中規模・市民開発
補足

シナリオ: 生ログを取り込み、重複排除・結合して、最後に部門別 KPI に集計して BI に出したい。→ メダリオンで設計:ブロンズに生ログを Delta 保存、シルバーで Spark(または T-SQL)でクレンジング/結合、ゴールドで集計テーブル化。各層は OneLake の Delta で、Power BI は Direct Lake でゴールドを高速参照します。

補足

FAQ: Q. メダリオンの各層は必須ですか? → A. 規定ではありませんが、ブロンズ/シルバー/ゴールドに分けると再処理・品質管理・下流の一貫性が向上する定番です。Q. Spark と T-SQL のどちらで変換すべき? → A. 大規模/複雑/ML は Spark、SQL に慣れたチームのセット処理は T-SQL。結果はどちらも OneLake の Delta です。

注意

ひっかけ: 「ゴールド層に生データをそのまま置く」は誤りです。生データはブロンズ、ゴールドは集計済み・ビジネス向け。また「変換手段ごとに保存形式が異なり相互参照できない」も誤り(どの手段でも結果は Deltaで OneLake に保存され横断参照できる)。

2.2.2この節のまとめ

  • 変換=Spark(大規模)/T-SQL(SQL)/Dataflow(ノーコード)
  • 整形の段階=ブロンズ→シルバー→ゴールド(メダリオン)

進捗の記録にはログインが必要です。

理解度チェック

(軽い確認用)

Q1. 大規模で複雑なデータ変換を PySpark で行いたい。Fabric で何を使いますか?

Q2. メダリオンアーキテクチャで「ビジネス向けに集計済み」の層はどれですか?

Q3. SQL に慣れたチームが Warehouse でセットベースの変換を行いたい。何を使いますか?

理解度を確認第2章「データの取り込みと変換」の問題を解く