Fabric Real-Time Intelligence で実践するメダリオン アーキテクチャ
はじめに
今回の記事は、Microsoft Fabric Real-Time Intelligence(RTI)を使ったリアルタイム分析基盤の設計プラクティスとして、メダリオンアーキテクチャを整理するものです。RTI を試したいという声は増えている一方で、構成や運用の“作法”がまとまって見つけにくいと感じています。
本稿ではメダリオンを唯一の解とは位置づけず、ひとつの有効な選択肢として、Bronze/Silver/Gold 各層の役割と設計上の要点(再処理のしやすさ、品質とガバナンス、KPI への即応性)を具体例とともに解説します。
メダリオンという設計図が必要な理由
リアルタイム データは、IoT デバイスや SaaS アプリから絶え間なく流れ込む“生のストリーム”です。もし全データをそのまま分析基盤に流し込めば、クエリのたびに複雑な前処理が走り、最新情報を得るまでに遅延が生じます。さらに、加工済みデータと生データが混在すると「どの値を意思決定に使うべきか」が曖昧になり、監査・再現性の面でもリスクが高まります。
そこで Bronze → Silver → Gold と品質を段階的に高める メダリオンアーキテクチャ が有効です。Fabric Real-Time Intelligence (RTI) では、Bronze に生データを“そのまま”着地させ、Silver でクレンジングとビジネス文脈の付与を行い、Gold で KPI 向けに集約する——という三層構成を推奨しています。こうすることで、
- 生データの完全履歴を保持しつつ何度でも再処理できる
- 品質レベルが明確になりガバナンスを強化できる
- 重い集計を一度だけ実行すれば下流は軽量クエリで済む
といった利点が得られます。さらに RTI では各層が同一ワークスペース内で有機的に連携するため、ストリーム専用エンジンや外部スケジューラを別途管理する必要がありません。結果として、リアルタイム性と運用効率を同時に確保しながら、ビジネスの意思決定スピードを大幅に向上させることができます。
全体構成(例)
本記事では上図の各レイヤーごとに構成のポイントを説明します。
参考: Medallion Architecture in Fabric Real-Time Intelligence(Microsoft Fabric ブログ)
Bronze レイヤー
最初に構築するのは Bronze Table。IoT Hub や業務アプリのログを Eventstream で受け取り、そのまま Eventhouse テーブルへ書き込みます。ここでは「一切加工しない完全履歴」を保持するのが鉄則です。
- ソース多様性:HTTP エンドポイント、Azure IoT Operations、既存 ERP など、ほぼすべてのイベント ソースを同一の Eventstream 経由で収容可能。
- リプレイ容易性:Bronze に原本が残るため、上流の変換ロジックを変更しても簡単に再処理できます。
Silver レイヤー
着地した生データは Update Policy または Eventstream の Event Processing で整形され、Silver Table に流れ込みます。
- Update Policy でスキーマ標準化・単位変換・マスタ結合などを自動実行。ストリーム特有のインクリメンタル処理やウォーターマーク(遅延到着データをどこで区切るか判断するためのタイムスタンプ境界)を意識する必要はありません。
- 整形後は Materialized View を用いて Dedup View を生成し、重複レコードをリアルタイムで排除。「クリーンかつ即時検索可能なデータ」を確保します。
Update Policy とは?
「ソーステーブルに行が届いた瞬間に、この KQL を実行し、結果を別テーブルへ書き込む」という“常時オン”の変換ルールです。
ドキュメント: Update Policy
Materialized View とは?
集計や重複排除のクエリ結果を最新状態でキャッシュし、ミリ秒で返せる Eventhouse ネイティブ のビューです。
ドキュメント: Materialized View
Gold レイヤー
Gold Layer ではビジネス KPI 向けにデータを要約します。Silver の Dedup View をソースに、
- Aggregate View(例:1 時間ごとの売上合計)
- Latest Value View(例:各センサーの最新温度)
といった Materialized View を作成。遅延到着データも自動で補正されるため、ダッシュボード側で複雑なロジックを持たずに常に“正”を保てます。
Visualize & Activate
Gold レイヤーの集計データは Power BI や Real-Time Dashboard へライブ接続でき、Silver レイヤーの高粒度データも Drill-through 可能です。さらに Activator(Reflex) を使えば、
- Gold の KPI が閾値を超えたら Teams にアラート
- Silver の詳細データで異常検知し、Power Automate でワークフロー起動
といった“データドリブンな自動アクション”をノーコードで実装できます。
まとめ
- Bronze:すべての生データを正確に保持し、あとから何度でも再処理できる履歴リポジトリ。
- Silver:Update Policy と Materialized View で品質を高め、クリーンかつ即時クエリ可能に。
- Gold:ビジネス KPI/リアルタイム監視に必要な粒度で集計・要約し、常に最新かつ信頼できる指標を提供。
- Visualize & Activate:Power BI/Real-Time Dashboard で可視化し、Reflex などでアラートやワークフローを自動化。
これら四つのレイヤーはすべて Microsoft Fabric RTI の単一ワークスペース 内で完結します。外部サービスへデータをコピーする必要はなく、複雑なジョブスケジューラを管理する負担もありません。Eventstream にソースを接続し、各レイヤーを順に作成していくだけで、リアルタイム データ活用の基盤を標準機能としてすぐに体験できます。
参考リンク
- ブログ: Medallion Architecture in Fabric Real-Time Intelligence
- ドキュメント: Update Policy
- ドキュメント: Materialized View
Discussion