プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

スタースキーマとスノーフレークスキーマの違いは?


スタースキーマ

スタースキーマは、レコードをディメンションテーブル、ファクトテーブル、およびマテリアライズドビューに編成するための会議です。すべての情報は列に格納され、多次元オブジェクトとして機能する列を識別するためにメタデータが必要です。

スタースキーマは、設計が多次元データモデルを記述するリレーショナルスキーマであるリレーショナルスキーマです。スタースキーマは、明示的なデータウェアハウススキーマです。このスキーマの実体関連図は、ポイントを使用してメインテーブルから分岐した星を再現するため、スタースキーマと呼ばれます。スキーマの中央には大きなファクトテーブルが含まれており、星のポイントはディメンションテーブルです。

スノーフレークスキーマ

スノーフレークスキーマはスタースキーマモデルの変形であり、いくつかのディメンションテーブルが正規化され、データがさらに多くのテーブルに分割されます。結果のスキーマグラフは、雪の結晶に似た形状を形成します。

スノーフレークスキーマは、スタースキーマの拡張であり、スターの各ポイントがより多くのポイントに分割されます。スノーフレークスキーマの図がスノーフレークをシミュレートするため、スノーフレークスキーマとして知られています。スノーフレークは、STARスキーマのディメンションテーブルを正規化するためのアプローチです。一部のディメンションテーブルを完全に正規化すると、結果の構造は、ファクトテーブルが中央にあるスノーフレークに似ています。

スノーフレークスキーマモデルとスタースキーマモデルの違いは、スノーフレークモデルのディメンションテーブルを正規化された形式で保持できることです。このようなテーブルは、ディメンション構造が列として含まれている場合、大きなディメンションテーブルが完全に大きくなる可能性があるため、保守とストレージスペースの保存が簡単です。

このスペースの多くは冗長な情報であるため、正規化された構造を作成すると、完全なスペース要件が減少します。ただし、スノーフレーク構造では、クエリを実行するためにより多くの結合が必要になるため、ブラウジングの効率が低下する可能性があります。その結果、システムパフォーマンスに悪影響を与える可能性があります。パフォーマンスベンチマークを使用して、この設計に何が適しているかを判断できます。

スタースキーマとスノーフレークスキーマの比較を見てみましょう。

スタースキーマ スノーフレークスキーマ
これは単純なデータベース設計です。 これは複雑なデータベース設計です。
スタースキーマでは、単一の結合のみがファクトテーブルと任意のディメンションテーブル間の関係を作成します。 スノーフレークスキーマでは、データを取得するためにいくつかの結合が必要でした。
キューブ処理が高速です。 結合が複雑なため、キューブの処理が遅くなる可能性があります。
正規化を使用しません。 正規化と非正規化を使用します。
スタースキーマが使用する結合の数が少なくなります。 スノーフレークスキーマは多数の結合を使用します。

  1. アルゴリズムとフローチャートの違い

    この投稿では、フローチャートとアルゴリズムの違いを理解しましょう。 アルゴリズム これは、明確に定義された一連のステップとして定義されます。 これらの手順は、手元にある問題を解決する/解決する方法を提供します。 これは体系的で論理的なアプローチであり、手順は段階的に定義されます。 特定の問題の解決策を提供します。 このソリューションはマシンコードに変換され、システムによって実行されて関連する出力が得られます。 多くの単純な操作を組み合わせて、より複雑な操作を形成します。これは、コンピューターによって簡単に実行されます。 アルゴリズムは、自然言語、フローチャートなどを使用して表すことができます

  2. BFSとDFSの違い

    BFSとDFSはグラフ走査アルゴリズムです。 BFS 幅優先探索(BFS)アルゴリズムは、グラフを横方向に移動し、キューを使用して、反復で行き止まりが発生したときに、次の頂点を取得して検索を開始することを忘れないようにします。 DFS 深さ優先探索(DFS)アルゴリズムは、グラフを深さ方向に移動し、スタックを使用して、反復で行き止まりが発生したときに、次の頂点を取得して検索を開始することを忘れないようにします。 以下は、BFSとDFSの重要な違いです。 Sr。いいえ。 キー BFS DFS 1 定義 BFS、幅優先探索の略です。 DFS、