Data Warehouse Design Techniques – Conformed Dimensions
In meinem letzten Blogbeitrag habe ich Ihnen einige der am weitesten verbreiteten fortgeschrittenen technischen dimensionalen Designtechniken vorgestellt. In den nächsten Wochen werde ich Details zu jeder der Designtechniken bereitstellen.
Konforme Abmessungen
Konforme Abmessungen sind diejenigen Abmessungen, die so ausgelegt sind, dass die Dimension über viele Faktentabellen in verschiedenen Fachbereichen des Lagers verwendet werden kann. Es ist zwingend erforderlich, dass der Designer diese Dimensionen plant, da sie die Konsistenz der Berichterstattung über die Themenbereiche hinweg gewährleisten und die Entwicklungskosten dieser Themenbereiche durch die Wiederverwendung vorhandener Dimensionen senken. Die Datumsdimension ist ein hervorragendes Beispiel für eine angepasste Dimension. Die meisten Lager haben nur eine einzige Datumsdimension, die im gesamten Lager verwendet wird.
Konforme Dimension – Herausforderungen
- Strukturelle Unterschiede – In einigen Fällen haben Sie Quelltabellen, die unterschiedliche Tabellenstrukturen enthalten:
- zusätzliche oder fehlende Spalten
- Spalten mit unterschiedlichen Datentypen
- Spalten mit unterschiedlichen Namen, die dieselben oder ähnliche Daten enthalten
Diese Unterschiede können normalerweise leicht behoben werden, aber gelegentlich kann dies schwierig sein, da die Unterschiede von den Geschäftsinhabern der Quellsysteme gelöst und vereinbart werden müssen. Ohne Lösung dieser Probleme werden Problemumgehungen implementiert, die im Laufe der Zeit Wartungs- und Berichtsprobleme verursachen.
Beachten Sie die Herausforderungen bei der Kombination der beiden folgenden Produkttabellen. In der Tabelle PRODUCT_RETURN ist der Primärschlüssel PRODUCT_SKU, das Feld PRODUCT_NAME ist als varchar(100), PRODUCT_DESCRIPTION als varchar(100) und PRODUCT_PRICE als number(5,2) definiert.
In der Tabelle PRODUCT_SALES ist der PRODUCT_UPC als Primärschlüssel definiert. Glücklicherweise stimmt dieses Feld mit dem Feld PRODUCT_UPC in der Tabelle PRODUCT_RETURN überein. Das Feld PROD_NAME ist als varchar(50) , PROD_DESCRIPTION als varchar(150) und PROD_PRICE als number (7,2) definiert, die sich alle von der Tabelle PRODUCT_RETURN unterscheiden. Datenprofilierung und Datenüberprüfung sind erforderlich, um sicherzustellen, dass die Daten zwischen den beiden Tabellen übereinstimmen. Die Tabelle PRODUCT_SALES enthält keine Spalte für PRODUCT_CATEGORY. Ein letzter Unterschied ist PROD_TYPE , PROD_ACTIVE_FL , PROD_START_DT und PROD_END_DT . Diese Felder werden verwendet, um den Änderungsverlauf eines Produkts zu erfassen, das nicht von der Tabelle PRODUCT_RETURN erfasst wird.
Um diese Probleme zu lösen und die Tabellen anzupassen, würde ich die folgende angepasste Produktdimension vorschlagen.
- Inhaltsunterschied – Manchmal werden Sie feststellen, dass der in den Tabellen gespeicherte Inhalt unterschiedlich ist:
- Textfelder enthalten Großbuchstaben im Vergleich zu Großbuchstaben
- Spalten enthalten unterschiedliche / fehlende Daten
Die Daten in der Tabelle PRODUCT_RETURN scheinen mit einigen bemerkenswerten Ausnahmen mit denen in der Tabelle PRODUCT_SALES übereinzustimmen. Die Produktnamen stimmen nicht immer zwischen den beiden Tabellen überein, und die UPCs wiederholen sich in der Tabelle PRODUCT_SALES. Daher müssen wir sicherstellen, dass die Artikel in der Tabelle PRODUCT_RETURN historisch zuverlässig sind und als Attribut in der neuen Dimension verwendet werden können. Bevor Sie fortfahren, müssen diese Probleme vor den Product Owner des Quellsystems gebracht werden, um eine einvernehmliche Lösung für diese Datenanomalien zu finden.
PRODUCT_RETURN
PRODUKTE_VERKAUF
Konforme Dimensionstypen
- Gemeinsame Dimension – wenn eine Faktentabelle dieselbe logische Dimension wie eine andere Faktentabelle in einem anderen Stern oder Data Mart hat. Die Datumsdimension ist ein Beispiel für eine gemeinsame Dimension.
- Konformes Rollup – ist eine Teilmenge von Daten aus einer Dimensionstabelle, und die Teilmenge von Daten hat dieselbe Struktur und denselben Inhalt. Ein Beispiel für eine Rollup-Dimension finden Sie in der unten gezeigten Monatsdimension. Wie Sie sehen, kann die Monatsdimension mit der Datumsdimension verknüpft und zum “Zusammenrollen” von Daten von einem einzelnen Tag auf einen Monat verwendet werden.
- Überlappende Dimension – sind die Quelltabellen und Dimensionen, die über einige überlappende Attribute übereinstimmen. In den meisten Fällen können die überlappenden Felder in eine neue Dimension verschoben werden, um Überlappungen zu vermeiden, ein einfacher zu wartendes Modell zu erstellen und Änderungen in den Beziehungen im Laufe der Zeit über eine Faktentabelle zu verfolgen.
Konforme Dimensionen – Vorteile
Konforme Dimensionen sind die Grundlage, auf der flexible und skalierbare Dimensionsmodelle aufgebaut werden. Ein Datenmodellierer muss die Konformität in seinem Design planen, indem er sicherstellt, dass Schlüsseldimensionen des Unternehmens konforme Dimensionen sind, die im Laufe der Zeit um neue Attribute erweitert werden können. Dimensionsmodelle, denen angepasste Dimensionen fehlen, können nur einfache Fragen für den jeweiligen Data Mart beantworten, für den die Dimension erstellt wurde. Bei ordnungsgemäßem Design können und werden angepasste Dimensionen von mehreren Data Marts verwendet werden, wodurch der Kunde einen Einblick in seine Daten erhält, der seine ursprünglichen Erwartungen übertrifft.