12c oracle warehousing – voll groovy; ein projektbericht
TRANSCRIPT
|Nürnberg, 20.11.2014
12c Oracle Warehousing – voll Groovy; Ein ProjektberichtDominic Ketteltasche und Bernhard Rosenberger, MT AGJörg Lang, GFKL
Seite 2
GFKL Financial Services AG
GFKL – Ihr Spezialist im Forderungsmanagement
GFKL ist ein führender Outsourcing-Spezialist für modernes Forderungs-management. Das Unternehmen bietet eine umfassende Produktpalette – von der Einziehung von Außenständen bis zum NPL-Ankauf – unter Einsatz von hochautomatisierten Prozessen und intelligenten IT-Systemen.
Die Werte Partnerschaft, Offenheit und Vertrauen stehen dabei stets im Mittelpunkt unseres Handelns.
Die GFKL-Gruppe
Seite 3
GFKL Financial Services AG
Die GFKL-Gruppe: Ein wachstumsstarker Partnermit führender Marktposition
� 20,2 Mrd. Euro Forderungsvolumen, Nr. 3 im Markt
� GFKL Financial Services AG - gegründet 1992
� Langjährige Expertise der einzelnen Gesellschaften:
Über 60 Jahre Erfahrung im Forderungsmanagement
� 8 Unternehmen an 10 Standorten / 1.100 Mitarbeiter
� Eingebunden in ein internationales Netzwerk
� Der Spezialist im Forderungsmanagement, u. a. in:
Telekommunikation, Versicherungen, Banken, Handel, Handwerk
� Bestes Servicer Rating von Standard & Poor‘s:
Unter Top 5 Dienstleistern in Europa
� Neun Mal in Folge Auszeichnung als Top Arbeitgeber
Die GFKL-Gruppe
GFKL Essen(Headquarter)
München
Dresden
Hamburg
DüsseldorfGelsenkirchen
KölnKrefeld
Wuppertal
Potsdam
||
Vorstellung der MT AG
DOAG Konferenz 20144
|
Maßgeschneiderte & zukunftssichere IT-Lösungen
WIR STEIGERN DIE
LEISTUNGS- SOWIE
WETTBEWERBSFÄHIGKEIT
UNSERER KUNDEN.
DURCH SERVICE,
BERATUNG UND
UMSETZUNG.
WIR VERBINDEN DIE
AGILITÄT EINES MITTEL-
STÄNDISCHEN UNTER-
NEHMENS MIT DER
LÖSUNGSKOMPETENZ
GROSSER BERATUNGS-
HÄUSER.
business by integration
DOAG Konferenz 20145
|
FACTS & FIGURES
GESCHÄFTSFORM INHABERGEFÜHRTE AG
HAUPTSITZ RATINGEN
GRÜNDUNGSJAHR 1994
BESCHÄFTIGTE 180 FESTANGESTELLTE MITARBEITER
BETEILIGUNGEN MT-IFS GMBH (RATINGEN), MT-IFS SARL (LUXEMBURG)
business by integration
DOAG Konferenz 20146
|
UNSER PORTFOLIO
BUSINESSINTELLIGENCE SOLUTIONS
SOCIAL BUSINESS SOLUTIONS
MOBILESOLUTIONS
APPLICATIONDEVELOPMENT
INTEGRATION SERVICES
IT SYSTEM SERVICES
DATA INTEGRATION
SELF SERVICE BIMOBILE BI
COLLABORATION
SEARCHSOCIAL
APPS
ABLÄUFELOKALISIERUNG
APEX / ADF
JAVA.NET
STRATEGIE
ARCHITEKTURSAP HANA
MANAGED SERVICES
BETRIEBMIGRATION
7
||
Agenda
DOAG Konferenz 2014
1. Ausgangssituation der GFKL
2. DWH Neubau - Motivation?
3. Zielarchitektur, Werkzeuge und Vorgehensweisen
4. Eingesetzte 12c DB Features
5. ODI Implementierung
6. Rapid KPI Development und Metadatenpflege mit APEX
7. Fußangeln und Stolpersteine
8. Zusammenfassung mit Ausblick
8
|
Ausgangssituation bei der GFKL
� Mehrere Tochtergesellschaften
� Gleiche Branche – verschiedene Business Schwerpunkte
� Unterschiedliche OLTP Systeme in den Gesellschaften
� Herausforderung für zentrales Reporting:
- Semantische Datenintegration
- Vereinheitlichte Datenstrukturen
- Nachvollziehbarkeit der Datenlieferungen
DOAG Konferenz 20149
Aktuelle Reporting-Lösung am Ende des Lebenszyklus angekommen
|
Ausgangssituation bei der GFKL
DOAG Konferenz 201410
Historische DWH Lösung
Monatliche Beladung
Ges.1 Ges. 2 Ges.3 Ges. 4
ETL ETL ETL ETL ETL
CSV CSV CSV CSV
Reporting
Ges. n
ETL
ETL nicht einheitlichCognos Access SQL ODI AS400
z.B. AS400, Oracle, SQL Server
Push Prinzip
||
Agenda
DOAG Konferenz 2014
1. Ausgangssituation der GFKL
2. DWH Neubau - Motivation?
3. Zielarchitektur, Werkzeuge und Vorgehensweisen
4. Eingesetzte 12c DB Features
5. ODI Implementierung
6. Rapid KPI Development und Metadatenpflege mit APEX
7. Fußangeln und Stolpersteine
8. Zusammenfassung mit Ausblick
11
|
DWH Neubau - Motivation?
DOAG Konferenz 201412
Anforderungen an eine neue Reporting-Lösung
Zentral organisierte Datenbereitstellung
Vereinheitlichte Semantik
Feingranulare Datenablage
Offene Architektur
Zukunftsfähige Technologie
Tägliche Beladung sicherstellen
Wiederaufsetzbarkeit
|
DWH Neubau - Motivation?
� Rahmenbedingungen:
- Bisherige Reporting-Lösung am Ende des Lebenszyklus angekommen
- Oracle KnowHow in DB, ODI und APEX im Hause vorhanden
- MT AG als Partner unterstützt in Architekturfragen und Realisierungskompetenz
- DWH Neuaufbau bietet Chance für Einsatz neuester Technologie
- Zentrales DWH verbessert Transparenz in der Unternehmensführung
DOAG Konferenz 201413
Entscheidung: PoC zum Aufbau eines DWH Systems auf Basis Oracle DB 12c und ODI 12c
||
Agenda
DOAG Konferenz 2014
1. Ausgangssituation der GFKL
2. DWH Neubau - Motivation?
3. Zielarchitektur, Werkzeuge und Vorgehensweisen
4. Eingesetzte 12c DB Features
5. ODI Implementierung
6. Rapid KPI Development und Metadatenpflege mit APEX
7. Fußangeln und Stolpersteine
8. Zusammenfassung mit Ausblick
14
|
Zielarchitektur, Werkzeuge und Vorgehensweisen
DOAG Konferenz 201415
MARTSCORE
ETL
Table
STAGE & CLEANSE
KPI - Dashboard
Table
Table Table
Table
StandardReporting
Meta Data LayerReferenzdaten / Workflow-Management / User- und Mandantenverwaltung
STAGE Ges. nAS400
Ges. nSTAGEGes. 4
STAGE Ges. 3
STAGEGes. 2
STAGE Ges. 1
Ad-hoc Analysen
ETL
Cube Cube
Single Source ofTruth
Oracle
Ges. 1
ORACLE
Ges. 2
SQL Server
Ges. 3
ORACLE
Ges. 41:1
|
Zielarchitektur, Werkzeuge und Vorgehensweisen
� RDBMS
- Oracle Partitioning
- Oracle Advanced Compression
- Aktuell kein IN-Memory geplant
- KEINE Multitenant Option
� ETL Werkzeug
� SQL Entwicklungswerkzeuge
� Metadatenpflege undRapid KPI Development
DOAG Konferenz 201416
Oracle Enterprise Edition
|
Zielarchitektur, Werkzeuge und Vorgehensweisen
� Kurze Entwicklungszyklen mit definierten Zielen:
- Phase 1: DWH Neubau mit semantischer Datenintegration
- Phase 2: Historisierung des DWH
- Weitere Phasen: fachlich getriebene Zukunftsthemen
� Agile Vorgehensweise ist gekennzeichnet durch:
- Wechselnde Anforderungen an Projektscope & Planung
- Tägliche Standup Meetings
- Ständige enge Zusammenarbeit von Fachbereich und Entwicklungsteam
- Direkte Absprachen von Mensch zu Mensch
- Einfache und transparente Architektur
DOAG Konferenz 201417
Agilität im Entwicklungsprozeß
||
Agenda
DOAG Konferenz 2014
1. Ausgangssituation der GFKL
2. DWH Neubau - Motivation?
3. Zielarchitektur, Werkzeuge und Vorgehensweisen
4. Eingesetzte 12c DB Features
5. ODI Implementierung
6. Rapid KPI Development und Metadatenpflege mit APEX
7. Fußangeln und Stolpersteine
8. Zusammenfassung mit Ausblick
18
|
Eingesetzte 12c DB Features
� Default Clause
� Mehrere Optionen der Sequenzgenerierung
1. Immer – Wert kann nichtmanuell übersteuert werden
2. Nur wenn Spalte NULL
3. Explizite Sequenzverwendung
� Implizit wird eine Sequence im Table Schema angelegt
� Wo werden Identity Columns eingesetzt?
DOAG Konferenz 201419
Identity Column
Vorteil: Reduzierter Entwicklungsaufwand; Verhalten wie in anderen RDBMS z.B. SQL Server
Create table ...<Colname> NUMBER NOT NULL GENERATED
ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1)
GENERATED BY DEFAULT AS IDENTITY
GENERATED BY DEFAULT AS IDENTITY ON NULL
DEFAULT <SEQNAME>.NEXTVAL NOT NULL
ISEQ$$_92117
SELECT table_name,has_identity FROM dba_tables
WHERE owner = '<MYUSER>' AND table_name LIKE '<MYTABLENAME>%';
ISEQ$$_92117ISEQ$$_92117
|
Eingesetzte 12c DB Features
� Motivation: Verspricht vollautomatische Wartung bei Parent Child Tabellen
DOAG Konferenz 201420
Interval Reference Partitioning
Parent
- Intervall partitionierte Tabellen können als Parent Table für Referenz Partitioning eingesetzt werden.
Insert into parent(key,...) values (1,...);
Insert into parent(key,...) values (2,...);
Insert into parent(key,...) values (3,...);
P1
P2
P3
Child
P1
P2
P3
- Die Child Tabelle erbt automatisch den Partitionsnamen der Parent-Partitionen
- Voraussetzung: Parent-Child FK Constraint enabled!
- Ist auch bei Composite Partitioned Parent möglich !!!
Bei SCD 2 Historisierung nicht anwendbar
|
Eingesetzte 12c DB Features
� Motivation:- Reduktion des Plattenspeicherbedarfs- Angelieferte Daten versprechen hohe Kompressionsraten- Viele Full Table Scans in der CORE Verarbeitung => SpeedUp!- Nutzung des Information Lifecycle Management (ILM), um selten genutzte Segmente auf billigen Storage auslagern zu können
� Maßnahme:- Einsatz von Advanced Compression auf Tablespace Ebene
� Resultate:- Reduktion des Core Volumens um zwei Drittel !!!- Beschleunigte Full Table Scans
DOAG Konferenz 201421
Information Lifecycle Management (ILM) und Advanced Compression
Create tablespace ... DEFAULT COMPRESS FOR ALL OPERATION;
Ready for Heat Maps und Automatic Data Optimization (ADO)ALTER TABLE Orders ILM ADD POLICY tier to low_cost_store;
|
Eingesetzte 12c DB Features
� Monitoring Advanced Compression mit GC Enterprise Manager
DOAG Konferenz 201422
Advanced Compression
Komprimierungsrate 80% im CORE
||
Agenda
DOAG Konferenz 2014
1. Ausgangssituation der GFKL
2. DWH Neubau - Motivation?
3. Zielarchitektur, Werkzeuge und Vorgehensweisen
4. Eingesetzte 12c DB Features
5. ODI Implementierung
6. Rapid KPI Development und Metadatenpflege mit APEX
7. Fußangeln und Stolpersteine
8. Zusammenfassung mit Ausblick
23
|
Installation und Konfiguration der ODI 12c Umgebung
� Der Standalone Agent- dezentraler File und Utility Zugriff- optimierte JDBC Connections
� Der JEE Agent (seit 11c und auf WebLogic Server betrieben)- High Availability und Scalability- Flexibilität durch Connection Pooling- zentrales Management durch OEM Cloud Control- SOA und BI Fusion Middleware Integration
� Der Collocated Agent (seit 12c)- dezentraler File und Utility Zugriff- optimierte JDBC Connections- zentrales Management durch OEM Cloud Control
DOAG Konferenz 201424
Unsere Entscheidung
|
Installation und Konfiguration der ODI 12c Umgebung
DOAG Konferenz 201425
Master Repository
Development Test Production
Dev Exec Exec
Hotfix
Dev
Work Repositories
- Topology (also auch Context)
- Security- Versionierung
- Source & Target Metadaten
- Scenarios- Load plans- Schedules- Logs
|
Vergleich Mapping über View/Logik im ODI 12c
� Vorteile Views
- Komplexe Selects waren zum Einstieg vorhanden, daher Umsetzung mittels Views als Quick-Win
- volle SQL-Möglichkeiten z.B. Kombination Left Outer Join mit OR, with-Clause
� Vorteile ODI
- sichtbare Objekt-Abhängigkeiten im ODI
- Lineage und Impact
� Strittig
- Wartbarkeit/Übersichtlichkeit/Einheitlichkeit
� Fazit:
- Erste Umstellungen auf ODI-Logik zeigen vergleichbare/langsamere Laufzeit
- Kein signifikanter Anreiz auf ODI-Logik umzustellen
DOAG Konferenz 201426
|
ODI 12c SDK und Groovy
� Die Herausforderung
- schnelles Erstellen von vielen gleichartigen Mappings
- Vermeidung von Fehlern durch manuelle Massen-Mappingerstellung
� Die Lösung
- Entwicklung von Groovy-Skripten mit dem ODI 12c SDK zur automatisierten Erstellung von Mappings
- Seit 12c integrierte rudimentäre Groovy-Runtimeumgebung im ODI Studio
� Verfügbare Ressourcen:
- Beispiele und Infos: https://blogs.oracle.com/dataintegration/entry/odi_12c_mapping_sdk_the
- Sonst praktisch kaum Ressourcen zum SDK vorhanden
DOAG Konferenz 201427
|
ODI Check Constraints
� Constraints im ODI und nicht in der DB (Type: Oracle Data Integrator Condition)
� Fehlerhafte Daten
- werden durchgeladen und nicht ausgesteuert
- sollen für Berechnungen und Kennzahlen vorliegen
- werden mittels Update als solche gekennzeichnet
� Static control statt flow control
� Performance-Problematik bei Update-Realisierung durch Mappings
- Angeblich behoben mit ODI 12.1.3
- Aktueller Workaround: Update-SQL durch Procedures
� Zugriff auf E$_-Tabellen über APEX ( geplant)
DOAG Konferenz 201428
|
Packages und LOAD Plans
� Load Plans im ODI 11g seit 11.1.1.5.0 vorhanden
� anstatt einem 3 Party-Jobsteuerungstool
� Einsatz von (globalen) Variablen
� Packages bei Workflows, die als Gesamtheit laufen müssen
� Schachtelung von seriellen/parallelen Steps im Load Plan zur optimierten Lastverteilung und Reduzierung der Laufzeit
DOAG Konferenz 201429
||
Agenda
DOAG Konferenz 2014
1. Ausgangssituation der GFKL
2. DWH Neubau - Motivation?
3. Zielarchitektur, Werkzeuge und Vorgehensweisen
4. Eingesetzte 12c DB Features
5. ODI Implementierung
6. Rapid KPI Development und Metadatenpflege mit APEX
7. Fußangeln und Stolpersteine
8. Zusammenfassung mit Ausblick
30
|
Rapid KPI Development und Metadatenpflege mit APEX - Anforderungen
� an das Reporting
- schnelle Entwicklung der Visualisierung der DWH-Daten ( 40 KPI‘s )
- einfache Nutzung durch den Anwender
- performanter, zentraler und sicherer Zugriff
� an die Metadatenpflege
- Verwaltung von Wertemapping-Tabellen durch Endanwender
- Administration von Referenztabellen
- Konfiguration fachlicher Einstellungen
DOAG Konferenz 201431
|
Rapid KPI Development
� Vorteile
- Schnelle Ergebnisse
- Direkte Visualisierung der KPI‘s auf den Daten, keine weiteren Schnittstellen
- Authentifizierung und Autorisierung via LDAP
- Integrierte Datensicherheit durch Oracle Virtual Private Database
- Einheitliche Darstellung statt Insellösung ( Access, Excel, … )
� Nachteile
- Begrenzte Drilldown-Funktionalitäten
- Keine Slice und Dice-Funktionalitäten
- Begrenzte Wiederverwendbarkeit der Visualisierungen
DOAG Konferenz 201432
|
Rapid KPI Development
DOAG Konferenz 201433
Vordefinierter Drilldown
|
APEX zur Metadatenpflege
� Vorteile
- Einfache und schnelle Entwicklung von über 70 Pflegemasken
- Authentifizierung und Autorisierung via LDAP
- Integrierte Datensicherheit durch Oracle Virtual Private Database
DOAG Konferenz 201434
||
Agenda
DOAG Konferenz 2014
1. Ausgangssituation der GFKL
2. DWH Neubau - Motivation?
3. Zielarchitektur, Werkzeuge und Vorgehensweisen
4. Eingesetzte 12c DB Features
5. ODI Implementierung
6. Rapid KPI Development und Metadatenpflege mit APEX
7. Fußangeln und Stolpersteine
8. Zusammenfassung mit Ausblick
35
|
Fußangeln und Stolpersteine
� Gefundene Probleme in ODI 12.1.2
- Abbruch bei Groovy sofern kein Kontext als Agent-Default festgelegt istLösung: default Context setzen
- Probleme beim Zugriff auf globale Variable vom Typ DateUnser Workaround: Ablage als String-Variable
- nicht eindeutig definierte Spalten bei einer Kombination aus UNION und JOINs: Spaltenname kommt in UNION und in der hinzugejointen Tabelle vor, aber nur ein Zugriff - ODI greift auf beide zu => Syntaxfehler im ausführbaren CodeUnser Workaround: Hilfsviews mit geänderten Spaltennamen
- Update-Mapping per ODI wesentlich langsamer als per SQLUnser Workaround: Update-SQL ausgeführt durch eine ODI-Prozedur
DOAG Konferenz 201436
|
Fußangeln und Stolpersteine
� Gefundene Probleme in ODI 12.1.3
- Ein Groovy Skript funktionierend unter 12.1.2 läuft nicht unter 12.1.3Skript zum Erstellen eines Mappings mit Union All über 4 DataStores bricht ab, da nur 2 Input Connectoren angesprochen werden können
- Kein Scheduling möglich in einem Execution RepositoryUnser Workaround: Nutzung eines Development Repository
� Release unabhängige ODI Probleme
- Falsche NLS Parameter in der ODI SessionUnser Workaround: Alter session on connect
DOAG Konferenz 201437
|
Fußangeln und Stolpersteine
� Probleme mit DB 12.1.0.1
- Verschiedene ORA-600 bei unterschiedlichen DML‘s/DDL‘sUpgrade auf 12.1.0.2 erforderlich-> Upgrade Produktion erfolgreich-> Upgrade Entwicklung nicht erfolgreich siehe ORA-600 beim Purgen
- ORA-600 beim Purge des RecyclebinService Request noch in Bearbeitung
DOAG Konferenz 201438
||
Agenda
DOAG Konferenz 2014
1. Ausgangssituation der GFKL
2. DWH Neubau - Motivation?
3. Zielarchitektur, Werkzeuge und Vorgehensweisen
4. Eingesetzte 12c DB Features
5. ODI Implementierung
6. Rapid KPI Development und Metadatenpflege mit APEX
7. Fußangeln und Stolpersteine
8. Zusammenfassung mit Ausblick
39
|
12c Oracle Warehousing – voll Groovy
DOAG Konferenz 201440
Zusammenfassung
Features Erfahrungen ODI 12c versus OWB 11g
1. Mappings Komplexe Mappings á la OWB sind dank neu eingeführter Component Style KM realisierbar.
Das einfache Generieren von Zieltabellen wurde gelegentlich vermisst.
2. Groovy Scripting Language
Automatisches Generieren von Mappings á la TCL Script ist mit Groovy möglich.
Groovy überrascht mit einfacherer Handhabbarkeit als die gewöhnungsbedürftige TCL Syntax.
|
12c Oracle Warehousing – voll Groovy
DOAG Konferenz 201441
Zusammenfassung
Features Erfahrungen ODI 12c versus OWB 11g
3. LOAD Plans Modulares Konzept mit Variablen, Procedures und Packages erlaubt flexible Implementierung wie unter Oracle Workflow.
4. ODI und Performance
ODI wie OWB generieren SQL Code. KM können angepasst werden falls erforderlich.
5. SCD2 Historisierung
Schönes Beispiel zur Veranschaulichung wie KM die „Komplexität“ reduzieren und damit die Produktivität bei der ETL Entwicklung steigern helfen.Keine Terminierung von gelöschten Daten durch das KM.
6. Metadaten Repository
Laufzeitinformationen ausreichend für Entwicklung und Fehlersuche – bisher keine selbstgeschriebenen RepositoryQueries erforderlich.
|
12c Oracle Warehousing – voll Groovy
DOAG Konferenz 201442
Ausblicke
Weitere Ziele im Projekt
Inbetriebnahme des Information Lifecycle Managements (ILM), um in der Heat Map identifizierte Segmente mit seltenem Datenzugriff auf kostengünstigere Speicherbereiche auszulagern. Ggfs. in Kombination mit Nutzung von Partial Partition Indexes
Teilweise in View gekapselte ETL Logik in ODI Mappings umformen
Nutzung von „Out-of-Place Materialized View Refresh“ bei der Realisierung von (partitionierten) Data Marts
Datapump Staging unter Verwendung des „LKM Oracle to Oracle Datapump Plus“ nach zusätzlichen Erweiterungen um Tabellenauswahl und DISABLE_ARCHIVE_LOGGING:Y (kein Redo beim Import)
| DOAG Konferenz 201443
ALLE VORTRÄGE
| DOAG Konferenz 201444
15:00 - 15:45 Sydney
Datenmodellierung ist langweilig, lassen Sie Datamodeler das machen
Oleg Kiriltsev
18.11.14
12:00 - 12:45Sydney
Das nächste Duet(t): APEX und SAP.
Niels deBruijn
19.11.14
16:00 - 16:45Singapur
Speichersparende XML Verarbeitungmit StAX und JAXB
WolfgangNast
19.11.14
16:00 - 16:45Istanbul
"Echtes" Single Sign On mit APEX realisieren.
Niels deBruijn
19.11.14
09:00 - 09:45Sydney
Five Fingers Death PunchOliver Lemm
20.11.14
10:00 - 10:45Helsinki
12c Oracle Warehousing voll Groovy. Ein Projektbericht.
Rosenberger Ketteltasche20.11.14
12:00 - 12:45Istanbul
Dateien per Drag & Drop in APEX Applikationen ablegen
FranziskaHöcker
20.11.14
15:00 - 15:45Oslo
Ist Gradle auch für die APEX-Projekte?Oleg Kiriltsev
20.11.14
15:00 - 15:45Istanbul
Tune Up Your APEXOliver Lemm
20.11.14
|
Telefon:Telefax:
E-Mail:www.mt-ag.com
Vielen Dank…
+49 2102 309 61-0+49 2102 309 61-10
[email protected]; [email protected]; [email protected]
Dominic Ketteltasche und Bernhard Rosenberger, MT AGJörg Lang, GFKL