Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Microsoft Fabric ウェアハウスとレイクハウスの 役割の違いをまとめてみた(Wh...

Microsoft Fabric ウェアハウスとレイクハウスの 役割の違いをまとめてみた(When to Use Warehouse or Lakehouse in Microsoft Fabric? Summarizing the Key Differences)

Microsoft Data Analytics Day(Online) 勉強会にて発表します!
▽勉強会URL
https://sqlserver.connpass.com/event/357260/
▽アーカイブ(Youtube archive)
https://youtu.be/vrbC84JmdFg?si=1P0h9tPi7rBz1FlS

# 概要
Microsoft Fabric の中でも中核的な分析ストアである「Warehouse」と「Lakehouse」。どちらも OneLake 上に Delta 形式で保存されており、一見似た存在に見えるものの、実際にはユーザー体験や機能面において明確な違いがあります。
本記事では、以下のような観点から Warehouse と Lakehouse の役割や使い分けについて整理しました:
・利用できる言語(T-SQL / Spark / Pyspark etc..)と対象ユーザーの違い
・テーブル最適化やパフォーマンス関連機能の有無
・権限・セキュリティモデルの差異
・UI の違いや操作性の特徴
情報源が Fabric の公式ブログやドキュメントなど複数に分散している中で、ポイントを噛み砕いて1つにまとめた内容になっています。
「Fabric を使い始めたけど、Warehouse と Lakehouse の違いがまだピンと来ない」
そんな方にとって、現場視点での理解の助けになれば幸いです。

👉 Qiita元記事はこちら:https://qiita.com/ReijiOtake/items/e78691d0059558bdc444

(English Description)

In Microsoft Fabric, both Warehouse and Lakehouse serve as core analytical storage options, sharing the same foundation: Delta format on OneLake. At first glance, they may seem similar—but their user experiences and supported features reveal important differences.
This article organizes and clarifies the distinctions between Warehouse and Lakehouse across key perspectives, including:
・Supported languages (T-SQL / Spark / PySpark, etc.) and intended users
・Table optimization and performance-related capabilities
・Differences in security and permission models
・UI design and operational usability
While official documentation and blogs provide a wealth of information, it is often spread across multiple sources. This article distills those insights into a concise, practical summary.

If you're just getting started with Fabric and wondering,
"How exactly are Warehouse and Lakehouse different?"
this field-oriented guide may help connect the dots.

👉 Full article on Qiita:https://qiita.com/ReijiOtake/items/e78691d0059558bdc444

Transcript

  1. Fabric 初心者の悩み:WHとLHの違いがわからない • 「Warehouse と Lakehouse は何が違うの?」 • 「FabricにSQLDBやCosmos DBも来たけど何が違うの?」

    ウェアハウス New! 今回の記事:Microsoft Fabric ウェアハウスとレイクハウス役割の違いを理解する-公式で散らばっている情報をまとめてみた- レイクハウス イベントハウス ※Fabric のアイテムの アイコンではありません SQLDB Cosmos DB
  2. アイテム 概要 ウェアハウス 構造化データによるBI分析用途 T-SQL の INSERT/UPDATE/DELETE やストアドプロシージャが利用できる スキーマ/テーブル/列レベルのきめ細かな権限管理やRLS・データマスキングに対応 パフォーマンス最適化(OPTIMIZE等)や統計更新を自動で管理

    レイクハウス データの柔軟な貯蔵・加工やAI開発用途 構造化/半構造化データを一元的に保存・分析できる“データレイク+ウェアハウス融合基盤” Spark エンジンを用いた PySpark/SQL による大規模 ETL が得意 SQL エンドポイントを介した 読み取り専用 の T-SQL クエリも可能 イベントハウス ストリーミングデータや時系列ログの解析用途 IoTセンサー、アプリログ、クリックストリームなどの高頻度・時系列データに最適 リアルタイム集計や異常検知の用途で特に強みを発揮 クエリ言語にはSQLに似た KQL(Kusto Query Language) を使用 SQL database トランザクション処理や業務アプリのDB用途 トランザクション処理や従来型アプリケーション向け 高スループットの OLTP(Online Transaction Processing)に最適化された構造化データベース リレーショナルモデルに基づき、T-SQL を使った厳密なデータ操作が可能 Cosmos DB リアルタイムアプリ/NoSQLの分析連携用途 スキーマレスかつグローバル分散可能、ドキュメント/グラフ/列指向データを蓄積 マルチモデル API ( SQL ・ Mongo ・ Gremlin 等 ) が使用できるため、IoT/モバイルなど のリアルタイム アプリを Fabric エコシステムに統合できる Fabricのデータストアアイテムの種類と概要 ※Fabric のアイテムの アイコンではありません
  3. WHとLHの誕生の歴史・概念的な違い ウェアハウス レイクハウス 誕生 1980年代 2020年ころ ストレージ 専用フォーマット/エンジンと密結合 ADLS・S3・GCS など安価なオブジェクトストレージ

    ACID・ トランザクション ネイティブに対応 Delta Lake/Iceberg 等で同レベル機能を実装 非構造化データへの 対応 非対応 対応:画像・ログもそのまま取り込み可能 オープンフォーマット (Delta Lake、Iceberg) で保管可能 ウェアハウス レイクハウス 参考: Microsoft Fabric OneLake を通じた Delta Lake & Iceberg の相互運用性 - Speaker Deck 先月のアーカイブ:https://youtu.be/A9aIcowJn1I?si=rp7nqTKMmf4bsvRn
  4. キーワード:Delta Lakeとは Microsoft Fabric では、構造化データは Delta Lake 形式で保管される Home |

    Delta Lake DWHとデータレイクのいいとこどり • 高速なクエリや、履歴管理(タイムトラベル) • ACIDトランザクションによる整合性・信頼性担保 • レイクハウスアーキテクチャの基盤 オープンかつシンプル • ベンダーロックインなく、あらゆるツールから アクセス可能 • テーブル機能がファイルフォーマットで完結 • Parquet + コミットログ(_delta_log) Parquetファイルが テーブルの実態 テーブルの メタデータ ACID保証のための トランザクションログ (JSON)
  5. Fabric LHだけでなく WHでもDalta Lakeがベース レイヤー 共通 or 異なる 説明 ストレージレイヤー

    〇共通 OneLake + Delta形式(Parquet+_delta_log) エンジン (クエリエンジン) ×異なる LH:Spark / SQLエンジン WH:Polaris(T-SQL専用エンジン) 制御・UI設計方針 ×異なる LH:自由で柔軟(Notebook等) WH:SQL中心・厳格(型や制約を重視) 画像引用:Microsoft Fabric 開発ガイド - Speaker Deck 同じ Delta Lake に保存されていても「操作性や機能特性」は別物 Fabric のウェアハウスはレイク中心に構築された次世代の DWH
  6. 使用できるプログラミング言語の違い ウェアハウス:T-SQLが中心 • データの挿入・更新、クエリの最適化、ストアドやビューの定義など、T-SQL で完結 レイクハウス:多言語対応で柔軟 • ノートブックでは、PySpark、Spark、Spark SQL、SparkR など、データエンジニアや

    アナリストが馴染みのある言語を自由に選んで処理を記述 項目 T-SQL (Warehouse) Spark SQL (Lakehouse ノートブック) 列名の囲い 角括弧 [...] または "..." バッククォート `...` 行数制限 SELECT TOP N SELECT … LIMIT N SUM の型変換 数値型でないとエラー(文字列はエラー) 文字列も内部で自動キャスト可能(上限38桁) 文字列連結 + で連結 ||(パイプ2つ)で連結 日付・時刻関数 GETDATE(), DATEADD(day, n, d), DATEDIFF(day, s, e) など current_timestamp(), date_add(), datediff(end, start) など DISTINCT の仕様 COUNT(DISTINCT col) のみ 1列対応 複数列はサブクエリ必須 COUNT(DISTINCT col1, col2) のように複数列指定可 文字列型 CHAR, VARCHAR(NVARCHAR 非対応) STRING(UTF-8、可変長)、VARCHAR(n) 指定も可 日付型 DATE, DATETIME, DATETIME2 など複数 DateType, TimestampType のみ TIME 型は非対応 その他データ型 INT, BIGINT, SMALLINT, DECIMAL(p,s), BIT, BINARY, UNIQUEIDENTIFIER など IntegerType, LongType, ByteType, DecimalType, Boolean, Binary など
  7. テーブルのパフォーマンス最適化と権限管理の違い テーブルのパフォーマンス最適化(OPTIMISE、Vオーダー、VACUUM) ウェアハウス:テーブルのパフォーマンス最適化 は自動 • 小ファイルのコンパクションや統計情報の更新が自動実行される • バックグラウンドで自動最適化が走るため、ユーザーは意識せずに済む • ユーザーはメンテナンスを意識せず分析に集中できる

    レイクハウス:テーブルのパフォーマンス最適化は手動が必要な場合あり • データ追記が続くと小さなParquetファイルが蓄積し性能低下の原因に • OPTIMIZEコマンドなどの手動実行でコンパクションが必要 • クエリ性能とストレージ効率を保つには 定期メンテナンスが必須 権限管理 ウェアハウスの方がレイクハウスよりもきめ細かな権限設定が可能 • 前提:両者ともにワークスペース、アイテム、エンジンといった粒度で権限設定の必要あり • Microsoft Fabric のデータ権限制御(認可)の基本的考え方 #PowerBI - Qiita • WHではオブジェクトや列単位でアクセス権を制御。RLSや動的データマスクも使用可能 • レイクハウス の権限管理も進化中 • OneLake セキュリティ(プライベートプレビュー)によってCLSとRLSもサポート対象 • FabCon Las Vegas 2025 and Microsoft Build 2025 - Microsoft Fabric What's new and what's next #AI - Qiita
  8. 使われるパターン(運用方法)の違い-メダリオンアーキテクチャ- 「どちらか一方を選ぶ」>「どう組み合わせて使うか」 • 生データの格納(≒Bronze):レイクハウス • データ加工・統合(≒Silver):処理スタイル・制約に応じて選択(レイクハウスが多い) • 分析・参照クエリ(≒Gold):要件次第でどちらも選択肢 Gold レイヤーでWHとLHどっちを選択するか

    • WHのメリット • SQLエンジンによるクエリ高速化 や 自動OPTIMIZEといった機能がBI用途に特化した構成に向く • LHのメリット • AI モデルの学習や推論処理との統合が可能 • 現時点では BI 中心でも、「将来的に AI 活用を視野に入れておきたい」と幅が効く • 相互運用性の向上:ショートカットにより、ゼロETLで他クラウドストレージ上のテーブルを使用可能 Gold データ データマートとも呼ばれる状態。 個別のユースケースに即したデータモデル を表現する。 特定のシナリオに適合した変換を加えた 調整済みデータ Bronze データレイクとも呼ばれる状態。 根本的なロジック変更やデータ破損への 対処として後続を再生成可能にする 生データ Silver データ DWHとも呼ばれる状態。特定用途には 加工されていない、汎用的なデータモデル。 ここではデータ定義と品質チェックが適用 されているのみの、公開すべき状態の利 用可能データ データソース1 データソース2 データソース3 可視化 AI / MLモデル OR BIメイン AI/BI