見出し画像

163. Microsoft Fabric のセマンティックモデルを試す ~ その2.

前回の記事                        次回の記事

はじめに

今回は、まず、セマンティックモデルを実際に使う、

レイクハウスのエンドツーエンド シナリオ: 概要とアーキテクチャ - Microsoft Fabric | Microsoft Learn

というチュートリアルの内容を確認することにします。

チュートリアルの内容

まずはどんなシナリオなのかを確認します。

シナリオ

従来、組織はトランザクションおよび構造化データ分析のニーズに対応するため、最新のデータ ウェアハウスを構築してきました。 また、ビッグデータ (半/非構造化) データ分析のニーズに対応するデータ レイクハウスもあります。 これら 2 つのシステムは並行して実行され、サイロ化、データの重複が発生し、総所有コストが増加しました。

データ ストアの統合と Delta Lake 形式での標準化を備えた Fabric により、サイロを排除し、データの重複を取り除き、総所有コストを大幅に削減できます。

https://learn.microsoft.com/ja-jp/fabric/data-engineering/tutorial-lakehouse-introduction#lakehouse-end-to-end-scenario

なるほど。個人的には、日本でどのぐらい、この”従来”の状況になっている企業が存在するのか興味のあるところ。
ちなみに、以前どこかで書いたように、組織ごとにデータ管理をすれば、原理的にサイロ化するのは当たり前だし、サイロ化=ある意味の場に特化したデータモデル、という意味合いでは、そうでなければ、その組織にとって使い物にはならない、実質的には組織の誰も使っていないデータであろうということ。なのでサイロ化の問題とは、そのデータの質、内容ではなく、データ管理システムが、組織外のシステムと簡単に接続・参照ができない、というのが本質のはずで、それを Microsoft Fabric の機能で何とかしようということだろうね。

また、組織が違うというのは、担当している意味の場が異なる(生産、開発、営業、財務、総務、人事など)か、意味の場は同じだが、圏I を分割しているかのどちらかを意味することになる。

意味の場が異なれば、たとえ同じモノ(機器とビジネスエンティティの両方)が同じでも、意味・意義が異なる(モノの間の意味的つながりはそれぞれの意味の場で異なる)ので、それぞれの組織が管理・保持しているデータの対象が同一であっても、それは当たり前のこと。データ統合をする際には、同一の対象を指すデータ項目を、(セマンティックモデル?の)テーブル等を新たに作成して、対応関係を記述すればよい。データ重複で問題になりそうなのは、本来はそれぞれの意味の場で記述するべきモノの特徴値が、別の意味の場のモデルに混入してしまう状況でしょう。Shlaer-Mellor 法では、このような状況を”Domain Pollution(ドメイン汚染)”と言っていました。汚染があると、本来はどちらか一方の意味の場がデータソース(担当組織の業務活動からその特徴値の値が決まること)で、そちら側だけで更新をすれば済むものを、別の意味の場のデータ側も更新しなければならないという二重性が生じてしまう。こんな時は、対応付けは、モノのアイデンティティ間の関係を保持するだけで、必要な時に、その対応性を辿って参照すれば、データ重複の問題は解決する。
組織間で同じ意味の場の圏Iのモデルを分割している場合は、素直に、同じ意味の場を分割・共有している組織間で、データ管理システムを共有化するのが、解決策なのではないだろうか。
この手のケースで、各組織に(ある意味)有能でぶっ飛んだ社員がいると、それぞれ勝手に、素敵なシステムを構築しちゃったりする場合もあるんだけど、それも、サイロ化、データ重複の原因でしょうね。

Microsoft Fabric を使う・使わないにかかわらず、データウェアハウスの構築・改修を行う場合には、ここに書いた話を参考にしてもらえればありがたい。

さて、チュートリアルでは、Microsoft Fabric の柔軟性を利用して、

レイクハウス アーキテクチャまたはデータ ウェアハウス アーキテクチャを実装したり、それらを組み合わせてシンプルな実装で両方の長所を最大限に活用したりできます。 このチュートリアルでは、小売組織を例として、そのレイクハウスを最初から最後まで構築します。 メダリオン アーキテクチャを使用しており、ブロンズ レイヤーには生データが含まれ、シルバー レイヤーには検証および重複除去されたデータが含まれ、ゴールド レイヤーには高度に精製されたデータが含まれます。 あらゆる業界のあらゆる組織に対して、同じアプローチを採用してレイクハウスを実装できます。

https://learn.microsoft.com/ja-jp/fabric/data-engineering/tutorial-lakehouse-introduction#lakehouse-end-to-end-scenario

をやるとのこと。
ちなみに、”メダリオン アーキテクチャ”という用語が出てきますが、こちらも Microsoft Learn に説明があったので紹介しておきます。

medallion アーキテクチャは、データを論理的に整理するために使用されるデータ設計パターンです。 その目標は、アーキテクチャの各レイヤー (ブロンズ ⇒ Silver ⇒ Gold レイヤー テーブルから) を流れるデータの構造と品質を段階的かつ段階的に向上することです。 Medallion アーキテクチャは、 マルチホップ アーキテクチャとも呼ばれます。
これらのレイヤーを通じてデータを進めることで、組織はデータの品質と信頼性を段階的に向上させ、ビジネス インテリジェンスや機械学習アプリケーションに適しています。
medallion アーキテクチャに従うことをお勧めしますが、要件ではありません。

メダリオン レイクハウス アーキテクチャとは - Azure Databricks | Microsoft Learn
medallion アーキテクチャの例

それぞれのレイヤーは、

レイヤーの特徴

とのこと。概念モデリング的には、それぞれのレイヤーは、それぞれ”意味の場”だと考えます。
6. ドメインとITシステム構築|Knowledge & Experience
では、ドメインについて簡単に解説を行っていますが、具体的な種類や分類については言及していないので、とっても参考になります。
前回の記事で言及した観点からすると、

ここから先は

3,173字 / 3画像
説明では、Microsoft Azure 中心‼…になっていますが、最近は、Azure に限らず、IoT・Digital Twins、加えて、AI、DX 等のシステム構築に関するもっと本質的な話題を書いています。なんちゃってから卒業したい技術者の皆さんぜひ、ご購読くださいませー

IoT・Digital Twins を極めよう!

¥200 / 月 初月無料

2022年3月にマイクロソフトの中の人から外の人になった Embedded D. George が、現時点で持っている知識に加えて、頻繁に…

この記事が気に入ったらチップで応援してみませんか?