1

Wir müssen eine Strategie entwickeln, mit der Umsatzdaten, die nach Datum gewichtet sind, in unterschiedlichen Zeitplänen unterschiedlich dargestellt werden.Dimensionsmodell für die Erfassung der Verkaufsgewichtung für verschiedene Terminpläne

Wir haben derzeit eine FactSales-Tabelle mit einer Körnung von einer Zeile pro Auftrag mit dem Maß der Verkaufsmenge. Wir haben separate DimDate- und DimTime-Dimensionen und eine DimBusinessUnit-Dimension mit einer Zeile für jede Entität innerhalb der Organisation.

In DimDate haben wir eine Flagge für die großen US-Urlaub, so dass wir wissen, dass reduzierte Umsatzerlöse erwartet werden. Dieses Flag würde global gelten.

Die Frage ist, dass verschiedene Geschäftseinheiten haben können langsamen Umsatz Tagen. Zum Beispiel könnte der Montag in einer Geschäftseinheit langsam sein und der Freitag in einer anderen. Zur Analyse ist es wünschenswert, diese verschiedenen Zeitpläne mit einer Flagge oder einer Gewichtung zu erfassen.

Letztendlich wird dies wahrscheinlich als prognostizierte Verkaufsmenge in einem kalkulierten Maß reflektiert.

Wie kann ich diese Gewichtung am besten hinzufügen? Gehört es in die Date-Dimension, Business Unit-Dimension oder vielleicht eine degenerierte Dimension in der Fakttabelle oder etwas ganz anderes?

Antwort

0

Die DimDate ist wahrscheinlich nicht ein guter Ort, um diese Informationen zu halten, da jede Business Unit (BU) einen anderen Zeitplan haben kann, also müssen Sie wahrscheinlich eine Flagge an jedem der Daten pro Kombination von BU haben und ein langsamer Tag. Wenn zum Beispiel BU1 und BU2 am Montag einen langsamen Tag haben, muss jeder Montag in Ihrem DimDate einen Weg zeigen, der für BU1 und BU2 langsam ist.

Die Dimension BU ist möglicherweise ein besserer Ort, da der Zeitplan für jede Einheit spezifisch ist. Sie können also Ihr dim erweitern, indem Sie 7 Tage als Attribute hinzufügen und sie als langsam kennzeichnen oder nicht, indem Sie zum Beispiel falsche oder echte Flags verwenden. Sie könnten auch ein Attribut mit der Bitmaske haben, d. H. 0100000, wobei die Position des Wertes dem Tag entspricht, d. H. M T W T F S S und 0 ist nicht langsam und 1 ist langsam, so dass T in diesem Beispiel ein langsamer Tag ist.

Damit können Sie auch einen Verlauf verfolgen, wenn Sie einen relevanten SCD-Prozess auswählen möchten.

Eine andere Option kann eine separate Dimension sein, d. H. DimSchedule und Factless Fact Table.

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

Ich hoffe, das hilft.

+1

7 Tage Flaggen ist in Ordnung, aber nicht ein bisschen Maske. Es würde sich nicht gut in Endbenutzer-Tools übersetzen lassen. –

+0

True, Bitmaske ist ein Beispiel für ein gepacktes Attribut und dessen etwas, das ich auch vermeiden würde. Allerdings ging es um mögliche Lösungen, und die Bitmaske gehört sicherlich dazu. –