データ ウェアハウス モデルのスノーフレーク スキーマ

スノーフレーク スキーマとは何ですか?

スノーフレークスキーマ データ ウェアハウスにおける、多次元データベース内のテーブルの論理的な配置です。 ER図 雪の結晶の形に似ています。 スノーフレーク スキーマはスター スキーマの拡張であり、追加の次元が追加されます。 ディメンション テーブルは正規化されており、データが追加のテーブルに分割されます。

スノーフレークスキーマの例

続きましてwing スノーフレーク スキーマの例では、国はさらに個別のテーブルに正規化されます。

スノーフレークスキーマ
スノーフレークスキーマの例

スノーフレークスキーマの特徴

  • スノーフレーク スキーマの主な利点は、使用するディスク容量が少ないことです。
  • スキーマにディメンションを追加すると実装が容易になります
  • 複数のテーブルによりクエリのパフォーマンスが低下する
  • スノーフレーク スキーマの使用中に直面する主な課題は、ルックアップ テーブルが増えるため、より多くのメンテナンス作業を実行する必要があることです。

スノーフレークスキーマの利点

  • Snowflake スキーマの主な利点は、ディスク ストレージ要件を削減し、より小さなルックアップ テーブルを結合して、クエリのパフォーマンスを向上できることです。
  • コンポーネントとディメンション レベル間の相互関係のスケーラビリティが向上します。
  • 冗長性がないため、保守が容易です。

スノーフレーク スキーマの欠点

  • スノーフレーク スキーマの重大な欠点は、必要なメンテナンスの増加です。
  • とplex クエリを理解するのは困難です。
  • テーブルの数が増えると結合の数も増えるため、クエリの実行時間も長くなります。

ギャラクシースキーマとは何ですか?

A ギャラクシースキーマ ディメンション テーブルを共有する XNUMX つのファクト テーブルが含まれています。 ファクト コンステレーション スキーマとも呼ばれます。 スキーマは星の集合として見なされるため、ギャラクシー スキーマという名前が付けられています。

ギャラクシースキーマ
ギャラクシースキーマの例

上の例でわかるように、ファクト テーブルが XNUMX つあります。

  1. 収入
  2. 製品。

ギャラクシースキーマではares 寸法は適合寸法と呼ばれます。

ギャラクシースキーマの特徴

  • このスキーマのディメンションは、階層のさまざまなレベルに基づいて個別のディメンションに分割されます。
  • たとえば、地理に地域、国、州、都市などの XNUMX つの階層レベルがある場合、Galaxy スキーマは XNUMX つの次元を持つ必要があります。
  • さらに、XNUMX つ星のスキーマをさらに多くのスター スキーマに分割することで、このタイプのスキーマを構築することができます。
  • このスキーマでは次元が大きいため、階層レベルに基づいて構築する必要があります。
  • このスキーマは、理解を深めるためにファクト テーブルを集約するのに役立ちます。

星団スキーマとは何ですか?

Snowflake スキーマには完全に展開された階層が含まれていますarchiエス。ただし、これにより com が追加される可能性がありますplexスキーマに反映され、追加の結合が必要になります。 一方で、 スタースキーマ 完全に折りたたまれた階層が含まれていますarchies、冗長性が生じる可能性があります。したがって、最良の解決策は、これら 2 つのスキーマ間のバランスをとること、つまりスター クラスター スキーマの設計である可能性があります。

星団スキーマ
星団スキーマの例

重複するディメンションは階層内のフォークとして見つかります。archiエス。フォークは、エンティティが 2 つの異なる次元階層で親として機能するときに発生します。archiエス。その後、フォーク エンティティは 1 対多の関係を持つ分類として識別されます。