Get Groovy with ODI. Andreas Nobbmann Trivadis AG Basel



Ähnliche Dokumente
Automatische Generierung der ETL-Prozesse: OWB vs. ODI

Oracle Data Integrator

Modernisierung, Migration, Greenfield: DWH-Automatisierung mit dem ODI

Oracle Data Integrator Ein Überblick

DWH Automatisierung mit Data Vault 2.0

Das generierte Data Warehouse

ETL-Industrialisierung mit dem OWB Mapping Generator. Irina Gotlibovych Senior System Beraterin

Oracle Data Warehouse Integrator Builder Ein Selbstversuch

Das ungleiche Paar Koexistenz von OWB und ODI

DWH-Automatisierung mit ODI12c - Entwicklung und Deployment - Stefan Raabe C.ST Raabe Hamburg

ZWISCHEN ALBTRAUM UND OPTIMALER PERFORMANCE

Wie modelliere ich mein Core Data Warehouse?

Oracle DWH Konferenz Neuss

GESTERN OWB, HEUTE ODI

Vollständig generisches DWH für kleine und mittelständische Unternehmen

THEMA: SAS DATA INTEGRATION STUDIO FÜR MEHR TRANSPARENZ IM DATENMANAGEMENT EVA-MARIA KEGELMANN

OWB 10.2 Experts im Einsatz: Automatisierung von Designschritten bei der Bayer Healthcare AG. Referent: Lutz Bauer, Senior Systemberater, MT AG

Zugriff auf SAP-ERP/BI-Daten mit Oracle Data Integrator

Modellierung agiler Data Warehouses mit Data Vault Dani Schnider, Trivadis AG DOAG Konferenz 2015

APEX & SQL The Reporting Solution. Tobias Arnhold Tobias Arnhold IT Consulting Heppenheim

DWH-Modellierung mit Data Vault in Kombination mit ODI 12c - Erfahrungen aus der Praxis - Claus Jordan Trivadis GmbH Stuttgart

Modelle, deren Bestandteile und Weiteres SDDM organisiert alle Projektaspekte in einer klassischen Baumansicht, wie Abbildung 1 sie zeigt.

Historisierung auf Knopfdruck

SQL-basierte SCD2-Versionierung hierarchischer Strukturen

Viel aus wenig: Enterprise-DWH mit Basic ETL

Entwicklung und Deployment. Stefan Raabe DOAG Konferenz

Cognos im Siebel Marketingprozess - die Integration zweier Welten

Für Querdenker Was ODI anders macht als OWB und umgekehrt

Oracle Warehouse Builder Wie finde ich den richtigen Nachfolger?

Präsentation der Bachelorarbeit

Managed Code mit OWB? Methoden und Wege

12c Oracle Warehousing voll Groovy; Ein Projektbericht

Partitionierungsstrategien für Data Vault

Softwareverteilung auf heterogenen Systemen per JavaScript und XML. Referent: Dipl.-Ing. Guido Sokolis, Senior Consultant, MT AG

Zeitlich abhängig von OWB?

Oracle Data Masking in der Praxis

Oracle XML Publisher

Modellierung agiler Data Warehouses mit Data Vault

Erstellen von Bibliotheken unter V5 R5

-Abwesenheitsnachricht einrichten

Hochschule Darmstadt Data Warehouse SS 2015 Fachbereich Informatik Praktikumsversuch 5

Migration von OWB - ODI zu schwierig, zu kompliziert, zu teuer

Weblogic Server - Administration für Umsteiger

Flexible Schnittstelle für Flat Files in das DWH

ODI 12c - Flexible Datenintegration in komplexen BI/DWH-Umgebungen Dr.-Ing. Holger Friedrich

APEX Deployment u.a. mit Hudson business by integration. Oliver Lemm

Transformations. Die API des Oracle Datamodeler. Dr. Gudrun Pabst. Trivadis GmbH Lehrer-Wirth-Straße München.

DBMS_METADATA und DBMS_METADATA_DIFF im Praxiseinsatz

TOra - Toolkit for Oracle

Common Warehouse Metamodel und Imperfektion

Persistenz. Ralf Gitzel

Data Lineage mit ODI und OEMM Holger Dresing Oracle Deutschland BV & Co. KG

OWB Überwachungsberichte in Oracle BI EE

Pitss GmbH Stuttgart

Rapid Java wie mit Forms

Continuous Delivery mit Orcas

Ausführen eines Makros beim Starten von OpenOffice.org

Agile BI Was ist das eigentlich? Hochschule Ulm - V. Herbort & Prof. Dr. R. von Schwerin

Near Realtime ETL mit Oracle Golden Gate und ODI. Lutz Bauer

INDEXIERUNGS- STRATEGIE IM DATA WAREHOUSE

Vorteile einer Tool gestützten Modernisierung von Forms und Reports

Oracle, Datenbank, PowerPoint, Dokumente, PPTX, Automatisierung, Prozess-Automatisierung, smaxt

ETL für Faulpelze. Einführung in Biml für SSIS. Ben Weissman Solisyon GmbH

Oracle Data Integrator

DOAG Regionaltreffen. Regionalgruppe Nürnberg. Migration von Forms Client/Server ins Web. Andreas Ströbel OPITZ CONSULTING München

Continuous Delivery mit Orcas

Constraint-basierte Planung und Optimierung von Prüfungsterminen mithilfe einer graphischen Benutzeroberfläche

Eclipse und EclipseLink

XML-Datenaustausch in der Praxis Projekt TOMIS bei der ThyssenKrupp Stahl AG

Handbuch ECDL 2003 Professional Modul 3: Kommunikation Aufgaben annehmen und zuweisen

OWB2ODI Migration Check - Erfahrungen

Neues zur Oracle Lizenzierung (Michael Paege, OPITZ CONSULTING Hamburg, DOAG Competence Center Lizenzen)

Zustandsdiagrammeditor Pflichtenheft, Version 3.0

Modernizing Oracle Forms

Oracle Warehouse Builder: Automatisierung von Designschritten bei der Bayer HealthCare AG. Referent: Lutz Bauer, MT AG, Leiter CC Data Integration

Oracle DWH & BI Konferenz Königswinter im März 2012

Einführung OWB Java API

BI Publisher Style- und Subtemplates

Tobias Braunschober DAS GENERISCHE DWH WENIGER CODE WENIGER KOSTEN

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Deployment mit OMB*Plus Carsten Herbe & Oliver Gehlert metafinanz Informationssysteme GmbH

Oracle In-Memory & Data Warehouse: Die perfekte Kombination?

Near Realtime ETL mit Oracle Golden Gate und ODI. Lutz Bauer

Zukunft der Oracle Applikationsentwicklung: BC4J & XML

Oracle Warehouse Builder 3i

Lizenzierung von ODI. Oracle Lizenzierung. Michael Paege, Director License Management Consulting. Lizenzierung ODI, DOAG Data Integration Day 2015

ConUti GmbH - Ihr starker Partner eai@conuti.de l ConUti Ihr starker Partner. B2B Schulungen

SQL-Scripts. Gangl Dienstleistungen. Diese Anleitung verschafft Ihnen einen generellen Überblick über die Anwendung von. MS-SQL-Server 7 und 2000

EDADBManager - PSpice Import. Volker Boos (volker.boos@imms.de)

Erfolg mit Oracle BI?

DataVault in der Praxis

Die Oracle BI Trilogie von Trivadis

Layouterstellung im Web und interaktives Arbeiten mit dem BI Publisher

Data Warehouse in der Telekommunikation

Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1. Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden:

Handbuch ECDL 2003 Basic Modul 2: Computermanagement und Dateiverwaltung Komprimieren von Daten

Node.js der Alleskönner. Kai Donato MT AG Ratingen

GERIS EvoBus GmbH. Detlef Düsterhöft. Donnerstag, 14. Juni Jun.2007; Seite 0

SOLISYON GMBH TOBIAS GRUBER BEN WEISSMAN. Analyse von Dimensions-Schlüsselfehlern bei der Aufbereitung von SSAS Datenbanken

Transkript:

Get Groovy with ODI Andreas Nobbmann Trivadis AG Basel Schlüsselworte Oracle Data Integrator Skripting Groovy Data Warehouse Generierung Interfaces Groovy ODI Einleitung In einem DWH sind - so unsere Erfahrungswerte - ein Grossteil der Aufgaben wiederkehrend, heisst sie ähneln sich in sehr grossen Teilen. Zum Beispiel ist der Vorgang des Erzeugens der DWH_STAGING Tabellen eine Aufgabe, die sich nur in den Namen der Quell- und Ziel-Tabelle sowie den darin enthaltenen Spalten unterscheidet. Da diese Aufgaben auch einen Löwenanteil des Aufwandes ausmachen stellt sich die Frage: liegt es nicht nahe diese zu automatisieren? Die OWB- Entwickler haben hierfür eine wunderbare kleine Bibliothek an die Hand gelegt bekommen, um diese Aufgaben zu erledigen: OMBPlus und TCL. Aber wie sieht es beim Oracle Data Integrator (ODI) aus? Was kann hier verwendet werden, um diese Aufgaben zu erledigen? Genau, wie der Name des Vortrages schon sagt: Groovy. In der Präsentation wird anhand eines Kundenprojektes gezeigt, wie man unter Verwendung von Tabellen teilautomatisiert ODI-Interfaces erzeugen, bestimmte Parameter setzen und auch die richtigen Knowledge Module zuweisen kann. DWH - immer das selbe Wenn ein DWH aufgebaut oder einzelne Data Marts einem bestehenden DWH hinzugefügt werden sollen findet man als Requirements Engineer in den meisten Fällen einen hohen Anteil an repetitiven Aufgaben vor. Aufgaben also, die in nahezu identischer Form mit unterschiedlichen Objekten erledigt werden müssen. Beispielhaft zu nennen wäre hier das Laden aller SOURCE Tabellen in die DWH Staging Area mit dem Fokus auf dem schnellen Abzug der Daten, um das Source-System nicht zu belasten. Oder das immer selbe Vorgehen, um Daten in den Dimensionen mittels SCD 1 oder SCD 2 zu versionieren. Abbildung 1 Beispiel repetetive Aufgabe, Laden von Tabellan aus SRC in die STG Area Wie hoch ist der Anteil in Ihrem DWH? 50 %, 60 % 75 %? Noch höher? Da dies wiederkehrende Aufgaben sind eignen sie sich perfekt dazu methodisch per Skript erledigt zu werden.in dem wohlbekannten Oracle Warehouse Builder gibt es für diese Aufgaben OMB+ und TCL. Wir wollen uns heute allerdings mit dem ODI beschäftigen und fragen uns daher, welche Möglichkeiten uns dort zur Verfügung stehen?

Warum Groovy? In Oracle Data Integrator stehen zuvorderst folgende Möglichkeiten für Skripting zur Verfügung: Java und Groovy. Wobei Java eher für die Integration von Daten oder Application Integration Tasks verwendet wird und Groovy wegen seiner Definition als Skript-Sprache genutzt wird, um administrative Aufgaben zu automatisieren. Nun stellt sich die Frage: warum Groovy? Ganz einfach. Weil Java viel komplizierter und Groovy einfacher zu lernen ist. Und dazu hat Groovy noch den nahezu gleichen Funktionsumfang wie Java, alle Klassen können verwendet werden. Aber von der Theorie her kann man die Endung eines jeden Java Programm einfach in Groovy umbenennen und es sollte laufen. Vom Prinzip her ist Groovy einfach nur um einiger wie manche Programmierer meinen überflüssiger Komponenten und Regeln beraubt. So können Semikolons weggelassen werden, was in Java bereits zu einem Compiler-Fehler führen würde. Ausserdem können solche Konstrukte wie main Klassen, in denen der eigentliche Programmablauf definiert wird, in Groovy weggelassen werden. Auch sind Syntax und Methoden in Groovy simpler gestaltet und damit für mich BI ler besser geeignet. Darüber hinaus gibt es noch recht nützliche Funktionen in Groovy, die man höre und staune in Java nicht, oder noch nicht, vorhanden sind. Was gibt es für Regeln in Groovy? Grundsätzlich ist Groovy Java sehr änlich. Auch in Groovy herrscht eine Klassengesellschaft, auch hier müssen alle verwendeteten Klassen vor der ersten Benutzung deklariert bzw. importiert werden. Die Entwicklerregeln gebieten der Lesbarkeit wegen, dass danach alle verwendeten Variablen, Funktionen etc. deklariert werden. Einige der Regeln werden noch vertieft im Detail im Vortrag behandelt. Das Konzept Um auf alle notwendigen Gegebenheiten vorbereitet zu sein wurde ein Datenmodell entwickelt, in dem die Definition der mittels dem Groovy-Skript zu erstellenden Interfaces zu speichern. Hauptgrund hierfür war vor allem die damit verbundene Flexibilität gelegt, denn dieses Datenmodell kann jederzeit um weitere zu erstellende Objekte erweitert werden. Das Beispiel für die Demo Im Beispiel wird demonstriert, wie per Groovy Skript die Interfaces erstellt werden, um die Daten aus der Quelle bis hoch in die Core-Area im DWH geladen werden. Auch die Mappings, also die Expressions werden hier aus einer Tabelle geladen. Ein Auszug aus den Tabellen soll am Beispiel des Interfaces zum Laden der Source View V$ST_ASO_SAFETY_INFO in die Staging Tabelle STG_ST_ASO_SAFETY_INFO illustriert werden. Nachfolgend der Eintrag in die INTERFACES Tabelle, in der die erstellenden Interfaces gespeichert werden. Abbildung 2 Eintrag in INTERFACES Tabelle

Und der Eintrag in die KM Tabelle, in der die zu verwendenden Knowledge Module konfiguriert sind. Abbildung 3 Eintrag in Knowledge Module Tabelle Man beachte hier die Unterscheidung in 2 Knowledge Module für die Versionierung. In der Tabelle COLUMNS werden abschliessend noch die Mappings (=Expressions gespeichert. Abbildung 4 Eintrag in COLUMNS Tabelle Ab der Version 11.1.1.6 wird der ODI mit einem Groovy Editor geliefert, der über das Tools Menü erreicht werden kann. Abbildung 5 über das Menu Tools den Groovy Editor.öffnen

Get Groovy das Skript In diesem Editor kann das Skript geöffnet, gespeichert und auch ausgeführt werden. Abbildung 6 der Groovy Editor. Editoren Allerdings bieten andere Editoren mehr Funktionalität als der integrierte Editor, da dort zum Beispiel das Syntax Highlighting individuell angepasst werden kann, was das Entwickeln von Groovy-Code stark erleichtert. Abbildung 7 Syntax Highlighting in Notepad++

Das Ergebnis Auch die Laufzeiten der Skripte können sich sehen lassen. In einem realen Projekt wurden aus dem Groovy-Skript heraus etwa 50 Interfaces in knapp 1 Minute erstellt. Abbildung 8 eines der Ergebnis Interfaces Resümée Man sieht, dass mit Groovy sehr viele der alltäglichen Aufgaben eines DWH Administrators erleichtern werden können. Neben der automatisierten Erstellung von Interfaces lassen sich auch Aufgaben wie das Reverse Engineering der Datenstrukturen, das Deployment, Backup und Recovery und viele andere Aufgaben mit dieser Skripting-Sprache komfortabel automatisieren. Dem Einsatz von Groovy sind keine Grenzen gesetzt. Also zögern Sie nicht und werden Sie Groovy mit ODI, denn so schnell wie ein Skript kann niemand ein Interface zusammenklicken. Kontaktadresse: Andreas Nobbmann Trivadis AG Elisabethenanlage 9 CH-4051 Basel Schweiz Telefon: +41 (0) 79-264 8807 Fax: +41 (0) 61-279 9756 E-Mail Andreas.Nobbmann@trivadis.com Internet: www.trivadis.com