13.04.2012 2
� > 220 Festangestellte Mitarbeiter> 80 Freie Mitarbeiter
� Full-Service-Dienstleistung für alle Phasen des Software-Lifecycle
� Technologiekompetenz und Premium-Partnerschaften mit den Global-Key-Playern der IT-Industrie wie Oracle, IBM, Microsoft und SAP
� Themen- und Lösungs-Know-how in den Kerndisziplinen des Adaptive Enterprise
Als innovativer Beratungs- und IT-Dienstleister zählt die MT AG zu einem der bekanntesten hersteller-unabhängigen IT-Consulting- und Projektanbietern in Deutschland.
Neben einem umfangreichen Portfolio von maßgeschneiderten Lösungen bietet die MT AG ein umfangreiches Know-how beim Design und der Implementierung komplexer IT-Projekte. Beginnend bei der strategischen IT-Beratung über die Architektur, Entwicklung und Implementierung von spezifischen Branchenlösungen bis zum Betrieb der Systeme.
Die Produkte und Beratungsleistungen der MT AG liefern dabei stets einen direkten Mehrwert für den Kunden in Form von Effizienzsteigerungen, Kostenreduktionen oder Erlöszuwächsen.
MT AG - Enabling the Adaptive Enterprise
MT AG managing technologyDaten und Fakten
� Inhabergeführte AGAktienkapital 1.500.000 €
� HauptsitzRatingen
StandorteDortmund, Hamburg, Frankfurt, Luxemburg
TochtergesellschaftenMT-ifs GmbH, MT-ics GmbH
� Gründung 1994
Agenda
� Nachteile manueller DWH Entwicklung
� Idee: generische OWB Mapping Entwicklung
� OWB Mapping Generator
� Vorführung
� Framework Architektur
� Definition von Templates
� Mapping Generierung
� Ausblick
3ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Manuelle DWH Entwicklung
� Gleichartige ETL-Prozesse in vielen Projekten
4ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
� Staging Area Aufbau� Historisierung im Core
Manuelle DWH Entwicklung
� Gleichartige ETL-Prozesse in vielen Projekten
� Identische Logiken in mehreren Mappings
5ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
� Datenbereinigung� SCD2
Manuelle DWH Entwicklung
� Gleichartige ETL-Prozesse in vielen Projekten
� Identische Logiken in mehreren Mappings
� Manuelle Erstellung einzelner Objekte
6ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
� Operatoren, Connections� Ausdrücke, Eigenschaften
Manuelle DWH Entwicklung
� Gleichartige ETL-Prozesse in vielen Projekten
� Identische Logiken in mehreren Mappings
� Manuelle Erstellung einzelner Objekte
� Umfangreiche Anpassung bei neuen Anforderungen
7ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
� Neue Spalte� Änderung der Logik
Manuelle DWH Entwicklung
� Gleichartige ETL-Prozesse in vielen Projekten
� Identische Logiken in mehreren Mappings
� Manuelle Erstellung einzelner Objekte
� Umfangreiche Anpassung bei neuen Anforderungen
� Testen jedes einzelnen Mappings
8ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Manuelle DWH Entwicklung
� Gleichartige ETL-Prozesse in vielen Projekten
� Identische Logiken in mehreren Mappings
� Manuelle Erstellung einzelner Objekte
� Umfangreiche Anpassung bei neuen Anforderungen
� Testen jedes einzelnen Mappings
� Hoher Entwicklungsaufwand (auch bei Änderungen)
� Fehler nicht vermeidbar
� Intensives Testing erforderlich
9ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Generische ETL Entwicklung mit dem OWB?
Problem: Mapping ohne konkrete Objekte nicht möglich
10ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
OWB Mapping Generator – Lösungsansatz
11ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Manuelle Entwicklung
OWB Mapping Generator
Anforderung
Anforderung
OWB Mapping Generator – Lösungsansatz
12ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Manuelle Entwicklung
OWB Mapping Generator
AnforderungOWB Mapping
Design
AnforderungGenerisches
Design
OWB Mapping Generator – Lösungsansatz
13ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Manuelle Entwicklung
OWB Mapping Generator
AnforderungOWB Mapping
DesignOWB Mapping
Entwicklung
AnforderungGenerisches
DesignTemplate
Entwicklung
Kein TCL Skript!
OWB Mapping Generator – Lösungsansatz
14ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Manuelle Entwicklung
OWB Mapping Generator
AnforderungOWB Mapping
DesignOWB Mapping
EntwicklungOWB Mapping
AnforderungGenerisches
DesignTemplate
Entwicklung
Kein TCL Skript!
OWB Mapping Generator – Lösungsansatz
15ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Manuelle Entwicklung
OWB Mapping Generator
OWB Mappings
AnforderungOWB Mapping
DesignOWB Mapping
EntwicklungOWB Mapping
AnforderungGenerisches
DesignTemplate
EntwicklungSTART
Kein TCL Skript!
OWB Mappings
OWB Mapping Generator – Vorführung
Tabellen importieren
Expert starte Expert starten
Namenskonventionen übernehmen
16ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
OWB Mapping Generator – Überblick
� Auf Oracle und OWB basierendes Framework
� Standard-Implementierung mit Oracle 11.2 und OWB 11.2 Basic ETL
� Keine zusätzlichen Lizenzkosten
� Anpassung für andere Versionen möglich
� Vordefinierte Templates
� Datenbankobjekte
� Definitions- und Steuer-Tabellen
� Packages zum Generieren vom TCL Skript
� OWB Objekte
� Process Flows mit Hilfsroutinen
� Expert zum Generieren von Mappings
23ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Framework Architektur
24ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Definitions-tabellen
Steuer-tabellen
Konventions-tabellen
TCL Skript
Benutzer-eingaben
Logdatei
Expert
Packages
Server
OWB
DB
Mappings
Definition von Templates
� Deklarativ
� Generisch
� Dynamisch
� Allgemeingültig und wiederverwendbar
� Speicherung in DB Tabellen
� Verwendung der OMB Plus Syntax
� Einbindung von Benutzerdefinierten Funktionen
25ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Definition von Templates – Datenmodell
26ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Operator
Definition von Templates – Datenmodell
27ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Operator
Attribute
Definition von Templates – Datenmodell
28ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Property
Operator
Attribute
Definition von Templates – Datenmodell
29ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Property
Operator
Attribute
Connection
Definition von Templates für Fortgeschrittene
� Weitere Tabellen
� Ausnahmen für Attribute
� Ausnahmen für Eigenschaften
� Benutzerdefinierte Funktionen
� Abbildung komplexer Logiken
� z.B. in Abhängigkeit von Datentypen, Constraints, anderen Spalten
� Connections zur Generierungszeit
� Definition dynamischer Connections
� z.B. Joinen jeder Datum-Spalte mit einer Check-View
30ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Mapping Generierung – Namenskonventionen
� Framework Voraussetzungen
� Datenbankobjekte folgen einer Namenskonvention
� „Tabellenstamm“ in allen OWB Modulen vorhanden
SOURCE STAGE CORE
� Reguläre Ausdrücke für Namenskonventionen
� Vordefinierte dynamische Parameter
� Definition weiterer Parameter möglich
� Abbildung beliebiger Konventionen
31ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
SRC_PRODUCT STG_PRODUCT PRODUCT
!
Mapping Generierung – Namenskonventionen
Namenskonventionen der Datenbankobjekte
Namenskonventionen der OWB-Objekte
32ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Umgebungbeschreiben
Generierungs-regeln
festlegen
Mapping Generierung – DB Packages
Packages
� OMB_MAPPING.CREATE_EMPTY_MAPPINGS
� OMB_MAPPING.CREATE_OPERATORS
33ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
OWB Mapping Generator – Zusammenfassung
� Technische Zusammenfassung
� Generische Templates in Tabellen
� Keine TCL-Implementierung, das Skript wird vom Framework generiert
� Ergebnis und Nutzen
� Beschleunigung der Entwicklung
� Vereinheitlichung des Codes
� Reduzierung des Testaufwands
� Flexibilität gegenüber Neuanforderungen
� Minimierung des Wartungsaufwands
� Wiederverwendbarkeit in neuen Projekten
34ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Zeit
Anz.Mappings
Generator
Manuell
Ausblick
� Geplante Erweiterungen
� Frontend für Anlage von Templates
� Automatisiertes Joinen mit beliebigen Tabellen
� Automatisiertes Mappen von ungleichnamigen Spalten
� Implementierung weiterer Templates (SCD3, Error Handling)
� OWB Process Flow Generator
� Generische Templates
� Hierarchiestufen für abhängige Prozesse
� Automatische Generierung der gesamten Hierarchie
35ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Anhang - Definition von Templates
Operatoren
37ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Typ
Name
Modul Id
Anhang - Definition von Templates
Eigenschaften
� Operatoreigenschaft� Statischer Wert
38ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Operator
Attribut
Gruppe Eigenschaft
Wert
Anhang - Definition von Templates
Eigenschaften
� Gruppeneigenschaft
39ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Operator
Attribut
Gruppe Eigenschaft
Wert
Anhang - Definition von Templates
Eigenschaften
� Attributeigenschaft / Dynamischer Wert
40ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Operator
Attribut
Gruppe Eigenschaft
Wert
Anhang - Definition von Templates
Eigenschaften
� Attributeigenschaft / Dynamischer Parameter
41ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Operator
Attribut
Gruppe Eigenschaft
Wert
Anhang - Definition von Templates
Eigenschaften
� Benutzerdefinierte Funktion
42ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Operator
Attribut
Gruppe Eigenschaft
Wert
Anhang - Definition von Templates
Übergänge
43ETL-Industrialisierung mit dem OWB Mapping Generator13.04.2012
Id
Operatoren
Gruppen
TypAttribute