51
<Insert Picture Here> ODI 11g für OWB-Entwickler Dr. Holger Dresing, Oracle Deutschland BV & Co. KG Data Integration Solutions DIS EMEA [email protected]

ODI 11g für OWB-Entwickler - doag.org · ODI 11g für OWB-Entwickler ... Teradata Server Schema Microsoft Access Database (N/A) ... Join-Typ Inner/Outer, Left/Right. Cross, Natural

Embed Size (px)

Citation preview

<Insert Picture Here>

ODI 11g für OWB-Entwickler

Dr. Holger Dresing, Oracle Deutschland BV & Co. KG

Data Integration Solutions – DIS EMEA

[email protected]

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

HA Reference Architecture

11

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

4-35

In ODI Studio:

Staging Area in der

Sunopsis Memory Engine

Target

Staging Area

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

Same case designed with a Load Plan

Use case – Sales Admin Demo

Load Plan vs. Package

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