0

全国に配備されたデータ収集システムのネットワークを持っています。各システムは、異なる建物のパフォーマンスを測定しています。各システムは、温度、流量、速度、エネルギー、およびその他の種類の測定を行います。サンプリング レートはシステムごとに異なります。最短で 5 秒、最長で 15 分です。

私の目的は、分析のためにすべてのデータを SSAS データベースに保存することです。ただし、適切な粒度と関連するファクト テーブル、および SSAS メジャー/メジャー グループの設計を特定するのに苦労しています。

私の最初の質問は、次のいずれかが同じ穀物を持っているかということです:

  • 温度やエネルギー値など、単位が異なるデータ値
  • 1 分ごとにサンプリングされた温度値や 15 分ごとにサンプリングされた温度など、サンプリング レートが異なるデータ値
  • 建物 1 の室内温度と建物 2 の室内温度など、異なる建物から記録されたデータ値
  • 加算データ値 (エネルギーなど) と非加算データ値 (温度など)
  • 1 階の温度と 2 階の温度など、特定の建物で同じユニットを使用した 2 つの異なる測定。

これらの例のほとんどまたはすべてが同じ粒度を持っていない場合、これは、各建物の測定値がリレーショナル データ ウェアハウスに個別のファクト テーブルを持ち、SSAS データベースに個別の測定値を持つべきであることを意味しますか? はいの場合、それぞれ 100 の測定値を持つ 10 棟の建物を調査していると仮定すると、1000 の測定値を見ていることになります。これは正しくないようですが、多くの異なるメジャー グレインを持つデータ モデルを扱っているようにも見えます。

私が見つけたほとんどすべての例は、金融または小売に関連しており、金額や項目など、明らかに加法的または可算の尺度で構成されています。したがって、例はあまり役に立ちませんでした。

4

1 に答える 1

1
  • 単位が異なるデータ値は、すべてのディメンション (時間、建物など) が同じ交点で収集されている場合、同じ粒度である可能性があります。この例では、温度とエネルギーの値は、ファクト テーブルの個別の列になります。単一のファクト列を使用して、異なる単位で測定値を表すことはお勧めしません。

  • 両方の間隔で同時にレポートできるようにする必要がある場合、異なるサンプリング レートのデータ値は同じ粒度ではありません。ただし、より細かい間隔でレポートを標準化できる場合は、より粗い値をより細かい行に単純に複製できます。たとえば、TemperaturePerMinute 列と TemperaturePer15Minute 列を作成し、15 分の間隔値をその間隔内のすべての分の値で複製することができます。ただし、粗粒度の列でレポートするときに集計 (カウントなど) を使用する場合は注意が必要です。さらに、サンプル レベルにドリルダウンする必要がある場合は、間隔の種類ごとに個別のファクト テーブルを使用する必要がある場合があります。

  • 異なる建物からのデータ値は、確かに同じ粒度で 1 つのファクト テーブルに記録できます。各測定サンプルのファクト テーブルにリンクする建物のディメンションを単純に作成します。

  • OLAP モデルでは、通常、メジャーは互いに独立しているため、加法値と非加法値を同じ粒度で別々の列として単純に表すことができます。

  • この場合、Building ディメンションを拡張して Floor 階層を含め、Floor 粒度でファクト テーブル レコードをリンクします。ただし、一部のサンプルを建物にリンクし、一部のサンプルをフロアにリンクできるようにする必要がある場合は、親子ディメンション(おそらく、建物とフロアを抽象化する場所ディメンション) を使用する必要があります。ファクト テーブルをビルディングまたはフロアに追加します。

スター スキーマの編成が不明な場合は、データをどのようにレポートするかを検討すると役立つことがわかりました。これにより、作成するキューブの数を減らすことができます。ただし、一般的には、OLAP モデルを正規化したり、一般的になりすぎないようにすることをお勧めします (つまり、単一の列を使用して温度とエネルギーを表します)。

于 2013-02-25T16:08:58.553 に答える