Slowly Changing Dimensions

Unter dem Begriff Slowly Changing Dimensions (deutsch: sich langsam verändernde Dimensionen) werden im Data-Warehousing Methoden zusammengefasst, um Änderungen in Dimensionstabellen zu erfassen und gegebenenfalls historisch zu dokumentieren. Im Wesentlichen unterscheidet man drei Verfahren, die nach Kimball in Typen unterteilt werden.[1] Allen gemein ist, dass vorhandene Datensätze über den Primärschlüssel mit neuen Datensätzen verbunden werden, um Änderungen in der Tabelle zu speichern. Technische Schlüssel sind nicht Gegenstand des Artikels.

Typ 0

Der Typ 0 ist eine passive Methode. Auf eine Historisierung im eigentlichen Sinn wird verzichtet. Über den fachlichen Primärschlüssel (PK für Primary Key) wird in der Dimensionstabelle nachgeschlagen, ob der PK des neuen Datensatzes bereits vorhanden ist. Ist dies der Fall, wird nichts unternommen – die ersten bekannten Werte werden beibehalten. Anderenfalls wird ein neuer Datensatz angefügt.

Typ 1

Der Typ 1 ist die trivialste Methode. Auf eine Historisierung wird verzichtet. Über den fachlichen Primärschlüssel (PK für Primary Key) wird in der Dimensionstabelle nachgeschlagen, ob der PK des neuen Datensatzes bereits vorhanden ist. Ist dies der Fall, wird der entsprechende Satz mit den neuen Daten überschrieben. Ansonsten wird ein neuer Datensatz angefügt.

Typ 2

Typ 2 ist ein komplexes Verfahren, um Dimensionstabellen oder einzelne Attribute der Tabelle zu historisieren, um zu jedem Zeitpunkt die dann gültigen Ausprägungen der Tabelle ermitteln zu können. Dies wird erreicht, indem zu jedem Datensatz ein Gültigkeitsintervall abgelegt wird. Um die Eindeutigkeit des PK zu gewährleisten, ist dieser um zumindest eines der Intervallattribute zu erweitern. In der Regel wird ein unten abgeschlossenes Intervall verwendet, indem der gültige Satz als unendlich gültig gekennzeichnet ist. Grundlage ist der Vergleich der vorhandenen Datensätze mit den neuen Datensätzen aus einer vollständigen und periodischen Extraktion über den fachlichen Primärschlüssel ohne das Gültigkeitsattribut oder die -attribute. Hierbei sind drei Fälle zu unterscheiden:

  • Der neue Datensatz ist noch nicht in der Dimension vorhanden.
Vorgehen: Der Datensatz wird angefügt.
  • Der in der Dimension vorhandene Datensatz ist nicht in der gültigen Extraktion vorhanden.
Vorgehen: Der Datensatz wird von unendlich gültig auf gültig bis gestern gesetzt.
  • Der neue Datensatz kann über den PK einem Datensatz aus der Dimensionstabelle zugeordnet werden.
Vorgehen: Die zu historisierenden Attribute werden miteinander verglichen.
  • Es werden keine Änderungen festgestellt: Der Vorgang ist beendet. Der nächste Datensatz wird bearbeitet.
  • Es werden Änderungen festgestellt: Der gültige Dimensionsdatensatz wird auf gültig bis gestern gesetzt. Der neue Datensatz wird mit gültig ab heute und unendlich gültig eingefügt.

Typ 3

Bei Typ 3 wird die Tabelle verbreitert. Das heißt, es wird ein neues Attribut angefügt. Dieses Verfahren kann zum Beispiel bei Umschlüsselungen von Vertriebsregionen oder Produktgruppen eingesetzt werden. Der Einsatz dieser Methode ist nur bei sehr spezifischen Änderungen ratsam.

Beispiele

Zum besseren Verständnis soll folgendes Beispiel die unterschiedlichen Verfahrensweisen verdeutlichen. Gegeben sei eine Dimensionstabelle Produkt. Die Attribute GueltVon und GueltBis sind nur für Typ 2 relevant und mindestens auch Teil des PK.

PNummer (PK)PNamePGruppeGueltVonGueltBis
1GlenfarclasWhisky01.01.200231.12.9999
2Jim BeamWhisky01.01.200231.12.9999
3KrombacherBier01.01.200231.12.9999

aus dem operativen System wird am 10. August 2005 folgender Datensatz extrahiert:

PNummer (PK)PNamePGruppe
2Jim BeamWhiskey

nach Typ 0 wird der neue Datensatz ignoriert, da der Primärschlüssel bereits in der Zieltabelle vorhanden ist:

PNummer (PK)PNamePGruppeGueltVonGueltBis
1GlenfarclasWhisky01.01.200231.12.9999
2Jim BeamWhisky01.01.200231.12.9999
3KrombacherBier01.01.200231.12.9999

nach Typ 1 wird der zweite Datensatz überschrieben:

PNummer (PK)PNamePGruppeGueltVonGueltBis
1GlenfarclasWhisky01.01.200231.12.9999
2Jim BeamWhiskey01.01.200231.12.9999
3KrombacherBier01.01.200231.12.9999

nach Typ 2 wird der zweite Datensatz historisiert:

PNummer (PK)PNamePGruppeGueltVon (PK)GueltBis
1GlenfarclasWhisky01.01.200231.12.9999
2Jim BeamWhisky01.01.200209.08.2005
2Jim BeamWhiskey10.08.200531.12.9999
3KrombacherBier01.01.200231.12.9999

nach Typ 3 wird ein neues Attribut neuePGruppe eingepflegt:

PNummer (PK)PNamePGruppeneuePGruppeGueltVonGueltBis
1GlenfarclasWhiskyWhisky01.01.200231.12.9999
2Jim BeamWhiskyWhiskey01.01.200231.12.9999
3KrombacherBierBier01.01.200231.12.9999

Einzelnachweise

  1. Ralph Kimball, Margy Ross: The Data Warehouse Toolkit. The Complete Guide to Dimensional Modeling. 2. Auflage. John Wiley & Sons, New York u. A. 2002, ISBN 0-471-20024-7
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.