1

SSAS を使用して、過去数年間の月間収益を確認できるキューブを設計しようとしています。Type 2 SCD を使用して収益ファクト テーブルを作成すると、次のテーブルが作成されます。

Account Number     MonthlyPayment     Start Date     End Date
102939              115               01/01/2001     03/31/2001
102939              75                04/01/2001     NULL
102940              107               02/01/2001     NULL

今、私は毎月の毎月の収入がどのくらいかを把握しようとしています。

01/01: 115 
02/01: 222 
05/01: 182

キューブを作成しましたが、開始日にリンクされているため、特定の月の収益しか報告されていません。

01/01: 115
02/01: 107
02/01: 0 
04/01: 75

SSISでファクトテーブルを構築した後、見つけたすべてのリンクが停止し、データが正しくフォーマットされるとそれがケーキであることを暗示しているように見えるため、何かが欠けているようです。MDX 計算メジャーを作成する必要がありますか? また、作成する場合はどのようにしますか? それとも、私が見るべきもっと単純なものがありますか。

どんなアドバイスでも大歓迎です!

4

2 に答える 2

1

それは簡単な電話ではありません。

セル レベル (別名行レベル) で、集計時に日付を使用して金額を計算する Payment(amount, start, end) という新しいタイプを定義しようとしています。

OLAP キューブは、基本的な型 (double、int、booleans など) のみを集約するため、この種の問題をすぐに解決できるようには設計されていません。現時点でこれを行っているベンダーは知りません。

標準的な方法は、毎月の金額を追加することです。

Account Number     MonthlyPayment     Date     
102939              115               01/01/2001
102939              115               02/01/2001
102939              115               03/01/2001
102939              75                04/01/2001
...
102940              107               02/01/2001
102940              107               03/01/2001
102940              107               04/01/2001
...

このソリューションの問題は、元の行と新しい行 (メモリ) の数、および「新しい」テーブルを生成する方法です。

もう 1 つは、SSAS が必須でない場合に、このソリューションにより適切に対処するためにパートナーを組むことができるベンダーを見つけることです。

于 2012-08-01T10:09:58.890 に答える
0

ファクト テーブルで使用されていない場合でも、すべての日付を含む時間ディメンションを追加します。SSASを使用すると、MDX クエリで使用できる月の列を含む時間ディメンションを生成できます。

申し訳ありませんが、あなたが定義している問題を完全には理解していませんでした。テーブルを次のようなものに非正規化する必要があると思います

Account Number     PaymentAmount     Payment Date     
102939              115               01/01/2001     
102939              115               02/01/2001     
102939              115               03/01/2001     
102939              75                04/01/2001     
102940              107               02/01/2001     

これにより、テーブル サイズは犠牲になりますが、その計算が単純化されます。

于 2012-07-31T22:44:19.040 に答える