スタースキーマとはスタースキーマとは、データベース内のデータを整理することで理解・分析しやすくなった多次元データモデルで、データウェアハウスやデータベース、データマート (Data Mart)、その他のツールに適用できます。スタースキーマの設計は、大規模なデータセットへのクエリを実行するために最適化されています。1990 年代にラルフ・キンボール (Ralph Kimball)によって発表されたスタースキーマは、反復的なビジネス定義の重複を減らすことによってデータの保存や履歴の管理、データの更新を効率的に行い、データウェアハウスでのデータの集計やフィルタリングを高速に行うことができます。 ファクトテーブルとディメンションテーブルスタースキーマは、ビジネスデータをディメンション(時間や商品など)とファクト(金額や数量のトランザクションなど)に非正規化するために使用されます。スタースキーマの中央には 1 つのファクトテーブルがあり、ビジネスのファクト(金額や数量のトランザクションなど)が格納されています。ファクトテーブルは、時間や製品などのディメンションに沿って、他の複数のディメンションテーブルに接続されています。スタースキーマでは、2 つ以上のファクトテーブルとディメンションテーブルを結合することで、ユーザーが適切と考える方法でデータをスライスすることやダイスにすることを可能にします。非正規化データスタースキーマは、一部のディメンションテーブルに冗長なカラムを追加することで、データのクエリや作業を高速化・簡略化しデータを非正規化します。その目的は、データモデルの冗長性(データの重複)を許容することで計算コストのかかる結合演算を回避し、クエリの速度を向上させることにあります。このモデルでは、ファクトテーブルは正規化されていますが、ディメンションテーブルは正規化されていません。すなわち、ファクトテーブルのデータはファクトテーブル上にのみ存在しますが、ディメンションテーブルには冗長なデータが含まれる可能性があります。スタースキーマのメリットスタースキーマのようなファクト/ディメンションモデルは、理解も実装もシンプルで、エンドユーザーは必要なデータを容易に見つけられます。また、データマート (Data Mart)やその他のデータリソースに適用できます。スノーフレークスキーマのような正規化されたモデルと比較して、スタースキーマはデータにアクセスする際の結合への依存度が低いため、単純なクエリに最適です。OLAP モデルによく適合します。スタースキーマは、計算コストのかかる結合を避けようとするため、正規化されたデータと比較してクエリのパフォーマンスが向上します。スタースキーマと 3NF の違い3NF(第 3 正規形)とは、正規化によってデータの冗長性を減らす手法であり、完全に正規化されたとみなされるデータベースの標準規格です。データの正規化により、スタースキーマと比べて多くのテーブルを持つのが一般的です。一方で、大規模なテーブル間の結合が増えるため、クエリが複雑になる傾向があります。リソースブログ:Delta Lake で Databricks にスタースキーマを実装するための簡単な 5 ステップDatabricks SQL 製品ページ用語集:スノーフレークスキーマFAQ1. スタースキーマの構造はどのようになっていますか?スタースキーマは中央のファクトテーブルと、それに接続される複数のディメンションテーブルで構成されます。2. スタースキーマにおける「非正規化」の目的は何ですか?非正規化はディメンションテーブルに冗長なカラムを追加することで、データのクエリ速度を向上させることが目的です。3. スタースキーマと正規化されたスキーマ(3NF)との主な違いは何ですか?スタースキーマはデータの非正規化を進めることでクエリのパフォーマンスを向上させるのに対し、3NFはデータの正規化によって冗長性を最小限に抑えます。