ODI 11g für OWB-Entwickler - doag.org · ODI 11g für OWB-Entwickler ... Teradata Server Schema...
Transcript of ODI 11g für OWB-Entwickler - doag.org · ODI 11g für OWB-Entwickler ... Teradata Server Schema...
<Insert Picture Here>
ODI 11g für OWB-Entwickler
Dr. Holger Dresing, Oracle Deutschland BV & Co. KG
Data Integration Solutions – DIS EMEA
The preceding is intended to outline our general product direction. It is intended for information
purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any
material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any
features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
<Insert Picture Here>
Agenda
• Der Weg von OWB nach ODI
• Architektur und Laufzeitumgebung
• Entwickeln von Prozessen• Interfaces
• Packages
• Szenarien
• Knowledge Module
• Laufzeitumgebung
• Nutzen externer Funktionen• Java SDK
• Open Tools
• Ausblick
UnifiedTeam
Oct 2008
Strategic
Data IntegrationPlatform
• OWB Investitionen sind geschützt
• Keine aufgezwungenen Migrationen
oder Wechsel
• Basic OWB ETL ist in zukünftigen DB-
Releases enthalten4
Oracle Data Integration: The Road to 12g
Milestones
Toward
Convergence
ODI-EE
License
Jan 2009
Basic ETL
OWB-EE
11gR2
Sep 2009
OWB-EEKnowledge
Modules
ODI 11g
2010
ODI 12g
(Unified
Platform)
11gR2
• ODI 12g ist eine “Übermenge” aller Funktionen der heutigen Produkte – keineEinschränkungen
• OWB-EE, ODI 10/11 enthalten Upgradpfad auf ODI 12
ODI-EE License
ODI
<Insert Picture Here>
Agenda
• Der Weg von OWB nach ODI
• Architektur und Laufzeitumgebung
• Entwickeln von Prozessen• Interfaces
• Packages
• Szenarien
• Knowledge Module
• Laufzeitumgebung
• Nutzen externer Funktionen• Java SDK
• Open Tools
• Ausblick
2 - 6
Models
Projects
Execution
Work Repository
(Development)
Models
Projects
Execution
Work Repository
(Test & QA)
Execution
Execution Repository
(Produktion)
Security
Topology
Versioning
Master
Repository
Erstellen und
archivieren der
verschiedenen
Versionen von
Modellen,
Projekten und
Szenarien (in der
GUI)
Importiere
freigegebene
Versionen von
Modellen, Projekten
und Szenarien
(in der GUI)
XML Export / Import
(manuelll)
Development – Test – Production Zyklus
Security
Topology
Master
Repository
Repository-Struktur: Separate Netzwerke
XML Export / Import
(manuell)
Fir
ew
all
Empfehlungen
• Repositories können in verschiedenen Datenbanken
liegen (ODI 11.1.1.5):
• Oracle 10g+11g, DB2 V9.7, SQLServer 2005+2008,
Hypersonic SQL V1.7+2.0, Sybase ASE 15.x
• Unter Oracle nicht mit RCU erstellen, sondern 2
Schemata in der Instanz für das Repository erstellen
und über ODI Studio die Repositories generieren
• Eindeutige IDs für Work-Repositories vergeben,
möglichst unternehmensweit
Desktop
Repositories
Produkt ArchitekturEinstieg in ODI 10g/11g
ODI Studio
Operator
Designer
Topology
Security
ODI Master Repository ODI Work
Repository
Sources and Targets
Legacy Applications
ERP/CRM/PLM/SCM
Files / XML DBMS DW / BI / EPM
JVM
Runtime WS
Standalone Agent
Desktop
Repositories
Produkt Architekturfür unternehmensweiten Einsatz
ODI Studio
Operator
Designer
Topology
Security
ODI Master Repository ODI Work
Repository
Sources and Targets
Legacy Applications
ERP/CRM/PLM/SCM
Files / XML DBMS DW / BI / EPM
JVM
Java EE Application
ODI SDK
WebLogic 11g / Application Server
Data Sources Connection Pool
Web Service Container
Public WSData
Services
FMW Console
ODI Plug-in
Servlet Container
ODI Console
Java EE Application
ODI SDK
Runtime WS
Java EE Agent
JVM
Runtime WS
Standalone Agent
Empfehlungen
• HA-Lösung: JEE- Agenten von ODI
• JEE-Agent als App. in Weblogic
• Übernahme der Sicherheit (Login, Passwort) und der Connection
Pools
• Zusätzliche Features: Lineage, ODI Console und Enterprise
Manager
• Loadbalancing: sowohl mit dem Standalone als auch mit
dem JEE-Agent von ODI
• Verbindung zum ODI Studio über
• Master-Repository: Topology Navigator aktiv
• Work-Repository: Designer, Operator, Topology und Security aktiv
Topology Navigator
In ODI Topology Manager, you set the architecture of
your information system, the technologies, servers,
schemas, and repositories.
Technologies tree
Toolbar
Workspace to
define ODI Topology objects
Empfehlungen
• JDBC-Treiber in der Verzeichnis $ODI_Home/oracledi/drivers
kopieren
• Passend zum JDK
• Oracle liefert JDBC-Treiber für IBM, DB2 und SQLServer
mit
• Aktuell? In der richtigen Version
• Wichtig: Begriffe sind unterschiedlich!
Concepts in Reality
Technology Data server Schema
Oracle Instance Schema
Microsoft SQL Server Server Database/Owner
Sybase ASE Server Database/Owner
DB2/400 Server Library
Teradata Server Schema
Microsoft Access Database (N/A)
JMS Topic Router Topic
File File Server Directory
8-16
Logische vs. Physische Architektur
MS SQL Server
db_dwh
Windows
Produktions-Server: Houston, TX
Datawarehouse
(Logisches Schema)
Logische Architektur: derAlias
Physische Architektur: die physiche Verbindung
User: Srv_prod
Password: 654321
IP:10.1.2.221
Database: db_dwh
Änderungen in der physischen Architektur haben keinen Einfluß auf die Entwickler, die mit dem gleichen logischen Schema arbeiten
8-17
Zuweisen logischer und physischer
Resourcen
MS SQL Server
db_dwh
Windows
Development-System: New York
Windows
MS SQL Server
db_dwh
db_purchase
Produktions-System: Boston
Windows
MS SQL Server A
dwh
Produktions-System: Tokyo
Datawarehouse
(Logisches Schema)
Logische Architekture
Kontext
Physische Architektur
For that purpose, the definition of Contexts will allow you to attach more than one physical definition to a Logical Schema
<Insert Picture Here>
Agenda
• Der Weg von OWB nach ODI
• Architektur und Laufzeitumgebung
• Entwickeln von Prozessen• Interfaces
• Packages
• Szenarien
• Knowledge Module
• Laufzeitumgebung
• Nutzen externer Funktionen• Java SDK
• Open Tools
• Ausblick
ODI Studio
Navigators for each
functional area.
ODI operations integrated in IDE: Menu, Gallery, etc.
Intuitive multi-editors support close all/save all, docking,
etc.
Property inspectors, thumbnails and IDE windows
fully used as needed.
Accordions for each
sub-area.
Popup menus and tree markers.
Interface Editor using diagraming FWK.
7-20
MS SQL Server
ODI Repository
Standard- vs. Customized-Reverse-Engineering
Datenmodell
Systemtabellen
Model (Metadata)
Oracle Data Integrator
Customized
Reverse-engineering
JDBC Driver
Standard
Reverse-engineering
Delimited Formate
Feste FormateCOBOL copybooks
Datei-spezifisches
Reverse-Engineering
7-21
Vorgehen beim Reverse-Engineering
1. Auswahl des Reverse Engineer Tab.
2. Auswahl des Reverse-engineering Typs.
3. Auswahl des Context für das Reverse-Engineering.
4. Auswahl des Object Type(optional).
5. Eingabe des Objektnamens in Mask oder Characters to Remove für den Table Alias(optional).
6. Wenn “customized”:
• RKM bestimmen
• Den Logischen Agent festlegen
6-22
1. Rechte Maustaste auf den Constraints Knoten, New Condition auswählen
2. Name eingeben
3. ODI Condition Type auswählen
4. Klausel für die Bedingung erstellen
• Expression Editor nutzen
5. Fehlermeldung für die Bedingung eingeben
Erstellen einer
Bedingung/Condition
7-23
Anpassen von Datenmodellen:
Common Format Designer
• ODI ermöglicht es, add,
remove or edit any Elemente
von Datenmodellen manuell zu
ergänzen, zu löschen oder zu
ändern
• im Designer
• Hinter dem Punkt Diagram
verbirgt sich ein Werkzeug zum
Editieren von Datenmodellen.
• Common Format Designer
• Die Änderungen können in die
Datenbank eingepflegt werden
3-24
Arbeiten mit dem Expression Editor
1. Starten des Expression
Editors ( ) in dem
Mapping Fenster
2. Erstellen der SQL-
Ausdrücke, unterstützt
durch SQL-Funktionen
unten und Spalten auf
der linken Seite
ODI Studio
Navigators for each
functional area.
ODI operations integrated in IDE: Menu, Gallery, etc.
Intuitive multi-editors support close all/save all, docking,
etc.
Property inspectors, thumbnails and IDE windows
fully used as needed.
Accordions for each
sub-area.
Popup menus and tree markers.
Interface Editor using diagraming FWK.
Erläuterungen
in ODI in OWB
Transformationen auf
Tabellenebene
Interfaces Mapping
Berechnung oder
konstante Werte in
Transformationen
zuweisen
Mapping Konstanten oder
Expressions
Transformationen
organisatorisch
zusammengefaßt
Projekt Projekt
Ablaufreihenfolge/
Workflow
Package
Load Plans (11.1.1.5)
Business Flow
3-29
Filter für Daten erstellen
SQL Filterbedingung
Festlegen der
Ausführung
Expression Editor
Filter speichern
Ausdruck prüfen.
Drag & drop einer Spalten in den Hintergrund
Eingabe der Bilder Bedingung
4-30
Erstellen eines Verbundes (Join)
SQL Join Expression
(Technologie-abhängig)
Festlegen der
Ausführung
Erstellen von “temporary
indexes” für die Join-Spalten
Join Order (ISO-92
Syntax)
Expression Editor
Expression speichern
Expression validieren
Automatischer
Festlegen der
Reihenfolge
• Verbunde können Technologie-übergreifend definiert werden (z. B. zwischen einer Datenbank-Tabelle und einer Datei).
• Die Anzahl der Verbünde ist nicht begrenzt.
Join-Typ
Inner/Outer, Left/Right.
Cross, Natural
ODI Plattform – Verbesserungen in ODI 11gTransformation & Performance
Partitionierung
• Im Modell deklariert/ reverse-engineered
• Verwendet für Source/Targets
Lookups
• Lookup Wizard + Diagramm Artefakt
Left-outer joins oder Nested -select Syntax
Set-Based Operatoren (Union, Intersect, Minus, etc.)
• Merge: zusammenfügen mehrerer Datenflüsse (datasets) in ein Target.
• Jedes Dataset ist ähnlich einem 10g Interface.
Derived-selects in temporären Interfaces
• Temporäre Interfaces speichern (persistieren) keine Daten.
• anpassbare Sub-selects via KMs
Temporäre Indizes
• optimal eJoin/Filter Ausführung
• Index-Typen und Syntax sind Technologie-spezifisch
Native Unterstützung von Sequenzen in der Datenbank
4-32
What is the Flow?
Flow – Der Pfad, den die Daten nutzen, um von der
Quelle zum Ziel in einem ODI-Interface zu gelangen.
Der Flow legt fest, wohin und wie die Daten im Ziel
extrahiert, transformiert und integiert werden. Drei Faktoren:
• Wo liegt die Staging Area:• Im Ziel, in der Quelle oder auf einem dritten Server
• Wie sind Mappings, Filter und Joins aufgesetzt• Execution location: Quelle, Ziel oder Staging Area
• Ob Transformationen “active” sind
• Auswahl der Knowledge Module (KM)• LKM: Loading Knowledge Module
• IKM: Integration Knowledge Module
Erläuterungen zu Knowledge Modulen
• IKM mit Namen „incremental update“ generieren• Insert/update (key)
• Für CDC benötigt
• IKM mit Namen „control append“ generieren• Insert
• sehr viel performanter (weniger Speicherplatz)
• „Set-based“ vs. „Row-based“
• KM sind set-based
• Ausnahme: Row-based KM, auch für Debugging
4-34
DB2 UDB, Sunopsis Engine, etc.
Staging Area
Schnelle Konfiguration mit dem
Flow: Staging auf der Middle Tier
Source (Sybase)
ORDERS
LINES
CORRECTIONS
File
Target (Oracle)
SALESC$_0
C$_1
I$_SALES
1
2
3
5
Extract/Join/Transform
Extract/Transform
Join/Transform
Transform & Integrate
11-36
Das Package-Diagramm
Interface step
(selected)
ODI tool step
Diagram
Toolbox for ODI
tools
Toolbar
Properties of
selected step
Load Plan in ODI 11.1.1.5
• Ein ausführbares Objekt im Oracle Data Integrator,
das ein hierarchische strukturierte Schritte
enthalten kann
• Schritte von Load Plan können
bedingungsabhängig, parallel or in Serie
ausgeführt werden
• Die Blätter der Hierarchie sind Scenarios
Packages, Interfaces, Variables und Procedures können zu Load Plans hinzugefügt werden.
Use case – Sales Admin DemoLoad Plan vs. Package
• Source from SRC_REGION, etc. to
TRG_COUNTRY,TRG_REGION, etc.
• Sequenced in a package
What if we want parallelism?
Regional Data
Product Data
Use case – Sales Admin Demo
Load Plan vs. Package
We need to break into several packages…
Use case – Sales Admin Demo
Load Plan vs. Package
Package1: Regional Data
Package2: Product Data
15-42
Erstellen einer neuen Prozedur
1. Mit der rechten Maustasten auf den Procedures-Knoten unter Project klicken
2. New Procedure auswählen
3. Folgende Werte eingeben:• Name
• Description
4. Optional, als Standard definieren:
• Technology der Quelle
• Technology des Ziels
<Insert Picture Here>
Agenda
• Der Weg von OWB nach ODI
• Architektur und Laufzeitumgebung
• Entwickeln von Prozessen• Interfaces
• Packages
• Szenarien
• Knowledge Module
• Laufzeitumgebung
• Nutzen externe Funktionen• Java SDK
• Open Tools
• Ausblick
11-44
Ausführen eines Package
1. Klicke das Execute Icon im Fenster des Packages
2. Öffne den Operator
• Das Package wird alsSession gestartet.
• Jeder Schritt eines Packages ist ein Step
• Schritte von Werkzeugen erscheinenals einfacher Task
• Schritte von Interfaces zeigen jedes Kommando alsseparaten Task
3-45
Errors Reporting
• Das rote Icon im Baum
deutet auf einen Fehler
bei der Ausführung hin.
• Error Codes und Error
Messages werden auf
allen Ebenen angezeigt.
Einheitliche Administration und Monitoring
Oracle Enterprise Manager füreinheitliches Monitoring und einheitlicheAdministration
Erweitertes Error Management (präzisereError Messages, erweiterte Hinweise)
Oracle Data Integrator zum Managenvon Runtime-Operationen und zumSuchen nach Design-time Strukturensowie nach fehlerhaften Console Daten
Erweitertes Session Control (Stop immediate, stale sessions)
<Insert Picture Here>
Agenda
• Der Weg von OWB nach ODI
• Architektur und Laufzeitumgebung
• Entwickeln von Prozessen• Interfaces
• Packages
• Szenarien
• Knowledge Module
• Laufzeitumgebung
• Nutzen externer Funktionen• Java SDK
• Open Tools
• Ausblick
Overview of ODI SDK
• SDK erlaubt es Entwicklern, ODI Objekte programmatisch ohne
ODI 11g Studio zu erstellen
• SDK erlaubt es Entwicklern, ODI Transformationen in einem
Java Programm auszuführen
• Mit dem SDK kann ODI so erweitert werden, dass
Transformationen aus eigenen Programmen erstellt und
ausgeführt werden können, auch aus einer anderen GUI
• SDK ermöglicht es, dynamisch Transformationen zu erstellen
SDK Supported ODI Operations
• Master Repository:
• Creation of Master / Work repositories
• Creation and management the following objects:
• Data servers, Agents, Contexts
• Implementing mapping
• Work Repository:
• Creation and management of metadata
• Models and sub-models
• Datastores, Columns, Constraints
• Creation and management of ODI projects
• Projects, Folders, Interfaces, Variables, Packages
ODI Operations not Supported by SDK
• Master Repository:
• Creation of new technologies
• Security management
• Work Repository:
• Creation of new ODI Procedures (though procedures can be
imported and used)
• Creation of new Knowledge Modules
• Creation of new User Functions
• Locking / Unlocking of ODI objects
• Versioning of ODI objects
• Duplication of ODI objects in the repository
• Working with markers
• Setting values of Flex Fields
Open Tools API von ODI
• Aus dem Verzeichnis „bin“ kann das Kommando startscen mit den Parametern Name des Scenarios und
Kontext aufgerufen werden:startscen PKG_LD_ALL 001 DEV
• Ebenso lassen sich auch alle Kommandos in den
Packages über die Tools API aufrufen:
startcmd OdiExportAllScen "-
FROM_PROJECT=2071" "-TODIR=c:\temp\"
"RECURSIVE_EXPORT=yes"
• Voraussetzung: ODIParams.bat/sh manuell konfigurieren
<Insert Picture Here>
Agenda
• Der Weg von OWB nach ODI
• Architektur und Laufzeitumgebung
• Entwickeln von Prozessen• Interfaces
• Packages
• Szenarien
• Knowledge Module
• Laufzeitumgebung
• Nutzen externer Funktionen• Java SDK
• Open Tools
• Ausblick
ODI 11gR1 (11.1.1.x) Core
11.1.1.3.0
• Initial 11gR1 Release
Patches
• ODI Studio Usability Fixes
PS1 11.1.1.5.0
• Load Plans
• ODI/OBIEE Lineage
• SQL On Connect
• Ordered/Non-Ordered
• Task Name API
• Complex File Driver
• Groovy Technology
• Web Services
• Async Calls
• Callback
• Performance
• Repository Chattiness
• Long Text Optimization
• JDBC Streaming
PS2 11.1.1.6.0BI Apps Release
• Shortcutting
• Smart Import
• Variable value in Log
• Global KMs
• KM Versions
• Platform Compiler
• Groovy Scripting
• MySQL Repository
• WAS Support
12g
Developer On-Ramp
• Declarative + Flow BasedDesign
• Component KMs
• ReusableInterfaces
• Parallelism
• Data Chunking
• Debugging
• MetadataManager
• OWB2ODI
• Data Modeler
• OGG Integration
• Advanced Management Pack
Summer 2010
H1CY11
H2CY11
Dec’2010