/ / Model wymiarowy do przechwytywania wagi sprzedaży w różnych harmonogramach dat - serwer sql, wzorce projektowe, hurtownia danych, modelowanie wymiarowe, schemat gwiaździsty

Model wymiarowy do przechwytywania Ważenie sprzedaży w różnych harmonogramach - serwer sql, wzorce projektowe, hurtownia danych, modelowanie wymiarowe, schemat gwiaździsty

Mamy wymóg opracowania strategii pokazującej, że dane dotyczące przychodów ze sprzedaży ważone są według dat inaczej w różnych harmonogramach.

Obecnie mamy tabelę FactSales z ziarnemjednego rzędu na zamówienie z miarą kwoty sprzedaży. Mamy oddzielne wymiary DimDate i DimTime oraz wymiar DimBusinessUnit z jednym wierszem dla każdej jednostki w organizacji.

W DimDate mamy flagę na najważniejsze święta w USA, więc wiemy, że można się spodziewać zmniejszonych przychodów ze sprzedaży. Ta flaga miałaby zastosowanie globalnie.

Pytanie brzmi, że różne jednostki biznesowe mogąmają wolne dni dochodów. Na przykład poniedziałki mogą być powolne w jednej jednostce biznesowej, aw piątek powolne w drugiej. Do analizy pożądane jest uchwycenie tych różnych harmonogramów za pomocą flagi lub ważenia.

Ostatecznie może to być odzwierciedlone jako przewidywana kwota sprzedaży w obliczonej mierze.

Jak mogę najlepiej dodać tę wagę? Czy należy do wymiaru Data, wymiaru Jednostki Biznesowej, czy może do zdegenerowanego wymiaru w tabeli Faktów, lub czegoś zupełnie innego?

Odpowiedzi:

0 dla odpowiedzi № 1

DimDate prawdopodobnie nie jest dobrym miejscem do przechowywaniata informacja, ponieważ każda jednostka biznesowa (BU) może mieć inny harmonogram, więc całkiem możliwe, że będziesz musiał mieć flagę w każdej z dat dla kombinacji BU i wolnego dnia. Na przykład, jeśli BU1 i BU2 mają wolny dzień w poniedziałek, każdy poniedziałek w DimDate będzie musiał wykazać, że jest wolny dla BU1 i BU2.

BU Dimension może być lepszym miejscemharmonogram jest specyficzny dla każdej jednostki. Więc możesz zdecydować się na przedłużenie swojej słabości, dodając 7 dni jako atrybuty i oznaczając je jako wolne lub nie używając na przykład fałszywych lub prawdziwych flag. Mógłbyś również mieć jeden atrybut z maską bitową, tj. 0100000, gdzie pozycja wartości odpowiada dniu, tj. M T W T F S S i 0 nie jest wolny, a 1 jest wolny, więc w tym przykładzie T jest dniem wolnym.

Pozwoli to również śledzić historię, jeśli wybierzesz odpowiedni proces SCD.

Inną opcją może być osobny Wymiar, tj. DimSchedule i Factless Fact Table.

http://www.kimballgroup.com/data-warehouse-business-intelligence-resources/kimball-techniques/dimensional-modeling-techniques/factless-fact-table/

Mam nadzieję, że to pomoże.


0 dla odpowiedzi nr 2

Twoja sytuacja wydaje się być taka sama jak problem z wieloma kalendarzami krajowymi opisany przez Kimball:

http://www.kimballgroup.com/1998/12/think-globally-act-locally/

Tam, gdzie Kimball opisuje wakacje w tabeli po lewej stronie, możesz również dodać flagę „wolny dzień”.