2016-07-25 5 views
1

私はデータウェアハウスの初心者です。私は記事を読んで原則についてビデオを見てきましたが、私は下のデザインをどのようにして、スタースキーマ。3NFからのスタースキーマデザイン

ファクトテーブルがdimテーブルを参照しているのを見たすべての例で、questionIdとresponseIdがファクトテーブルの一部であると仮定していますか?アドバイスをいただければ幸いです。私は(オフィス@私のファイアウォールでブロックされた)瞬間の画像を見ることができない

enter image description here

+0

単にカーディナリティに基づいて、 'respond'はすべてのものに対して_many_ですので、それは明らかにファクトテーブルです。 'questions'がテキスト質問の有限リストであるならば、明らかにそれは次元テーブルです。一般的には、 'questions'と' options'を組み合わせて質問に関する単一の非正規化次元を作ります。オプションと質問を組み合わせると、実際にはスタースキーマ内に3つのテーブルがあります。 –

+0

あなたのファクトテーブルの数値は 'question count'、' correct count'、 'wrong count' –

答えて

2

。私はあなたにいくつかのアイデアを提供しようとします。

一般的な考え方は、測定可能な「ファクト」をファクトテーブルと呼ばれるものに編成することです。事実には3つの主要なタイプがありますが、それは別の日の話題です(しかし、必要ならばこれに入るのが嬉しいです)。これらの事実のそれぞれは、典型的な「スタースキーマ」の中心に見るものです。ファクト表内の他の属性は、通常、ディメンション表へのFK参照です。

ディメンションに関しては、共通性を共有する属性のグループです(最も注目すべき点はカレンダーディメンションです)。これは重要です。なぜなら、複数のファクト間で分析を行っているときは、それらを接続するために使用する次元なのです。

この簡単な例を考えてみると、製品が発注され、出荷されます。 2つの取引事実(1つは注文数量、1つは商品注文数量、1件は取引日数を含む)を持つことができます。また、製品出荷(数量、製品タイプ - 寸法、出荷日付 - 出荷数量)に関する取引事実もあります。このシンプルなスキーマは、「前四半期の製品タイプ別にいくつの商品が発注されたが出荷されなかったか」といった質問に答えるために使用することができます。

これがうまく始めるのに役立ちます。

0

通常、ファクトテーブルを使用してメジャーを集計します。これは常に数値です。例としては、売上金額、距離、重み、売り上げ件数などがあります。

あなたがここに描いたデータのタイプには、カットして乾燥した「測定」がないので、測定するものを決定する必要があります。質問ごとの回答数は? 1サンプルあたりの反応はどれくらいですか?

これはイベントファクトテーブルと呼ばれることがあります(他の例を検索する場合)。また、スタースキーマに変換する前に、何らかのレポート要件が必要です。だから、簡単な答えではありません...

関連する問題