この記事では、Microsoft Fabric で Real-Time Intelligence を使用して medallion アーキテクチャを実装する方法について説明します。 メダリオン アーキテクチャは、データがステージを通過する際に、原子性、一貫性、分離、耐久性 (ACID) を保証します。 生データから始めて、一連の検証と変換が行われ、効率的な分析用に最適化されます。 アーキテクチャは、ブロンズ レイヤー (生データ)、Silver レイヤー (検証済みデータ)、Gold レイヤー (エンリッチされたデータ) の 3 つのステージで構成されています。
詳細については、「メダリオンアーキテクチャとは」を参照してください。
それはどのように動作しますか?
Real-Time インテリジェンスには、追加のインフラストラクチャを必要としない KQL データベースでの medallion アーキテクチャの作成を容易にする機能があります。 次のような機能があります。
ポリシーの更新
データが Bronze レイヤーに入ると、更新ポリシーを使用して変換と強化を行い、データ品質の向上、一貫性、ダウンストリーム分析の関連性などのビジネス価値を追加できます。 更新ポリシーは、増分処理、チェックポイント処理、透かしなどのストリーミングの概念を簡略化することで、継続的なデータ ストリームの処理を容易にします。 この抽象化により、追加のツールを必要とせずにストリーミング アプリケーションとパイプラインを構築できます。 ライブ ストリーミング データを取り込んで変換する Real-Time Intelligence の機能により、データ エンジニアやデータ サイエンティストは、さまざまなソースからのリアルタイム データを処理できます。
詳しくは、「更新ポリシー」をご覧ください。
具体化されたビュー
具体化されたビューでは、重複する値が到着すると削除され、重複除去されたレコードをクエリにすぐに使用できるようになります。 集計ビューをリアルタイムで計算し、パフォーマンスの向上、データの鮮度、コストの削減を保証します。 これにより、追加のツールでデータ集計を実行する必要がなくなります。 ソース テーブルまたは別の具体化されたビューに対して集計クエリを公開することで、常に最新の結果を提供します。 具体化されたビューのクエリは、ソース テーブルに対して集計を直接実行するよりも効率的であり、パフォーマンスが向上します。 さらに、具体化されたビューでは消費されるリソースが少なくなり、コスト削減につながる可能性があります。
詳細については、「具体化されたビュー」を参照してください。
メダリオンアーキテクチャを実装する
Real-Time インテリジェンスを使用すると、到着したデータを処理して medallion アーキテクチャを構築できます。 これにより、データのリアルタイムの側面を維持しながら、ブロンズ、シルバー、ゴールドのレイヤーを構築できます。
Real-Time Intelligence の medallion アーキテクチャを示す
ブロンズレイヤー
ブロンズ レイヤーは、すべての受信生データの初期ランディング ゾーンとして機能します。 Real-Time インテリジェンスでは、Bronze レイヤーは Eventstream または Eventhouse のテーブルを使用してデータを取り込むことができます。これにより、Silver レイヤーと Gold レイヤーでの後続のエンリッチメントと分析の基礎が提供されます。
ヒント
変更キャプチャの目的とデータを再生する機能のために、このデータを保持することが必要な場合があります。 Bronze レイヤーで Eventstream を使用している場合は、イベント処理によって変換または機能強化が実行される前に、データを OneLake に出力できます。 ブロンズ レイヤーでテーブルを使用した場合、データを OneLake にミラーできます。
シルバー レイヤー
Silver レイヤーには、レコードの重複除去など、ビジネス価値を高めるために変換およびエンリッチされたデータが含まれています。 このレイヤーは、次のように、イベント処理や更新ポリシーなどの方法を使用して、Bronze レイヤーのデータを処理します。
- イベント処理: Eventstream のデータは、イベント処理 を使用して付加され、ビジネス価値を追加した後、Eventhouse の Silver レイヤー テーブルに結果を挿入します。
- 更新ポリシー: Bronze レイヤー テーブル内のデータは、更新ポリシーを使用して直ちに処理されます。 結果は、Eventhouse の Silver レイヤー テーブルに挿入されます。 重複除去は、具体化されたビューを使用して行われます。これにより、データは最新状態に保たれ、ソリューションのリアルタイム性が維持されます。
ヒント
通常、このレイヤーには、変換と拡張機能用に 1 つと重複除去用の具体化されたビューという 2 つのテーブルがあります。 最初のテーブルでは、保持ポリシーの を 0 日間に設定できます。つまり、データはテーブルに表示されませんが、具体化されたビューによって重複除去されます。 重複除去された具体化されたビューは、高い粒度の分析に使用されます。
保持ポリシー データを保持する期間と、クエリ パターンに基づいてキャッシュ ポリシーの両方を設定することで、コストを最適化できます。 多くの場合、Silver レイヤーは Gold レイヤーである限り必要ありません。 ゴールド レイヤー
Gold レイヤーには、データのリアルタイムの側面を維持しながら、視覚化のニーズに合わせて最適化されたデータが含まれています。 このレイヤーは、具体化されたビューを使用して到着したデータを集計して計算し、データセットに基づいて最新の受信値にすばやくアクセスできるようにします。 ゴールド レイヤーでは、データが高度な分析や視覚化ツールに対応でき、意思決定のため、最新かつ高品質な分析情報が提供されます。
このレイヤーは、集計ビューと最新値マテリアライズド ビューを使用した視覚化用に最適化されています。 ほとんどのシナリオでは、このダウンサンプリングされたデータは、Silver レイヤーよりも長期間保持され、クエリが実行されます。 保持ポリシー を使用して、クエリ パターンに基づいてデータと キャッシュ ポリシー を保持する期間を決定することで、このプロセスはネイティブに処理されます。
視覚化と分析
Real-Time Intelligence のパフォーマンス機能を使用すると、Power BI、Real-Time ダッシュボード、KQL クエリセットなどのコンポーネントを使用してデータを視覚化できます。 両方の「Gold レイヤー」から集約されたビューを取得し、「Silver レイヤー」から高い粒度の分析を実行できます。 さらに、Activatorを使用して、任意のレイヤーでデータを操作できます。この機能により、Eventstream に到着したときにデータに対して動作する機能、Silver レイヤー内の細かいデータ、Gold レイヤーから集計されたデータを操作できるようになります。
主な利点
Real-Time インテリジェンスの medallion アーキテクチャには、次のようないくつかの利点があります。
リアルタイムデータ処理用に意図的に構築
Microsoft Fabric の Real-Time インテリジェンスは、継続的に流れるデータと高い粒度のデータを処理するように構築されています。 ブロンズ層からゴールド層への流れ全体が製品に組み込まれています。 スケジュールを設定しないと、到着するとすぐに Bronze から Silver から Gold にデータを処理できます。 これは、次の方法で可能になります。
柔軟性
一般的な medallion アーキテクチャでは、データは Gold レイヤーからのみ使用され、個々のレコードが失われ、詳細度の高い分析が防止されます。 Eventhouse を使用すると、Gold レイヤーと Silver レイヤーの両方のデータを使用して、高い粒度の分析を実現できます。 Eventhouse は、数十億件のレコードに対するクエリを数秒で処理するために構築されています。
組み込みのデータ管理
各レイヤーのデータには、保持とクエリの要件が異なります。 このプロセスは、組み込みの機能を使用して簡単に実装できます。
ネイティブ視覚化レイヤー
1 つのアクションで、Gold または Silver レイヤーのクエリを新規または既存の Power BI レポートまたは Real-Time ダッシュボードにピン留めできます。
OneLake の可用性
シルバー レイヤーからデータを取得し、OneLake 可用性を使用して OneLake で Delta Parquet として公開します。 組織内のさまざまな利害関係者がさまざまなツールを使用します。たとえば、データ サイエンティストは機械学習モデルのトレーニングに履歴データを使用します。 OneLake でデータを使用できるようにすることで、各関係者は追加のストレージ コストなしで簡単にデータを操作できます。
関連コンテンツ
- Microsoft Fabric の意思決定ガイド : データ ストア を選択する
- 問。 Fabric コミュニティのに問い合わせてみてください。
- ご提案はありますか? Fabric 改善のアイデアを投稿してください。