Seitdem das Supportende für den OWB offiziell bekannt gemacht wurde, ist der Oracle Data Integrator (ODI) das ETL-Tool der Wahl in der Oracle-Welt. Die Entwicklung ist zu der Version 12 fortgeschritten, die einige Änderungen und Verbesserungen gebracht hat. Die GUI hat sich dem OWB noch weiter angenähert, jedoch stehen einige Möglichkeiten zur Verfügung, die der OWB so nicht bot.
In diesem Eintrag wollen wir uns mit der Implementierung von Slowly Changing Dimensions im ODI beschäftigen.
Der Oracle Data Integrator
Der Oracle Data Integrator (ODI) bietet eine elegante Lösung, um Slowly Changing Dimensions zu befüllen. Das grundsätzliche Vorgehen entspricht dabei dem Vorgehen in ODI 11, jedoch wurde die Konfiguration der Zieltabelle überarbeitet.
Die Dimensionstabelle wird zunächst wie jedes andere Modell auch per "reverse engineer" im ODI angelegt.
Schritt 1 - Dimensionstabelle konfigurieren
Zunächst muss die Dimensionstabelle als SCD eingestellt werden. Dazu öffnet man den Data Store und stellt "OLAP Type" auf "Slowly Changing Dimension".
Schritt 2 - Spalten der Dimensionstabelle konfigurieren
Die Spalten der Dimensionstabelle findet man im Reiter "Attributes":
Hier wird für jede Spalte der Wert "SCD Behavior" eingestellt.
Für eine SCD Typ 2 müssten die Spalten wie folgt eingestellt werden:
Im Beispiel sieht das wie folgt aus:
Schritt 3 - IKM importieren
Das IKM für Slowly Changing Dimensions ist standardmäßig in ODI 12 nicht mehr vorhanden. Es kann jedoch aus dem zu ODI mitgelieferten XML importiert werden. Zu finden ist das Knowledge Module im Ordner $ORACLE_HOME/odi/sdk/xml-reference.
Hier ist das IKM entsprechend dem Typ der Zieldatenbank zu wählen. Für eine Oracle-Datenbank wäre es z. B. die "IKM Oracle Slowly Changing Dimension".
Schritt 4 - Mapping erstellen
Ist die Zieltabelle konfiguriert, kann sie ganz normal im Mapping eingebunden werden.
In der Zieltabelle muss jetzt der Integration Type "Slowly Changing Dimension" ausgewählt werden.
Nun sollte im Physical Layer das IKM geprüft werden:
Dieses IKM setzt zwingend ein CKM voraus.
Sollte sich hier kein CKM auswählen lassen, so muss es, genau wie das IKM, zunächst importiert werden (siehe Schritt 3).
Damit ist die Implementierung der SCD2-Beladung abgeschlossen und kann getestet werden.
Erfahren Sie in einem der nächsten Blogbeiträge mehr dazu, wie sich das IKM Slowly Changing Dimension noch weiter auf Ihre Umgebung anpassen lässt.