スタースキーマの実装

Microsoft Fabricでデータを変換して分析する

Luis Silva

Solution Architect - Data & AI

メダリオンアーキテクチャ

データソースからブロンズレイヤーへの取り込み、シルバーレイヤーでのクレンジング、ゴールドレイヤーでの分析向けスタースキーマへの変換を示すメダリオンデータアーキテクチャの図

  • データ整理のためのデザインパターン
  • データの段階的な精製を示す3つのレイヤーで構成
Microsoft Fabricでデータを変換して分析する

メダリオンアーキテクチャ

ブロンズレイヤーを強調したメダリオンデータアーキテクチャの図

  • ブロンズレイヤー: ソースから取り込んだ元の生データ。
Microsoft Fabricでデータを変換して分析する

メダリオンアーキテクチャ

シルバーレイヤーを強調したメダリオンデータアーキテクチャの図

  • シルバーレイヤー: クレンジング済みの標準化されたデータ。
Microsoft Fabricでデータを変換して分析する

メダリオンアーキテクチャ

ゴールドレイヤーを強調したメダリオンデータアーキテクチャの図

  • ゴールドレイヤー: 分析に適した形式のデータ(通常はスタースキーマ)。
Microsoft Fabricでデータを変換して分析する

FabricのメダリオンアーキテクチャFabric

Fabricにおけるメダリオンアーキテクチャの図。ブロンズレイヤーのレイクハウスへのデータ取り込み、シルバーレイヤーでのSparkノートブックとデータフローによる変換、ゴールドレイヤーのウェアハウスでのスタースキーマへの変換を示す。

  • ブロンズレイヤー: レイクハウス
  • シルバーレイヤー: レイクハウス
  • ゴールドレイヤー: レイクハウスまたはウェアハウス
Microsoft Fabricでデータを変換して分析する

スタースキーマの実装

  • T-SQLのCREATE TABLE文でテーブルを定義します。
  • Fabricは主要なT-SQLデータ型をサポートしています。

dw-salesスキーマを展開し、ファクトテーブルと複数のディメンションテーブルを表示したウェアハウスレイアウトのスクリーンショット

スタースキーマの図

Microsoft Fabricでデータを変換して分析する

ディメンションテーブルの構造

  • ビジネスエンティティを表す(例:製品)。
  • 通常、以下の列を持ちます:

Product ID、Product Key、Product Name、Product Brandの列を持つDim Productというサンプルディメンションテーブル

Microsoft Fabricでデータを変換して分析する

ディメンションテーブルの構造

  • ビジネスエンティティを表す(例:製品)。
  • 通常、以下の列を持ちます:
    • サロゲートキー。 ディメンション項目の単一列の一意識別子。

Product ID、Product Key、Product Name、Product Brandの列を持つDim Productというサンプルディメンションテーブル。Product IDがサロゲートキーとして強調表示されている。

Microsoft Fabricでデータを変換して分析する

ディメンションテーブルの構造

  • ビジネスエンティティを表す(例:製品)。
  • 通常、以下の列を持ちます:
    • サロゲートキー。 ディメンション項目の単一列の一意識別子。
    • ナチュラルキー(ビジネスキー)。 ソースシステムから取得した単一列の一意識別子。

Product ID、Product Key、Product Name、Product Brandの列を持つDim Productというサンプルディメンションテーブル。Product Keyがナチュラルキーとして強調表示されている。

Microsoft Fabricでデータを変換して分析する

ディメンションテーブルの構造

  • ビジネスエンティティを表す(例:製品)。
  • 通常、以下の列を持ちます:
    • サロゲートキー。 ディメンション項目の単一列の一意識別子。
    • ナチュラルキー(ビジネスキー)。 ソースシステムから取得した単一列の一意識別子。
    • ディメンション属性。 データのフィルタリングやファクトテーブルのコンテキット提供に使用する1つ以上の列。

Product ID、Product Key、Product Name、Product Brandの列を持つDim Productというサンプルディメンションテーブル。Product NameとProduct Brandがディメンション属性として強調表示されている。

Microsoft Fabricでデータを変換して分析する

ディメンションテーブルの作成

CREATE TABLE文を使用してサンプルディメンションテーブルdim_Productを作成するT-SQLスクリプト

Product ID、Product Key、Product Name、Product Brandの列を持つDim Productというサンプルディメンションテーブル。Product IDがサロゲートキー、Product Keyがナチュラルキー、Product NameとProduct Brandがディメンション属性。

Microsoft Fabricでデータを変換して分析する

ファクトテーブルの構造

  • ビジネスイベントを表す(例:製品の販売)。
  • 列:

Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units、Sale Priceの列を持つFact Salesというサンプルファクトテーブル

Microsoft Fabricでデータを変換して分析する

ファクトテーブルの構造

  • ビジネスイベントを表す(例:製品の販売)。
  • 列:
    • ディメンションキー。 ディメンションテーブルのサロゲートキーへの参照。

Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units、Sale Priceの列を持つFact Salesというサンプルファクトテーブル。Date ID、Store ID、Product ID、Customer ID、Payment IDがディメンションキーとして強調表示されている。

Microsoft Fabricでデータを変換して分析する

ファクトテーブルの構造

  • ビジネスイベントを表す(例:製品の販売)。
  • 列:
    • ディメンションキー。 ディメンションテーブルのサロゲートキーへの参照。
    • 属性。 ファクトに関する追加情報を提供するが、ディメンションでも数値メジャーでもない列。

Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units、Sale Priceの列を持つFact Salesというサンプルファクトテーブル。Packaging NotesとSale Order Numberが属性として強調表示されている。

Microsoft Fabricでデータを変換して分析する

ファクトテーブルの構造

  • ビジネスイベントを表す(例:製品の販売)。
  • 列:
    • ディメンションキー。 ディメンションテーブルのサロゲートキーへの参照。
    • 属性。 ファクトに関する追加情報を提供するが、ディメンションでも数値メジャーでもない列。
    • メジャー。 ファクトを数値化する列。数値かつ通常加算可能(例:数量、金額など)。

Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units、Sale Priceの列を持つFact Salesというサンプルファクトテーブル。Sale UnitsとSale Priceがメジャーとして強調表示されている。

Microsoft Fabricでデータを変換して分析する

ファクトテーブルの作成

CREATE TABLE文を使用してサンプルファクトテーブルfact_Salesを作成するT-SQLスクリプト

Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units、Sale Priceの列を持つFact Salesというサンプルファクトテーブル

Microsoft Fabricでデータを変換して分析する

練習しましょう!

Microsoft Fabricでデータを変換して分析する

Preparing Video For Download...