9
Oracle Data Integrator von 10g nach 11g Sylvie Lübeck & Holger Dresing ORACLE Deutschland GmbH Schlüsselworte: Datenintegration, FMW 11g, ODI, Oracle Data Integrator, ETL, ELT Einleitung Im Rahmen dieser Präsentation werden die neuen Funktionen des Oracle Data Integrators (ODI) für die Version 10.1.3.5 und 11g vorgestellt. Der Fokus wird dabei auf eine Auswahl neuer Funktionen gelegt, daher erhebt dieser Artikel keinen Anspruch auf die vollständige Vorstellung der neuen Funktionalitäten. Alle Aussagen zu ODI11g sind ohne Gewähr, da diese Version noch nicht verfügbar ist. Alle Angaben hier sind als Überblick über unsere Produktentwicklung zu verstehen und sind rein zu Informationszwecken bestimmt. Sie dürfen nicht in Verträge eingebunden werden und stellen keinerlei Zusage über Art, Umfang und Datum der Funktionalität dar. Diese Informationen dürfen nicht für Kaufentscheidungen verwendet werden. Entwicklung, Freigabe jeglicher Funktionen bleibt eine ausschließliche Entscheidung von Oracle. Der Oracle Data Integrator ist seit 3 Jahren Teil der Oracle Produktfamilie und wurde als E- LT Werkzeug für heterogene Quell- und Zielsysteme weiterentwickelt. Ab der Version 10.1.3 gibt es eine erweiterte Option zur Abdeckung der Themen Data Profiling (DP) und Data Quality (DQ) für den ODI auf Basis der marktführenden Produkte von Trillium. Durch gemeinsame Entwicklung wurde eine Integration von ODI und DP/DQ realisiert. Im Folgenden werden zunächst die letzten wichtigsten Neuerungen von ODI Release 10.1.3.5.x und im Anschluß die geplanten Neuerungen für ODI Release 11g dargestellt. Neue Funktionen seit ODI 10.1.3.5.x Werkzeug zum Vergleich zweier Objekt Versionen: Version Comparison Tool Entwickler können mit dem Version Comparison Tool ODI Objekte verschiedener Versionen miteinander vergleichen. Das Tool verfügt über folgende Funktionen:

Oracle Data Integrator von 10g nach 11g - doag.org · PDF fileDer Oracle Data Integrator ist seit 3 Jahren ... oder direkte Links (DBLINKS, Linked ... Version 10.1.3.5.2 gibt es ein

  • Upload
    vodang

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Oracle Data Integrator von 10g nach 11g

Sylvie Lübeck & Holger Dresing

ORACLE Deutschland GmbH

Schlüsselworte:

Datenintegration, FMW 11g, ODI, Oracle Data Integrator, ETL, ELT

Einleitung

Im Rahmen dieser Präsentation werden die neuen Funktionen des Oracle Data Integrators(ODI) für die Version 10.1.3.5 und 11g vorgestellt. Der Fokus wird dabei auf eine Auswahlneuer Funktionen gelegt, daher erhebt dieser Artikel keinen Anspruch auf die vollständigeVorstellung der neuen Funktionalitäten.

Alle Aussagen zu ODI11g sind ohne Gewähr, da diese Version noch nicht verfügbar ist. AlleAngaben hier sind als Überblick über unsere Produktentwicklung zu verstehen und sind reinzu Informationszwecken bestimmt. Sie dürfen nicht in Verträge eingebunden werden undstellen keinerlei Zusage über Art, Umfang und Datum der Funktionalität dar. DieseInformationen dürfen nicht für Kaufentscheidungen verwendet werden. Entwicklung,Freigabe jeglicher Funktionen bleibt eine ausschließliche Entscheidung von Oracle.

Der Oracle Data Integrator ist seit 3 Jahren Teil der Oracle Produktfamilie und wurde als E-LT Werkzeug für heterogene Quell- und Zielsysteme weiterentwickelt. Ab der Version 10.1.3gibt es eine erweiterte Option zur Abdeckung der Themen Data Profiling (DP) und DataQuality (DQ) für den ODI auf Basis der marktführenden Produkte von Trillium. Durchgemeinsame Entwicklung wurde eine Integration von ODI und DP/DQ realisiert.

Im Folgenden werden zunächst die letzten wichtigsten Neuerungen von ODI Release10.1.3.5.x und im Anschluß die geplanten Neuerungen für ODI Release 11g dargestellt.

Neue Funktionen seit ODI 10.1.3.5.x

Werkzeug zum Vergleich zweier Objekt Versionen: Version Comparison Tool

Entwickler können mit dem Version Comparison Tool ODI Objekte verschiedener Versionenmiteinander vergleichen.

Das Tool verfügt über folgende Funktionen:

Color-coded side-by-side Darstellung: Das Ergebnis des Vergleichs wird nebeneinander inzwei Fensterausschnitten präsentiert. Die Unterschiede werden farblich unterlegt (siehe Abb.1).Vergleichsergebnis als Baum Struktur: Das Objekt wird in einer Baumstruktur alshierarchische Liste organisiert. Das Auf- und Zuklappen der Knoten ist in beidenFensterausschnitten miteinander synchronisiert.

Generierung eines Berichtes und Ausdruck in PDF Format: Aus dem Version ComparisonTool kann ein Bericht über die Unterschiede der Versionen im PDF Format generiert undausgedruckt werden.Unterstützte Objekte: Das Version Comparison Tool unterstützt folgende Objekte: Projekt,Verzeichnis, Package, Szenario, Interface, Prozedur, Knowledge Modul, Sequenz,Benutzerdefinierte Funktion, Variable, Modell, Modell Verzeichnis und Solution.

Abb.1: Version Comparison Tool

FTP, SCP, SFTP

Mit dem Oracle Data Integrator 10.1.3.5 werden sechs neue Werkzeuge für den sicherenTransfer von Dateien neu eingeführt. Diese verwenden entweder FTP, SCP oder SFTP alsProtokoll (siehe z.B. OdiSftpGet bzw. OdiSftpPut). Dies ist eine wichtige Funktion für das abder ODI Version 10.1.3.5.2 verfügbare SAP ABAP Knowledge Modul.

Oracle OLAP

Ab ODI Version 10.1.3.5 gibt es die Möglichkeit Strukturen aus Oracle OLAP per ReverseKnowledge Module (RKM) in den ODI einzulesen. Dafür wird das RKM Oracle OLAP(Jython) verwendet.

Häufig wird OLAP als Zielsystem angesprochen. Wenn eine ROLAP Struktur aktualisiertwerden soll, können die generisch für SQL bzw. Oracle zur Verfügung stehenden KMsverwendet werden. Ist MOLAP die Zielstruktur kommt das IKM Oracle AW IncrementalUpdate zum Einsatz. Analytical Workspace (AW) ist der Bereich in der relationalenDatenbank, in dem die OLAP-Daten abgelegt werden.Die jeweilige Einstellung für die KMs erfolgt über die Optionen. Das “IKM Oracle AWIncremental Update” basiert auf dem “IKM Oracle Incremental Update“. Es hat vier weitereOptionen zur Verarbeitung von MOLAP Würfeln, diese sind:

• AW_NAME: Name des Analytical Workspace (AW)• AW_OWNER: Name des Analytical Workspace owner• CUBE_NAME: Name des Würfels• REFRESH_CUBE: auf “YES” setzen, um den Würfel eines AWs zu

aktualisieren

Oracle Siebel CRM, Oracle E-Business Suite, Oracle Peoplesoft, JD Edwards

EnterpriseOne, Hyperion (Hyperion Essbase, Hyperion Financial Management, and

Hyperion Planning)

Wie in jeder neuen ODI Version ist auch hier die Unterstützung der aktuellen Versionen vonSiebel CRM, Oracle E-Business Suite, Oracle Peoplesoft, JD Edwards EnterpriseOne undHyperion sicherzustellen. Welche Versionen jeweils unterstützt werden, kann aus derZertifizierungsmatrix für ODI auf OTN entnommen werden. (siehe Link im Anhang)

Log Based Changed-Data-Capture (CDC) basierend auf Attunity Streams

Bisher gab es schon für einige Technologien CDC Unterstützung. Mit den Oracle ApplicationServer Legacy Adaptoren in der Version 10.1.3.4 und Attunity Streams wird CDC aufzusätzlichen Plattformen unterstützt. Dazu gehören über die Legacy Adaptoren heute: CICS,VSAM, Tuxedo, IMS DB und IMS TM. Durch die Anbindung an Attunity Streams werdenalle von Attunity Streams integrierbaren Plattformen unterstützt. Diese sind jeweils mit dervon der Technologie her optimalen CDC Anbindung implementiert, ähnlich dem LogMinerbei Oracle.

Das Auslesen der CDC Daten erfolgt mittels des Load Knowledge Moduls (LKM) Attunity toSQL. Es kommt hier kein Journalizing Knowledge Modul (JKM) zum Einsatz. DieÄnderungen werden aus den Tabellen im Staging Bereich von Attunity ausgelesen. DieserStaging Bereich ist unterschiedlich zum ODI Staging Bereich für die Interfaces.

IKM SQL Incremental Update (row-by-row)

Mit diesem KM können Daten in jede ANSI-SQL92 konforme Datenbank Zieltabelle perincremental update Zeile für Zeile inkl. Logging integriert werden. Dieses KM ist ähnlich

dem IKM SQL Incremental Update. Zusätzlich wird für jede verarbeitete Zeile der Zustandfestgehalten. Eine Log Datei kann, zur Registrierung gelaufener Aktivitäten, erzeugt werden.

Folgende Optionen werden für den Logging Mechanismus verwendet:• LOG_LEVEL: diese Option definiert die Granularität der festgehaltenen

Aktivitäten

Folgende Log Level können definiert werden:

0: nichts mitschreiben1: jegliche JDBC Aktion wird festgehalten wie z.B. ‘select’, ‘delete’, ‘insert’…2: zusätzlich zu Level 1, alle Datensätze mit Fehler werden festgehalten3: zusätzlich zu Level 2, alle verarbeiteten Datensätze werden mitgeschrieben

• LOG_FILE_NAME: vollständiger Pfad der verwendeten Log Datei• MAX_ERRORS: Definition der maximalen Anzahl Fehler. Der IKM Prozess

wird gestoppt sobald die maximale Anzahl Fehler erreicht wurde.

Wichtiger Hinweis: Dieses KM ist NICHT EMPFOHLEN bei GROSSENDATENMENGEN. Andere spezifische Module, die Bulk Werkzeuge verwenden(SQL*LOADER, BULK INSERT...) oder direkte Links (DBLINKS, Linked Servers...) sindi.d.R. effizienter.

Erweiterte Unterstützung von Teradata

Die bisherige Unterstützung von Teradata wurde für die Version 12 weiter optimiert.

• Primäre Indizes und Statistiken: die Performanz von Teradata hängt sehr stark vonder optimalen Nutzung der Primären Indizes. Diese werden in den für Teradataoptimierten KMs (Check KM und Integration KM) über die OptionPRIMARY_INDEX definiert.

• Teradata Utility Unterstützung: zusätzlich zu den bisher unterstützten UtilitiesFastLoad, MultiLoad und Tpump werden auch der Teradata Parallel Transporter(Load Operator) und der Teradata Parallel Transporter (SQL Insert Operator)unterstützt. Darüberhinaus gibt es für das Laden von Daten aus Teradata in eine Dateidie Unterstützung von Teradata FastExport (FEXP) und Teradata Parallel Transporter(TPT).

• Named Pipes Unterstützung: Für die Integration von Daten zwischen SQL undTeradata und der bereits erwähnten Teradata Utilities wird die Nutzung von NamedPipes aus Gründen der Performanz empfohlen. Dazu gibt es jetzt in den KMs dieO p t i o n e n : NP_USE_NAMED_PIPE, NP_EXEC_ON_WINDOWS,NP_ACCESS_MODULE und NP_TTU_STARTUP_TIME.

• Optimiertes Management temporärer Tabellen: Das Erstellen und Löschentemporärer ODI Staging Tabellen kann auf einer Teradata Engine eine MengeRessourcen verbrauchen. Die ODI_DDL KM Option ermöglicht es diese Operationenkontrolliert durchzuführen. Die ODI_DDL Option kann folgendermaßen gesetztwerden: DROP_CREATE (Objekte werden immer gelöscht bzw. neu erstellt),

CREATE_DELETE_ALL (neue Objekte werden nach Bedarf erstellt – i.d.R. nur beider ersten Ausführung danach werden lediglich die Inhalte der temporären Objektegelöscht), DELETE_ALL (temporäre Tabellen werden nicht erstellt, sondern nur perDELETE ALL geleert), NONE (temporäre Objekte werden separat gehandhabt, eswerden keine DDL statements ausgeführt).

SAP Integration

Bisher gab es in ODI die Möglichkeit Daten mit SAP via iDoc auszutauschen. Seit derVersion 10.1.3.5.2 gibt es ein neues Knowledge Modul zum Austausch von Daten mit SAPERP via ABAP. Dazu wird aus ODI ABAP Code generiert, der dann auf dem SAP Systembereitgestellt wird. Ein ODI Interface kann Daten aus SAP ERP einlesen, indem der ABAPCode aufgerufen wird und dieser die Daten extrahiert. Das Laden erfolgt per SQLLDR.Tiefergehende Informationen zum Thema SAP ABAP Adapter finden Sie im DOAG Beitragvon Christian Kurz „Zugriff auf SAP-ERP/BW Daten mit Oracle Data Integrator”.

Neue (geplante) Funktionen in Oracle Data Integratior 11g

ODI 11g – Plattform

• Partitionierung: Welche Partitionierungs-Methoden unterstützt werden, hängt vondem eingesetzten Datenbanksystem ab. Für Oracle wird die Partitionierung nach derRange-, Hash- und List-Methode unterstützt. Ein partitionierter Datastore kann alsQuell- oder Zielsystem verwendet werden. Einzelne Partitionen oder Sub-Partitionenkönnen z.B. bei der Definition der Quell- bzw. Zielsystem ausgewählt werden. Diesgilt auch für temporäre Zielsysteme.

• Lookup: Der Lookup-Operator wird in Mapping Ausdrücken verwendet. DasHinzufügen von Lookup Tabellen erfolgt über den Lookup Wizard. Abhängig von derDatenbank können zweierlei Syntax zum Einsatz kommen: SQL Left-Outer Join in

der FROM Klausel: Die Lookup Tabelle wird als reguläre Quelle gehandhabt undein left-outer Join Ausdruck wird generiert, um diese mit der treibenden Tabelle zuverbinden. Alternativ kann der SQL Ausdruck im SELECT eingebunden werden:

Das Lookup wird im Select vollzogen, das die Daten aus der Lookup Tabelle ausliest.Diese Variante kann für kleinere Lookup Tabellen effizienter sein.

• Set Based Operators (Union, Intersect, Minus): Ab der Version 11 ist es möglichmehrere Dataset-Ausdrücke miteinander zu verbinden über UNION, INTERSECToder MINUS. Dies wird mit Hilfe des Dataset-Diagramms definiert. Damit kanneffizienter innerhalb eines Interfaces eine Zieltabelle von unterschiedlichen Quellenbefüllt werden (siehe Abb. 2).

Abb. 2: DataSet Diagramm

• Derived Selects in temporäre Interfaces: Das Zielsystem eines Interface kann eintemporäres Objekt sein. Bei der Einbindung in ein weiteres Interface als Quelle wirddies entweder über eine temporäre Tabelle oder ein Subselect ausgeführt. Die Varianteder Ausführung wird über ein auswählbares Merkmal definiert. Die Code Syntax desSubselects ist anpassbar. Diese Funktionalität wird auch in Lookups unterstützt.

• Native Unterstützung von Datenbank Sequenzen: Aus ODI heraus können ab ODI11g Datenbank Sequenzen direkt verwendet und eingebunden werden.

• Temporary Indexes for Join/Filters: Für Joins und Filter können zur weiterenPerformance Optimierung temporäre Indizes automatisch erzeugt werden.

• ODI Studio: Die Entwicklungsumgebung von ODI mit seinen bisherigenKomponenten (Designer, Operator, Topology, ...) ist auf Basis der Fusion CommonPlattform (FCP) implementiert. Diese Umgebung entspricht der JDeveloperUmgebung und ist ab der Version 11 als ODI Studio verfügbar. In einer weiterenEntwicklungsphase werden die ODI Komponenten als JDeveloper Pluginweiterentwickelt. Es werden dadurch eine Reihe von benutzerfreundlichen Funktionenmitgeliefert. Dazu gehören z.B. die Diagramme, die Bird’s Eye Funktion und andere.

ODI SDK

Bisher wurde der Austausch von Datenobjekten über spezielle Tabellen realisiert. Jetzt gibt eseine Java API als SDK. Dadurch können alle Objekte aus dem Repository, die bei derEntwicklung oder beim Betrieb relevant sind durch das SDK ausgelesen oder auch aktualisiertwerden. Derzeit davon ausgenommen bleibt die Versionierung von Objekten.Über das SDK können transaktionssicher Daten aus dem Repository gelesen, angepasst oderneu hinzugefügt werden.Das SDK ist für Java Applikationen und Application Server verfügbar. Es können RepositoryObjekte aus den Bereichen Topology, Daten Modell, Projekt, Interface, Package etc.bearbeitet werden. ODI Transformationen können ausgeführt werden und es ist möglich ODIObjekte auf diesem Weg zu importieren und zu exportieren. Ein immer wiedervorkommendes Beispiel ist folgendes: Für 800 Tabellen müssen strukturgleiche Interfaceserstellt werden, um die Daten vom Quell- zum Zielsystem zu transportieren. Da das System

noch in der Entwicklung ist und häufig Änderungen an den Tabellen vorgenommen werden,ist es zeitaufwendig, die Änderungen an den einzelnen Interfaces (800!) nachzuvollziehen.Mit dem SDK lässt sich schnell ein Java-Programm schreiben, dass die Interfaces innerhalbkürzester Zeit neu generiert. Generieren ist besser als von Hand programmieren, da esschneller und weniger fehleranfällig ist.

ODI 11g Architektur

Der ODI 11g wird auf Basis des WebLogic Servers (siehe Abb. 3) betrieben. DieEntwicklungsumgebung von ODI ist eingebunden in die JDeveloper basierendeEntwicklungsumgebung – derzeit als ODI Studio.

Abb. 3: ODI 11g Architektur

Durch die auf WLS basierende Architektur ergeben sich Vorteile für das Management derAgent Komponente. Die Überwachung der Agenten inkl. Performance Monitoring erfolgtüber den Enterprise Manager.Davon unberührt gibt es weiterhin die Möglichkeit den Agenten ohne WLS zu betreiben, umweiterhin alle Plattformen unterstützen zu können auf denen Java verfügbar ist.Die Installation des ODI 11g erfolgt mittels Oracle Universal Installer. Die notwendigenWebLogic Server Komponenten werden unter Verwendung von vorbereiteten WLSTemplates erzeugt. Zur Erstellung des Repositories wird das Repository Creation Utility(RCU) verwendet.Der Upgrade bestehender Installationen wird als „out of place upgrade“ durchgeführt. Dasbedeutet, die bestehenden 10g Objekte werden unter Verwendung von Wizards in eine 11gInstallation transferiert.

Scheduler

In der neuen Architektur gibt es weiterhin den Agentscheduler. Darüber hinaus nutzt der ODIden ESS (Enterprise Schedule Service), den Standard Scheduler von Oracle Fusion.

Unberührt bleibt davon weiterhin der mögliche Einsatz Ihres bevorzugten Schedulers für denODI.

Repository Explorer

Der Repository Explorer ist der neue Thin Client zur Ansicht von Design und LaufzeitObjekten. Er dient ebenfalls zur Definition der Produktionsumgebung. Die Oberfläche wurdemit dem Application Development Framework von Oracle entwickelt. Der RepositoryExplorer bietet wie sein Vorgänger, der Metadata Navigator, auch die Möglichkeit Scenarioszu starten und Daten mittels Data Lineage zurückzuverfolgen.

Verbesserter Import/Export

Neu ist eine bessere Sicherheit im Umgang mit Export/Import von Objekten. LeereReferenzen auf andere Objekte bleiben erhalten. Fehlende Objekte/Projektinhalte könnennachträglich importiert werden. Beim Import ist daher die Einhaltung der Reihenfolge nichtmehr erforderlich. Wurden z.B. im Export die zum Interface benötigten Datenmodellevergessen, entstehen beim Import leere Referenzen. In 11g bleiben diese erhalten und es kannim zweiten Schritt die Ergänzung um die Datenmodelle erfolgen.

Neue Funktionen im Debugging Umfeld

Zusätzlich zu dem IKM SQL Incremental Update (row-by-row) ist es ab ODI 11g möglich,den generierten Code ohne Ausführung desselbigen anzusehen. Weitere Verbesserungenwerden auch bei der Validierung der Mappings hinzukommen. So ist vorzeitig eineÜberprüfung des Codes möglich.

Diagnose Möglichkeiten

Ab ODI 11g werden Fehlermeldungen verständlicher und weisen den Entwickler oder denBetrieb auf die eigentliche Fehlerquelle hin. Zusätzlich wird auch die Navigation in dieFehlertabellen und die Bearbeitung von Datensätzen darin direkt aus ODI ermöglicht.

Zusammenfassung: Insgesamt wurde die Weiterentwicklung der KMs vorangetrieben. Vieledieser KMs sind jedoch schon mit 10.1.3.5 freigegeben worden. Der ODI11g wird auf dieWebLogic Server Plattform angepasst und die Entwicklungsumgebung in die JDeveloper-konforme Entwicklungsumgebung portiert. Darüberhinaus wurden weitere Optimierungen aufder ODI Plattform vollzogen wie z.B. die Unterstützung von Partitionen.

Weitere wichtige Dokumente:

ODI Certification Matrix auf OTN (Oracle Technology Network)http://www.oracle.com/technology/products/oracle-data-integrator/10.1.3/htdocs/documentation/odi_certification.xls

Statement of Direction Oracle Data Integrationhttp://www.oracle.com/technology/products/oracle-data-integrator/sod.pdf

Kontaktadresse:

ORACLE Deutschland GmbH ORACLE Deutschland GmbH

Sylvie Lübeck Holger Dresing

Riesstr. 25 Baumschulenallee 16D-80992 München D-30625 HannoverTelefon: +49(0)89-1430-2279 +49(0)511-95787-118Fax: +49(0) 89-1430-2160 +49(0) 511-572888E-Mail [email protected] [email protected]: http://www.oracle.com