SlideShare a Scribd company logo
http://gurcanorhan.wordpress.com
@gurcan_orhan
http://tr.linkedin.com/in/gurcanorhan
Gürcan ORHAN
Enterprise Data Warehouse Architect
Ekol Logistics Corp.
16th June 2017
Migration Steps from Oracle Warehouse
Builder (OWB) to Oracle Data Integrator (ODI)
Who Am I ?
+20 years of IT experience.
+14 years of DWH experience.
+10 years of Oracle Data Integrator experience.
+8 years of Oracle Warehouse Builder experience.
Sybase Power Designer, ERwin Data Modeler, SDDM
OBIEE, Cognos, Microstrategy, Business Objects, Qlikview, Tableau
IBM Data Stage, SAP Data Services, Informatica, etc…
Oracle Excellence Awards - Technologist of the Year 2011 :
Enterprise Architect
DWH & BI Chair : TROUG (Turkish Oracle User Group)
Published Customer Snapshot for NODI @Oracle.com
Published videos about ODI @Oracle.com (Oracle Media Network)
Published OTN Podcasts about
“Data Warehousing and ODI”
“ODI and the Evolution of Data Integration”
3 different “2MTT”s
Articles in OTech Magazine, SearchSoftwareQuality.com
Annual panelist for ODTUG “Ask the Experts Panel : ODI”
Presenter in OOW since 2010 (7 times in a row ⭐ )
Presenter in many OUG conferences in globe
Presenter in various universities in Turkey
16 JUNE 2017 / #OGHTECH17 2
Ekol Germany
Warehousing
Solutions
begin with the
Kardelen Facility
1996 2003 2010 2012 2014 2016
201520132011200820021990
Acquire STS Int.
Transport
Ekol Bosnia
Ekol France
Ekol Greece
Ekol Ukraine
Ekol Spain
Ekol Bulgaria
Ekol Czech Rep.
Ekol Iran
Ekol PolandEkol Italy
Ekol Romania
Ekol HungaryAcquire
Unok/Unatsan
Rainbow
Replaced by
Quadro
(software)
Intermodal
operations Ro-Ro
operations
Established
Ekol Milestones
USA
Ekol Locations
Currentcountries
15 80
locations
2017
23
countries
92
locations
2018
31
countries
104
locations
2019
42
countries
122
locations
CN
Overview
16 JUNE 2017 / #OGHTECH17
My Definition of ODI
6
AGENDA
16 JUNE 2017 / #OGHTECH17
Quote of the Day
16 JUNE 2017 / #OGHTECH17
Some Facts
 ODI is the strategic product for heterogeneous data
integration as declared in “statement of direction”
 No major releases in Oracle Warehouse Builder
(latest release is 11GR2 - 11.2.0.4)
 OWB will not be shipped with database 12c
 No OWB documentation included in database 12c
 OWB Support continues 😊
 OWB is still supported by database 12c 😊
OWB 11.2.0.3 + CP2 is certified with database 12c 😊
 OWB is not supported by Cloud environment
16 JUNE 2017 / #OGHTECH17
Some Facts
16 JUNE 2017 / #OGHTECH17
REQUIREMENTS (safe harbour)
Oracle Warehouse Builder
- version 11.2.0.4
(plus patch # 18537208)
(plus patch # 21687102)
Oracle Data Integrator
- version 12.1.3.x.x or 12.2.1.x.x
2 Oracle Database instances
recommendation : 11G R2 (11.2.0.4)
A Linux based server
- version 11.2.0.3
(plus CP3 #16568042)
16 JUNE 2017 / #OGHTECH17
Build Up Laboratory Environment (safe harbour)
SOURCE TARGET
OWB
ODI
Run your OWB jobs initially
before starting migration
 Migration Utility is a command-line tool which runs on OWB installation
directory, migrates design-time metadata.
 Linux 64-Bit or Windows 64-Bit StandAlone ODI Agent (with patch
17224695 for Migration Utility)
Upgrade your OWB, ODI
installations to required versions
16 JUNE 2017 / #OGHTECH17
When your manager asks you…
Data Integration on the Cloud
Oracle Data Integrator Cloud Services is Ready…
AGENDA
16 JUNE 2017 / #OGHTECH17
Supported OWB Objects
sourceandtargetmodules
locations tables
(columns, keys, indexes)
views
(columns,keys)
sequences
materialized
views
(columns, keys,
indexes)
classic mappings
Code Template mappings
Aggregator
Constant
Expression
Flat File
Mapping
Input
Parameter
Sequence
Set
Splitter
Transformatio
n
AGENDA
16 JUNE 2017 / #OGHTECH17
NOT Supported OWB Objects (Limitations)
table
(partitions
attribute sets,
data rules)
dimensional
modeling
metadata
custom
PL/SQL
(procedure,
package,
and so on)
user-defined types
streams
CDCconfigurations
process
flow
mappings using dimension and
cube
nameandaddress
match-merge
data rules
data auditors
expand
configuration details
(security,
user extensions,
transportable modules,
schedules/collections,
user folders)
OMB*Plusscripts
data profiles
materialized view
(partitions,
attribute sets,
data rules)
AGENDA
16 JUNE 2017 / #OGHTECH17
Some Facts
16 JUNE 2017 / #OGHTECH17
Prepare Migration Utility Configuration File
migration.config (mandatory parameters)
ODI_MASTER_USER=<user_name>
ODI_MASTER_URL=<JDBC_URL>
ODI_MASTER_DRIVER=<JDBC_driver_name>
ODI_USERNAME=<user_name>
ODI_WORK_REPOSITORY_NAME=<user_name>
OWB_WORKSPACE_OWNER=<workspace_owner>
OWB_URL=<URL>
OWB_WORKSPACE_NAME=<workspace_name>
{jdbc:oracle:thin:@localhost:1521:mydb}
{oracle.jdbc.OracleDriver}
{SUPERVISOR}
{WORKREP1}
{localhost:1521:mydb}
{REP_1.WS1}
{WS1}
16 JUNE 2017 / #OGHTECH17
Prepare Migration Utility Configuration File
migration.config (optional parameters)
MIGRATION_LOG_FILE=<path_to_log_file>
MIGRATION_REPORT_INCLUDE=<PASSED|FAILED|ALL˙>
MIGRATION_MODE=<FAST_CHECK|DRY_RUN|RUN˙>
MIGRATE_DEPENDENCIES=<TRUE|FALSE˙>
STOP_ON_ERROR=<TRUE|FALSE˙>
SPLIT_JOIN_FOR_ANSI_SYNTAX=<TRUE˙|FALSE>
MIGRATE_UNBOUND_OPERATOR=<TRUE|FALSE˙>
MIGRATION_OBJECTS=<objects {*˙}>
FLUSH_BATCH_SIZE=<number_of_mappings {50˙}>
16 JUNE 2017 / #OGHTECH17
Run & Review the Migration Utility
./migration.sh
<odi_master_password>
<odi_user_password>
<owb_workspace_owner_password>
./migration.log
➙ {detailed}
./migration.report
➙ {exclusion}
16 JUNE 2017 / #OGHTECH17
Exclusive Report*******************************************************************************
* Oracle Warehouse Builder - Migration Utility - Summary Report
* Created: 9/30/13 10:17 AM
* Migration Report Style - RUN
* OWB Release:11.2.0.4.0 - OWB Repository:
OWB_REPO_MIG/machine.oracle.com:1521:orcl11204 - OWB Workspace:
OWB_REPO_MIG.OWB_REPO_WKSP1
* ODI Release:12.1.2 - ODI Master Repository:
mig12c/jdbc:oracle:thin:@machine:1521:orcl11203 - ODI User/Work Repository:
SUPERVISOR/WORKREP1
* Report File: /scratch/jsmith/Migration/migration.report
******************************************************************************
Migration started at 9/30/13 10:17 AM Pacific Standard Time
Statistics
-----------
Total Projects Migrated: 2
******************************************************************************
PROJECT: PUBLIC_PROJECT
Object Types Migrated Not-Migrated
------------- --------- ------------
LOCATION: 1 0
******************************************************************************
PROJECT: MY_PROJECT
Object Types Migrated Not-Migrated
------------- --------- ------------
TABLE: 2 0
MAPPING_MODULE: 1 0
MODULE: 1 0
MAPPING: 1 0
Details
-----------
******************************************************************************
PROJECT: PUBLIC_PROJECT
Object Types Status
------------ -------
LOCATION
ORACLE_WH_LOCATION SUCCESS
******************************************************************************
PROJECT: MY_PROJECT
Object Types Status
------------ -------
TABLE
TAB1 SUCCESS
TAB2 SUCCESS
MAPPING_MODULE
AA_UNBOUND_TEST SUCCESS
MODULE
AA_UNBOUND_TEST SUCCESS
MAPPING
MAP_UO_CASE2 SUCCESS
MAPPING
UNBOUND_LOOKUP_MAP [ERROR][Migration][MU-5011]Unable to find bound table for
output attribute group OUTGRP1 in Lookup DEPT_LOOKUP.
Migration ended at 9/30/13 10:17 AM Pacific Standard Time
Total migration time (hh:mm:ss): 00:00:07
16 JUNE 2017 / #OGHTECH17
Detailed Report*******************************************************************************
* Oracle Warehouse Builder - Migration Utility - Log
* Created: 9/30/13 10:17 AM
• Migration Report Style - RUN
* OWB Release:11.2.0.4.0 - OWB Repository:
OWB_REPO_MIG/machine.oracle.com:1521:orcl11204 - OWB Workspace:
OWB_REPO_MIG.OWB_REPO_WKSP1
* ODI Release:12.1.2 - ODI Master Repository:
mig12c/jdbc:oracle:thin:@machine:1521:orcl11203 - ODI User/Work Repository:
SUPERVISOR/WORKREP1
* Log File: /scratch/jsmith/Migration/migration.log
*******************************************************************************
Migration started at 9/30/13 10:17 AM Pacific Standard Time
*******************************************************************************
----START MIGRATE LOCATION ORACLE_WH_LOCATION.
----SUCCESSFULLY MIGRATED ORACLE_WH_LOCATION.
START MIGRATE PROJECT MY_PROJECT.
FLUSH OdiDataServer[1] COST(MS):80
----START MIGRATE MODULE AA_UNBOUND_TEST.
FLUSH OdiLogicalSchema[1] COST(MS):16
----SUCCESSFULLY MIGRATED AA_UNBOUND_TEST.
----START MIGRATE MAPPING_MODULE AA_UNBOUND_TEST.
------------START MIGRATE TABLE TAB2.
FLUSH OdiFolder[1] COST(MS):343
------------SUCCESSFULLY MIGRATED TAB2.
------------START MIGRATE TABLE TAB1.
------------SUCCESSFULLY MIGRATED TAB1.
--------START MIGRATE MAPPING MAP_UO_CASE2.
FLUSH MAPPING, MIGRATED 0 COST(MS):31
--------SUCCESSFULLY MIGRATED MAP_UO_CASE2.
----SUCCESSFULLY MIGRATED AA_UNBOUND_TEST.
SUCCESSFULLY MIGRATED MY_PROJECT.
******************************************************************************
TABLE[TOTAL:2 MIGRATED:2 SKIPPED:0].
----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST].MAPPING[MAP_UO_CASE2].OPERATOR[TAB1].
----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST].MAPPING[MAP_UO_CASE2].OPERATOR[TAB2].
LOCATION[TOTAL:1 MIGRATED:1 SKIPPED:0].
----PASSED: PROJECT[PUBLIC_PROJECT].LOCATION[ORACLE_WH_LOCATION].
MAPPING_MODULE[TOTAL:1 MIGRATED:1 SKIPPED:0].
----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST].
MODULE[TOTAL:1 MIGRATED:1 SKIPPED:0].
----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST].
PROJECT[TOTAL:1 MIGRATED:1 SKIPPED:0].
----PASSED: PROJECT[MY_PROJECT].
MAPPING[TOTAL:1 MIGRATED:1 SKIPPED:0].
----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST].MAPPING[MAP_UO_CASE2].
*******************************************************************************
Migration ended at 9/30/13 10:17 AM Pacific Standard Time
Total migration time (hh:mm:ss): 00:00:07
16 JUNE 2017 / #OGHTECH17
Special Cases During Migration
2 Operators connected to same operator
16 JUNE 2017 / #OGHTECH17
Special Cases During Migration
Tables with multiple Primary Keys
if target table has multiple primary keys, since only
one primary key is allowed in ODI, the redundant
primary keys will be migrated as alternate keys.
16 JUNE 2017 / #OGHTECH17
Special Cases During Migration
Multiple operators connected from and to same operator
16 JUNE 2017 / #OGHTECH17
Special Cases During Migration
Lookup operator has a constant as input
16 JUNE 2017 / #OGHTECH17
Special Cases During Migration
Lookup Operators Have No Driver Table (Mapping Is Invalid)
16 JUNE 2017 / #OGHTECH17
Special Cases During Migration
Multiple operators connected to same operator, some with no
upstream source
16 JUNE 2017 / #OGHTECH17
Special Cases During Migration
Multiple operators connected to same operator, all with
different upstream operator
AGENDA
16 JUNE 2017 / #OGHTECH17
Planning to Decide HOW
Manual jobs after “successful” migration
User Folders
Packages
Scheduling
User Defined Data Types
Model Folders
16 JUNE 2017 / #OGHTECH17
Recommendations
 Migrate everything and see what is migrating, what is not
 Run everything without source data
 Rollback everything (a fresh new ODI
12c)
 Create folders, model folders in ODI 12c
 Start migration per folder
 Check migration logs for errors
 Correct issues for mappings with error
 Re-run ODI 12c with source data
AGENDA
16 JUNE 2017 / #OGHTECH17
What If Scenarios (Migration on Production)
16 JUNE 2017 / #OGHTECH17
What If All Mappings not Migrated?
16 JUNE 2017 / #OGHTECH17
A CURE is Needed.
The Cure is OdiStartOwbJob tool of ODI 12c
Define OWB workspace in ODI 12c Topology Manager
16 JUNE 2017 / #OGHTECH17
ODIStartOWBJob Parameters
˙WORKSPACE=<logical OWB repository>
˙LOCATION=<OWB location>
˙OBJECT_NAME=<OWB object name>
˙OBJECT_TYPE=<OWB object type>
EXEC_PARAMS=<execution parameters>
CONTEXT=<context code>
LOG_LEVEL=<log level - 5˙>
SYNC_MODE=<1˙|2>
POLLINT=<#n - 0˙>
SESSIONNAME=<session name>
KEYWORDS=<keywords>
<OWB Parameters>
16 JUNE 2017 / #OGHTECH17
1. Call OWB Mappings from ODI Packages
Create an ODI package with
many ‘OdiStartOwbJob’
tool.
Run everything in ODI, but call
OWB mappings in right order
and sequence (synchronous /
asynchronous).
42
16 JUNE 2017 / #OGHTECH17
Divide into Work Packages (Agile Methodology)
Divide OWB
mappings into Work
Packages
Perform Migration for
WP #n
Correct errors, rewrite if
not migratedChange
OdiStartOwbJob to ODI
object.
16 JUNE 2017 / #OGHTECH17
Step by Step Migration Facts
16 JUNE 2017 / #OGHTECH17
http://gurcanorhan.wordpress.com
@gurcan_orhan
http://tr.linkedin.com/in/gurcanorhan
…Final Words…
45
Deloitte refers to one or more of Deloitte Touche Tohmatsu Limited, a UK private company limited by guarantee (“DTTL”), its network of member firms,
and their related entities. DTTL and each of its member firms are legally separate and independent entities. DTTL (also referred to as “Deloitte Global”)
does not provide services to clients. Please see www.deloitte.com/about for a more detailed description of DTTL and its member firms.
Deloitte provides audit, consulting, financial advisory, risk management, tax and related services to public and private clients spanning multiple
industries. With a globally connected network of member firms in more than 150 countries and territories, Deloitte brings world-class capabilities and
high-quality service to clients, delivering the insights they need to address their most complex business challenges. Deloitte’s more than 210,000
professionals are committed to becoming the standard of excellence.
This communication contains general information only, and none of Deloitte Touche Tohmatsu Limited, its member firms, or their related entities
(collectively, the “Deloitte network”) is, by means of this communication, rendering professional advice or services. No entity in the Deloitte network shall
be responsible for any loss whatsoever sustained by any person who relies on this communication
© 2015. For more information, contact Deloitte Touche Tohmatsu Limited.

More Related Content

PDF
How many ways to monitor oracle golden gate - OOW14
PDF
Odi 12c-getting-started-guide-2032250
PPTX
Trace Elements in Clinical Science
PDF
Oracle GoldenGate Veridata概要
PPTX
hbstudy 74 Site Reliability Engineering
PDF
Rapid Home Provisioning
PPTX
MongoDB: システム可用性を拡張するインデクス戦略
PDF
固定化か?最新化か?オプティマイザ統計の運用をもう一度考える。 -JPOUG Tech Talk Night #6-
How many ways to monitor oracle golden gate - OOW14
Odi 12c-getting-started-guide-2032250
Trace Elements in Clinical Science
Oracle GoldenGate Veridata概要
hbstudy 74 Site Reliability Engineering
Rapid Home Provisioning
MongoDB: システム可用性を拡張するインデクス戦略
固定化か?最新化か?オプティマイザ統計の運用をもう一度考える。 -JPOUG Tech Talk Night #6-

Viewers also liked (18)

PDF
Oracle Warehouse Builder to Oracle Data Integrator 12c Migration Utility
PDF
OWB process flow conversion
PDF
The Time is Now! Migrating from OWB to ODI 12c
PPTX
Best Practices with ODI : Flexibility
PDF
Migration-service-from-OWB-to-ODI-D&T
PPTX
Making Oracle Services work
PPT
From Oracle Warehouse Builder to Oracle Data Integrator fast and safe.
PDF
The Time is Now: Migrating from Oracle Warehouse Builder to Oracle Data Integ...
PPTX
Veri Ambarı Nedir, Nasıl Oluşturulur?
PPSX
OWB to ODI migration service presentation
PPTX
Hitchhiker's Guide to free Oracle tuning tools
PPTX
How to Handle DEV&TEST&PROD for Oracle Data Integrator
PDF
Oracle SQL tuning with SQL Plan Management
PPT
Oracle Database Vault
PPTX
UKOUG Tech 15 - Migration from Oracle Warehouse Builder to Oracle Data Integr...
PPTX
How to solve complex business requirements with Oracle Data Integrator?
PPTX
ODI 12c Installation and New Features
PPTX
Oracle Data Integration Presentation
Oracle Warehouse Builder to Oracle Data Integrator 12c Migration Utility
OWB process flow conversion
The Time is Now! Migrating from OWB to ODI 12c
Best Practices with ODI : Flexibility
Migration-service-from-OWB-to-ODI-D&T
Making Oracle Services work
From Oracle Warehouse Builder to Oracle Data Integrator fast and safe.
The Time is Now: Migrating from Oracle Warehouse Builder to Oracle Data Integ...
Veri Ambarı Nedir, Nasıl Oluşturulur?
OWB to ODI migration service presentation
Hitchhiker's Guide to free Oracle tuning tools
How to Handle DEV&TEST&PROD for Oracle Data Integrator
Oracle SQL tuning with SQL Plan Management
Oracle Database Vault
UKOUG Tech 15 - Migration from Oracle Warehouse Builder to Oracle Data Integr...
How to solve complex business requirements with Oracle Data Integrator?
ODI 12c Installation and New Features
Oracle Data Integration Presentation
Ad

Similar to Migration Steps from OWB 2 ODI (20)

PPTX
Database As A Service: OEM + ODA (OOW 15 Presentation)
PDF
DataLogicIT - Steve Renalds 2016
PDF
GLOC 2014 NEOOUG - R12 Upgrade Downtime Reduction
PDF
MV2ADB - Move to Oracle Autonomous Database in One-click
PDF
Create your oracle_apps_r12_lab_with_less_than_us1000
DOCX
LALIT-TCS
PDF
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...
PDF
Delivering a bleeding edge community led open stack distribution- rdo
DOCX
CV_Gagan_Kumar - latest
PDF
State of GeoServer 2.10
PPTX
Database Migration Assistant for Unicode (DMU)
PDF
owb-11gr2-new-features-summary-129693
PPTX
Get the most out of Oracle Data Guard - POUG version
DOC
Sourav_Giri_Resume_2015
DOC
Arun-Kumar-OEDQ-Developer
PPTX
The AMIS Report from Oracle Open World and JavaOne 2011 - Part One
PPTX
RheoData_OGG-Classic2Microservices_2024-UKOUG24.pptx
PDF
Preparing forr12-140703020001-phpapp02
Database As A Service: OEM + ODA (OOW 15 Presentation)
DataLogicIT - Steve Renalds 2016
GLOC 2014 NEOOUG - R12 Upgrade Downtime Reduction
MV2ADB - Move to Oracle Autonomous Database in One-click
Create your oracle_apps_r12_lab_with_less_than_us1000
LALIT-TCS
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...
Delivering a bleeding edge community led open stack distribution- rdo
CV_Gagan_Kumar - latest
State of GeoServer 2.10
Database Migration Assistant for Unicode (DMU)
owb-11gr2-new-features-summary-129693
Get the most out of Oracle Data Guard - POUG version
Sourav_Giri_Resume_2015
Arun-Kumar-OEDQ-Developer
The AMIS Report from Oracle Open World and JavaOne 2011 - Part One
RheoData_OGG-Classic2Microservices_2024-UKOUG24.pptx
Preparing forr12-140703020001-phpapp02
Ad

Recently uploaded (20)

PPTX
Qualitative Qantitative and Mixed Methods.pptx
PDF
Microsoft Core Cloud Services powerpoint
PDF
annual-report-2024-2025 original latest.
PPTX
AI Strategy room jwfjksfksfjsjsjsjsjfsjfsj
PDF
Optimise Shopper Experiences with a Strong Data Estate.pdf
PPTX
QUANTUM_COMPUTING_AND_ITS_POTENTIAL_APPLICATIONS[2].pptx
PPTX
SAP 2 completion done . PRESENTATION.pptx
PPTX
Introduction to Inferential Statistics.pptx
PPTX
IMPACT OF LANDSLIDE.....................
PPT
lectureusjsjdhdsjjshdshshddhdhddhhd1.ppt
PPTX
Topic 5 Presentation 5 Lesson 5 Corporate Fin
PDF
Systems Analysis and Design, 12th Edition by Scott Tilley Test Bank.pdf
PPTX
sac 451hinhgsgshssjsjsjheegdggeegegdggddgeg.pptx
PPTX
modul_python (1).pptx for professional and student
PPTX
(Ali Hamza) Roll No: (F24-BSCS-1103).pptx
PDF
[EN] Industrial Machine Downtime Prediction
PPTX
Leprosy and NLEP programme community medicine
PPTX
CYBER SECURITY the Next Warefare Tactics
PPT
ISS -ESG Data flows What is ESG and HowHow
PPTX
01_intro xxxxxxxxxxfffffffffffaaaaaaaaaaafg
Qualitative Qantitative and Mixed Methods.pptx
Microsoft Core Cloud Services powerpoint
annual-report-2024-2025 original latest.
AI Strategy room jwfjksfksfjsjsjsjsjfsjfsj
Optimise Shopper Experiences with a Strong Data Estate.pdf
QUANTUM_COMPUTING_AND_ITS_POTENTIAL_APPLICATIONS[2].pptx
SAP 2 completion done . PRESENTATION.pptx
Introduction to Inferential Statistics.pptx
IMPACT OF LANDSLIDE.....................
lectureusjsjdhdsjjshdshshddhdhddhhd1.ppt
Topic 5 Presentation 5 Lesson 5 Corporate Fin
Systems Analysis and Design, 12th Edition by Scott Tilley Test Bank.pdf
sac 451hinhgsgshssjsjsjheegdggeegegdggddgeg.pptx
modul_python (1).pptx for professional and student
(Ali Hamza) Roll No: (F24-BSCS-1103).pptx
[EN] Industrial Machine Downtime Prediction
Leprosy and NLEP programme community medicine
CYBER SECURITY the Next Warefare Tactics
ISS -ESG Data flows What is ESG and HowHow
01_intro xxxxxxxxxxfffffffffffaaaaaaaaaaafg

Migration Steps from OWB 2 ODI

  • 1. http://gurcanorhan.wordpress.com @gurcan_orhan http://tr.linkedin.com/in/gurcanorhan Gürcan ORHAN Enterprise Data Warehouse Architect Ekol Logistics Corp. 16th June 2017 Migration Steps from Oracle Warehouse Builder (OWB) to Oracle Data Integrator (ODI)
  • 2. Who Am I ? +20 years of IT experience. +14 years of DWH experience. +10 years of Oracle Data Integrator experience. +8 years of Oracle Warehouse Builder experience. Sybase Power Designer, ERwin Data Modeler, SDDM OBIEE, Cognos, Microstrategy, Business Objects, Qlikview, Tableau IBM Data Stage, SAP Data Services, Informatica, etc… Oracle Excellence Awards - Technologist of the Year 2011 : Enterprise Architect DWH & BI Chair : TROUG (Turkish Oracle User Group) Published Customer Snapshot for NODI @Oracle.com Published videos about ODI @Oracle.com (Oracle Media Network) Published OTN Podcasts about “Data Warehousing and ODI” “ODI and the Evolution of Data Integration” 3 different “2MTT”s Articles in OTech Magazine, SearchSoftwareQuality.com Annual panelist for ODTUG “Ask the Experts Panel : ODI” Presenter in OOW since 2010 (7 times in a row ⭐ ) Presenter in many OUG conferences in globe Presenter in various universities in Turkey 16 JUNE 2017 / #OGHTECH17 2
  • 3. Ekol Germany Warehousing Solutions begin with the Kardelen Facility 1996 2003 2010 2012 2014 2016 201520132011200820021990 Acquire STS Int. Transport Ekol Bosnia Ekol France Ekol Greece Ekol Ukraine Ekol Spain Ekol Bulgaria Ekol Czech Rep. Ekol Iran Ekol PolandEkol Italy Ekol Romania Ekol HungaryAcquire Unok/Unatsan Rainbow Replaced by Quadro (software) Intermodal operations Ro-Ro operations Established Ekol Milestones
  • 6. 16 JUNE 2017 / #OGHTECH17 My Definition of ODI 6
  • 8. 16 JUNE 2017 / #OGHTECH17 Quote of the Day
  • 9. 16 JUNE 2017 / #OGHTECH17 Some Facts  ODI is the strategic product for heterogeneous data integration as declared in “statement of direction”  No major releases in Oracle Warehouse Builder (latest release is 11GR2 - 11.2.0.4)  OWB will not be shipped with database 12c  No OWB documentation included in database 12c  OWB Support continues 😊  OWB is still supported by database 12c 😊 OWB 11.2.0.3 + CP2 is certified with database 12c 😊  OWB is not supported by Cloud environment
  • 10. 16 JUNE 2017 / #OGHTECH17 Some Facts
  • 11. 16 JUNE 2017 / #OGHTECH17 REQUIREMENTS (safe harbour) Oracle Warehouse Builder - version 11.2.0.4 (plus patch # 18537208) (plus patch # 21687102) Oracle Data Integrator - version 12.1.3.x.x or 12.2.1.x.x 2 Oracle Database instances recommendation : 11G R2 (11.2.0.4) A Linux based server - version 11.2.0.3 (plus CP3 #16568042)
  • 12. 16 JUNE 2017 / #OGHTECH17 Build Up Laboratory Environment (safe harbour) SOURCE TARGET OWB ODI Run your OWB jobs initially before starting migration  Migration Utility is a command-line tool which runs on OWB installation directory, migrates design-time metadata.  Linux 64-Bit or Windows 64-Bit StandAlone ODI Agent (with patch 17224695 for Migration Utility) Upgrade your OWB, ODI installations to required versions
  • 13. 16 JUNE 2017 / #OGHTECH17 When your manager asks you…
  • 14. Data Integration on the Cloud
  • 15. Oracle Data Integrator Cloud Services is Ready…
  • 17. 16 JUNE 2017 / #OGHTECH17 Supported OWB Objects sourceandtargetmodules locations tables (columns, keys, indexes) views (columns,keys) sequences materialized views (columns, keys, indexes) classic mappings Code Template mappings Aggregator Constant Expression Flat File Mapping Input Parameter Sequence Set Splitter Transformatio n
  • 19. 16 JUNE 2017 / #OGHTECH17 NOT Supported OWB Objects (Limitations) table (partitions attribute sets, data rules) dimensional modeling metadata custom PL/SQL (procedure, package, and so on) user-defined types streams CDCconfigurations process flow mappings using dimension and cube nameandaddress match-merge data rules data auditors expand configuration details (security, user extensions, transportable modules, schedules/collections, user folders) OMB*Plusscripts data profiles materialized view (partitions, attribute sets, data rules)
  • 21. 16 JUNE 2017 / #OGHTECH17 Some Facts
  • 22. 16 JUNE 2017 / #OGHTECH17 Prepare Migration Utility Configuration File migration.config (mandatory parameters) ODI_MASTER_USER=<user_name> ODI_MASTER_URL=<JDBC_URL> ODI_MASTER_DRIVER=<JDBC_driver_name> ODI_USERNAME=<user_name> ODI_WORK_REPOSITORY_NAME=<user_name> OWB_WORKSPACE_OWNER=<workspace_owner> OWB_URL=<URL> OWB_WORKSPACE_NAME=<workspace_name> {jdbc:oracle:thin:@localhost:1521:mydb} {oracle.jdbc.OracleDriver} {SUPERVISOR} {WORKREP1} {localhost:1521:mydb} {REP_1.WS1} {WS1}
  • 23. 16 JUNE 2017 / #OGHTECH17 Prepare Migration Utility Configuration File migration.config (optional parameters) MIGRATION_LOG_FILE=<path_to_log_file> MIGRATION_REPORT_INCLUDE=<PASSED|FAILED|ALL˙> MIGRATION_MODE=<FAST_CHECK|DRY_RUN|RUN˙> MIGRATE_DEPENDENCIES=<TRUE|FALSE˙> STOP_ON_ERROR=<TRUE|FALSE˙> SPLIT_JOIN_FOR_ANSI_SYNTAX=<TRUE˙|FALSE> MIGRATE_UNBOUND_OPERATOR=<TRUE|FALSE˙> MIGRATION_OBJECTS=<objects {*˙}> FLUSH_BATCH_SIZE=<number_of_mappings {50˙}>
  • 24. 16 JUNE 2017 / #OGHTECH17 Run & Review the Migration Utility ./migration.sh <odi_master_password> <odi_user_password> <owb_workspace_owner_password> ./migration.log ➙ {detailed} ./migration.report ➙ {exclusion}
  • 25. 16 JUNE 2017 / #OGHTECH17 Exclusive Report******************************************************************************* * Oracle Warehouse Builder - Migration Utility - Summary Report * Created: 9/30/13 10:17 AM * Migration Report Style - RUN * OWB Release:11.2.0.4.0 - OWB Repository: OWB_REPO_MIG/machine.oracle.com:1521:orcl11204 - OWB Workspace: OWB_REPO_MIG.OWB_REPO_WKSP1 * ODI Release:12.1.2 - ODI Master Repository: mig12c/jdbc:oracle:thin:@machine:1521:orcl11203 - ODI User/Work Repository: SUPERVISOR/WORKREP1 * Report File: /scratch/jsmith/Migration/migration.report ****************************************************************************** Migration started at 9/30/13 10:17 AM Pacific Standard Time Statistics ----------- Total Projects Migrated: 2 ****************************************************************************** PROJECT: PUBLIC_PROJECT Object Types Migrated Not-Migrated ------------- --------- ------------ LOCATION: 1 0 ****************************************************************************** PROJECT: MY_PROJECT Object Types Migrated Not-Migrated ------------- --------- ------------ TABLE: 2 0 MAPPING_MODULE: 1 0 MODULE: 1 0 MAPPING: 1 0 Details ----------- ****************************************************************************** PROJECT: PUBLIC_PROJECT Object Types Status ------------ ------- LOCATION ORACLE_WH_LOCATION SUCCESS ****************************************************************************** PROJECT: MY_PROJECT Object Types Status ------------ ------- TABLE TAB1 SUCCESS TAB2 SUCCESS MAPPING_MODULE AA_UNBOUND_TEST SUCCESS MODULE AA_UNBOUND_TEST SUCCESS MAPPING MAP_UO_CASE2 SUCCESS MAPPING UNBOUND_LOOKUP_MAP [ERROR][Migration][MU-5011]Unable to find bound table for output attribute group OUTGRP1 in Lookup DEPT_LOOKUP. Migration ended at 9/30/13 10:17 AM Pacific Standard Time Total migration time (hh:mm:ss): 00:00:07
  • 26. 16 JUNE 2017 / #OGHTECH17 Detailed Report******************************************************************************* * Oracle Warehouse Builder - Migration Utility - Log * Created: 9/30/13 10:17 AM • Migration Report Style - RUN * OWB Release:11.2.0.4.0 - OWB Repository: OWB_REPO_MIG/machine.oracle.com:1521:orcl11204 - OWB Workspace: OWB_REPO_MIG.OWB_REPO_WKSP1 * ODI Release:12.1.2 - ODI Master Repository: mig12c/jdbc:oracle:thin:@machine:1521:orcl11203 - ODI User/Work Repository: SUPERVISOR/WORKREP1 * Log File: /scratch/jsmith/Migration/migration.log ******************************************************************************* Migration started at 9/30/13 10:17 AM Pacific Standard Time ******************************************************************************* ----START MIGRATE LOCATION ORACLE_WH_LOCATION. ----SUCCESSFULLY MIGRATED ORACLE_WH_LOCATION. START MIGRATE PROJECT MY_PROJECT. FLUSH OdiDataServer[1] COST(MS):80 ----START MIGRATE MODULE AA_UNBOUND_TEST. FLUSH OdiLogicalSchema[1] COST(MS):16 ----SUCCESSFULLY MIGRATED AA_UNBOUND_TEST. ----START MIGRATE MAPPING_MODULE AA_UNBOUND_TEST. ------------START MIGRATE TABLE TAB2. FLUSH OdiFolder[1] COST(MS):343 ------------SUCCESSFULLY MIGRATED TAB2. ------------START MIGRATE TABLE TAB1. ------------SUCCESSFULLY MIGRATED TAB1. --------START MIGRATE MAPPING MAP_UO_CASE2. FLUSH MAPPING, MIGRATED 0 COST(MS):31 --------SUCCESSFULLY MIGRATED MAP_UO_CASE2. ----SUCCESSFULLY MIGRATED AA_UNBOUND_TEST. SUCCESSFULLY MIGRATED MY_PROJECT. ****************************************************************************** TABLE[TOTAL:2 MIGRATED:2 SKIPPED:0]. ----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST].MAPPING[MAP_UO_CASE2].OPERATOR[TAB1]. ----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST].MAPPING[MAP_UO_CASE2].OPERATOR[TAB2]. LOCATION[TOTAL:1 MIGRATED:1 SKIPPED:0]. ----PASSED: PROJECT[PUBLIC_PROJECT].LOCATION[ORACLE_WH_LOCATION]. MAPPING_MODULE[TOTAL:1 MIGRATED:1 SKIPPED:0]. ----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST]. MODULE[TOTAL:1 MIGRATED:1 SKIPPED:0]. ----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST]. PROJECT[TOTAL:1 MIGRATED:1 SKIPPED:0]. ----PASSED: PROJECT[MY_PROJECT]. MAPPING[TOTAL:1 MIGRATED:1 SKIPPED:0]. ----PASSED: PROJECT[MY_PROJECT].MODULE[AA_UNBOUND_TEST].MAPPING[MAP_UO_CASE2]. ******************************************************************************* Migration ended at 9/30/13 10:17 AM Pacific Standard Time Total migration time (hh:mm:ss): 00:00:07
  • 27. 16 JUNE 2017 / #OGHTECH17 Special Cases During Migration 2 Operators connected to same operator
  • 28. 16 JUNE 2017 / #OGHTECH17 Special Cases During Migration Tables with multiple Primary Keys if target table has multiple primary keys, since only one primary key is allowed in ODI, the redundant primary keys will be migrated as alternate keys.
  • 29. 16 JUNE 2017 / #OGHTECH17 Special Cases During Migration Multiple operators connected from and to same operator
  • 30. 16 JUNE 2017 / #OGHTECH17 Special Cases During Migration Lookup operator has a constant as input
  • 31. 16 JUNE 2017 / #OGHTECH17 Special Cases During Migration Lookup Operators Have No Driver Table (Mapping Is Invalid)
  • 32. 16 JUNE 2017 / #OGHTECH17 Special Cases During Migration Multiple operators connected to same operator, some with no upstream source
  • 33. 16 JUNE 2017 / #OGHTECH17 Special Cases During Migration Multiple operators connected to same operator, all with different upstream operator
  • 35. 16 JUNE 2017 / #OGHTECH17 Planning to Decide HOW Manual jobs after “successful” migration User Folders Packages Scheduling User Defined Data Types Model Folders
  • 36. 16 JUNE 2017 / #OGHTECH17 Recommendations  Migrate everything and see what is migrating, what is not  Run everything without source data  Rollback everything (a fresh new ODI 12c)  Create folders, model folders in ODI 12c  Start migration per folder  Check migration logs for errors  Correct issues for mappings with error  Re-run ODI 12c with source data
  • 38. 16 JUNE 2017 / #OGHTECH17 What If Scenarios (Migration on Production)
  • 39. 16 JUNE 2017 / #OGHTECH17 What If All Mappings not Migrated?
  • 40. 16 JUNE 2017 / #OGHTECH17 A CURE is Needed. The Cure is OdiStartOwbJob tool of ODI 12c Define OWB workspace in ODI 12c Topology Manager
  • 41. 16 JUNE 2017 / #OGHTECH17 ODIStartOWBJob Parameters ˙WORKSPACE=<logical OWB repository> ˙LOCATION=<OWB location> ˙OBJECT_NAME=<OWB object name> ˙OBJECT_TYPE=<OWB object type> EXEC_PARAMS=<execution parameters> CONTEXT=<context code> LOG_LEVEL=<log level - 5˙> SYNC_MODE=<1˙|2> POLLINT=<#n - 0˙> SESSIONNAME=<session name> KEYWORDS=<keywords> <OWB Parameters>
  • 42. 16 JUNE 2017 / #OGHTECH17 1. Call OWB Mappings from ODI Packages Create an ODI package with many ‘OdiStartOwbJob’ tool. Run everything in ODI, but call OWB mappings in right order and sequence (synchronous / asynchronous). 42
  • 43. 16 JUNE 2017 / #OGHTECH17 Divide into Work Packages (Agile Methodology) Divide OWB mappings into Work Packages Perform Migration for WP #n Correct errors, rewrite if not migratedChange OdiStartOwbJob to ODI object.
  • 44. 16 JUNE 2017 / #OGHTECH17 Step by Step Migration Facts
  • 45. 16 JUNE 2017 / #OGHTECH17 http://gurcanorhan.wordpress.com @gurcan_orhan http://tr.linkedin.com/in/gurcanorhan …Final Words… 45
  • 46. Deloitte refers to one or more of Deloitte Touche Tohmatsu Limited, a UK private company limited by guarantee (“DTTL”), its network of member firms, and their related entities. DTTL and each of its member firms are legally separate and independent entities. DTTL (also referred to as “Deloitte Global”) does not provide services to clients. Please see www.deloitte.com/about for a more detailed description of DTTL and its member firms. Deloitte provides audit, consulting, financial advisory, risk management, tax and related services to public and private clients spanning multiple industries. With a globally connected network of member firms in more than 150 countries and territories, Deloitte brings world-class capabilities and high-quality service to clients, delivering the insights they need to address their most complex business challenges. Deloitte’s more than 210,000 professionals are committed to becoming the standard of excellence. This communication contains general information only, and none of Deloitte Touche Tohmatsu Limited, its member firms, or their related entities (collectively, the “Deloitte network”) is, by means of this communication, rendering professional advice or services. No entity in the Deloitte network shall be responsible for any loss whatsoever sustained by any person who relies on this communication © 2015. For more information, contact Deloitte Touche Tohmatsu Limited.

Editor's Notes

  • #23: Migration.config is located in OWB_HOME/bin/admin
  • #24: PASSED : Include only objects that succeeded. FAILED : Include only objects that failed. ALL : Include all objects. Mode : FAST_CHECK : The migration utility performs a quick check for selected objects and provides a report that lists objects that can and cannot be migrated to the target ODI repository. Use this mode to quickly determine which objects can and cannot be migrated. DRY_RUN : The migration utility checks whether the specified objects can be created in the target ODI repository, and executes the migration without committing the objects to the repository. This mode provides more information than FAST_CHECK. Use this mode to more completely determine which objects can and cannot be migrated. RUN {default}: The migration utility executes the migration and commits migrated objects to the target ODI repository. Use this mode to perform the migration from OWB to ODI. SPLIT JOIN : Indicates whether to split the join operator to binary join when the property Use ANSI Syntax of the OWB mapping is set to TRUE. OUTBOUND OPERATOR : When set to TRUE, mappings that contain unbound operators are migrated. For unbound entity operators (external table, table, view, materialized view, and lookup), an ODI datastore corresponding to the unbound operator is created in the ODI model. For an unbound pluggable mapping operator, an ODI reusable mapping is created in an ODI folder named STAND_ALONE. MIGRATION OBJECTS : Project, Folder or a single object name. Use semicolumn to concatenate. Asterisk (*) for all objects starting/ending with the name.
  • #25: LOG : The migration utility log file contains details about objects that were migrated, and error messages if any errors occurred. REPORT : The migration utility exclusion report contains a summary of the objects migrated, and lists whether migration succeeded or failed for each object.
  • #28: The following figure shows an OWB mapping for which operators EMP and EXPRESSION are both connected to operator TGT_EMP through the same map attribute group INOUTGRP1. This is not allowed in ODI, because each input connector point in ODI can only be connected once.
  • #29: OWB tables are migrated to ODI data stores. In OWB, tables can have multiple primary keys. In ODI, data stores can have only one primary key. In the case of multiple primary keys, the first primary key is migrated as the primary key in ODI, and the others are migrated as alternate keys. When this situation occurs, the following warning message is written to the migration utility log file.
  • #30: The following figure shows an OWB mapping for which operators FILTER and EXPRESSION are both connected to operator TGT_EMP through the same map attribute group INOUTGRP1. This is not allowed in ODI. During migration, FILTER and EXPRESSION operators are chained together to ensure that only one is connected to TGT_EMP. As a result, the ODI mapping may be EMP > FILTER > EXPRESSION > TGT_EMP or EMP > EXPRESSION > FILTER > TGT_EMP.
  • #31: The following figure shows an OWB mapping for which the Lookup operator has no upstream source operator, and is only connected from a constant. The OWB mapping in the preceding figure is migrated to the ODI mapping in the following figure (DEP is the lookup table of the Lookup operator). The constant operator CONSTANT in the OWB mapping is not migrated to any map component in ODI. Instead, the expression of the constant attribute is migrated, and that expression is set on the Lookup component. For example, in OWB, if the expression of the attribute CONSTANT.OUTGRP1.NO is set to 5, and the lookup condition of LOOKUP_DEPT is OUTGRP1.DEPTNO = INGRP1.NO, then after migration the lookup condition of LOOKUP_DEPT in ODI is DEP.DEPTNO = 5.
  • #32: The following figure shows an OWB mapping for which several Lookup operators are connected to operator TGT_EMP, but some of the Lookup operators have no upstream operators as driver tables. This mapping is invalid, but will also be migrated. Only one map component can be connected to TGT_EMP in ODI. As a result, Lookup operators without driver tables will lose the connection to operator TGT_EMP. Note that expressions for the target attributes are migrated, even though these two lookup components are not connected.
  • #33: The following figure shows an OWB mapping for which two operators are connected to the same operator TGT_EMP. The EXPRESSION operator has an upstream source operator, while the JOINER operator does not. Only one map component can be connected to TGT_EMP in ODI. As a result, the operator with no upstream source operator will lose the connection to TGT_EMP. The OWB mapping in the preceding figure is migrated to the ODI mapping in the following figure.
  • #34: The following figure shows an OWB mapping for which two operators are connected to the same operator TGT_EMP. Both operators have an upstream operator. Only one map component can be connected to TGT_EMP in ODI. As a result, one operator will lose the connection to TGT_EMP. The OWB mapping in the preceding figure is migrated to one of the ODI mappings in the following figures.
  • #42: WORKSPACE : Logical schema of the OWB Runtime Repository technology. This resolves to a physical schema that represents the OWB workspace that contains the OWB object to be executed. OWB workspace was chosen when you added a Physical Schema under the OWB Runtime Repository DataServer in Topology Navigator. LOCATION : Name of the OWB location that contains the OWB object to be executed. This location must exist in the physical workspace that resolves from -WORKSPACE. OBJECT_NAME : Name of the OWB object. This object must exist in -LOCATION. OBJECT_TYPE : Type of OWB object : PLSQLMAP, PROCESSFLOW, SQLLOADERCONTROLFILE, MAPPING, DATAAUDITOR, ABAPFILE. EXEC_PARAMS : Custom and/or system parameters for the OWB execution. CONTEXT : Execution context of the OWB object. This is the context in which the logical workspace will be resolved. Studio editors use this value or the Default Context. Execution uses this value or the Parent Session context. LOG_LEVEL : Log level (0-5). Default is 5, which means that maximum details are captured in the log. SYNC_MODE : Synchronization mode of the OWB job => 1: Synchronous (Default), Asynchronous POLLINT : The period of time in milliseconds to wait between each transfer of OWB audit data to ODI log tables. The default value is 0, which means that audit data is transferred at the end of the execution. SESSION_NAME : Name of the OWB session as it appears in the log. KEYWORDS : Comma-separated list of keywords attached to the session. OWB PARAMS : List of values for the OWB parameters relevant to the object. This list is of the form -PARAM_NAME=value. OWB system parameters should be prefixed by OWB_SYSTEM, for example, OWB_SYSTEM.AUDIT_LEVEL.