Oracle Data Integrator Transformations: Adding More Complexity

Slides:



Advertisements
Similar presentations
Chapter 4 Joining Multiple Tables
Advertisements

CC SQL Utilities.
4 Oracle Data Integrator First Project – Simple Transformations: One source, one target 3-1.
Introduction to Structured Query Language (SQL)
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
Introduction to Structured Query Language (SQL)
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
Introduction to Structured Query Language (SQL)
Introduction To Form Builder
Using ERWin to model your data Supplied by Computer Associates as part of AllFusion.
® IBM Software Group © 2006 IBM Corporation The Eclipse Data Perspective and Database Explorer This section describes how to use the Eclipse Data Perspective,
5 Copyright © 2009, Oracle. All rights reserved. Defining ETL Mappings for Staging Data.
Database Constraints. Database constraints are restrictions on the contents of the database or on database operations Database constraints provide a way.
Microsoft Office Word 2013 Expert Microsoft Office Word 2013 Expert Courseware # 3251 Lesson 4: Working with Forms.
DAY 21: MICROSOFT ACCESS – CHAPTER 5 MICROSOFT ACCESS – CHAPTER 6 MICROSOFT ACCESS – CHAPTER 7 Akhila Kondai October 30, 2013.
Copyright 2007, Paradigm Publishing Inc. BACKNEXTEND 3-1 LINKS TO OBJECTIVES Save a Filter as a Query Save a Filter as a Query Parameter Query Inner, Left,
Databases and LINQ Visual Basic 2010 How to Program 1.
ASP.NET Programming with C# and SQL Server First Edition
AL-MAAREFA COLLEGE FOR SCIENCE AND TECHNOLOGY INFO 232: DATABASE SYSTEMS CHAPTER 7 INTRODUCTION TO STRUCTURED QUERY LANGUAGE (SQL) Instructor Ms. Arwa.
Web Application Development. Define ER model in QSEE Generate SQL Create Database mySQL Write Script to use TableEditor class Process to create A simple.
Oracle Data Integrator Changed Data Capture.
Web Application Development. Tools to create a simple web- editable database QSEE MySQL (or PHPMyAdmin) PHP TableEditor.
8-1 3 Oracle Data Integrator Topology: Connecting to the World.
10-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf.
DAY 14: ACCESS CHAPTER 1 Tazin Afrin October 03,
Automating Database Processing Chapter 6. Chapter Introduction Design and implement user-friendly menu – Called navigation form Macros – Automate repetitive.
1 Data Bound Controls II Chapter Objectives You will be able to Use a Data Source control to get data from a SQL database and make it available.
Oracle Data Integrator Workflow Management: The Packages.
Oracle Data Integrator Procedures, Advanced Workflows.
CIS 338: Using Queries in Access as a RecordSource Dr. Ralph D. Westfall May, 2011.
7 1 Chapter 7 Introduction to Structured Query Language (SQL) Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
6 1 Lecture 8: Introduction to Structured Query Language (SQL) J. S. Chou, P.E., Ph.D.
Copyright 2007, Paradigm Publishing Inc. ACCESS 2007 Chapter 2 BACKNEXTEND 2-1 LINKS TO OBJECTIVES Creating Related Tables Creating Related Tables Determining.
Copyright 2007, Paradigm Publishing Inc. ACCESS 2007 Chapter 3 BACKNEXTEND 3-1 LINKS TO OBJECTIVES Modify a Table – Add, Delete, Move Fields Modify a Table.
Database Systems Design, Implementation, and Management Coronel | Morris 11e ©2015 Cengage Learning. All Rights Reserved. May not be scanned, copied or.
Chapter 9 Constraints. Chapter Objectives  Explain the purpose of constraints in a table  Distinguish among PRIMARY KEY, FOREIGN KEY, UNIQUE, CHECK,
Oracle 11g: SQL Chapter 4 Constraints.
Chapter 4 Constraints Oracle 10g: SQL. Oracle 10g: SQL 2 Objectives Explain the purpose of constraints in a table Distinguish among PRIMARY KEY, FOREIGN.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
Oracle Data Integrator Data Quality (Integrity Control)
1 Chapter 4: Creating Simple Queries 4.1 Introduction to the Query Task 4.2 Selecting Columns and Filtering Rows 4.3 Creating New Columns with an Expression.
6 Copyright © 2009, Oracle. All rights reserved. Using the Data Transformation Operators.
Constraints Lesson 8. Skills Matrix Constraints Domain Integrity: A domain refers to a column in a table. Domain integrity includes data types, rules,
A Guide to SQL, Eighth Edition Chapter Six Updating Data.
RoOUG Iunie Bucuresti, 26 Iunie Agenda Inregistrarea participantilor ODI – Common Use Cases 2Iunie 2013.
22 Copyright © 2009, Oracle. All rights reserved. Filtering Requests in Oracle Business Intelligence Answers.
1 CS 430 Database Theory Winter 2005 Lecture 13: SQL DML - Modifying Data.
INCREMENTAL AGGREGATION After you create a session that includes an Aggregator transformation, you can enable the session option, Incremental Aggregation.
Aggregator Stage : Definition : Aggregator classifies data rows from a single input link into groups and calculates totals or other aggregate functions.
5 Copyright © 2008, Oracle. All rights reserved. Testing and Validating a Repository.
MICROSOFT ACCESS – CHAPTER 5 MICROSOFT ACCESS – CHAPTER 6 MICROSOFT ACCESS – CHAPTER 7 Sravanthi Lakkimsety Mar 14,2016.
 CONACT UC:  Magnific training   
Physical Layer of a Repository. March 6, 2009 Agenda – What is a Repository? –What is meant by Physical Layer? –Data Source, Connection Pool, Tables and.
Copyright © 2006, Oracle. All rights reserved. Czinkóczki László oktató Using the Oracle Warehouse Builder.
COMPUTER SKILLS MS-ACCESS. Introduction Access is a piece of software known as a database management system. At its most basic level, it can be used to.
Agenda for Today  DATABASE Definition What is DBMS? Types Of Database Most Popular Primary Database  SQL Definition What is SQL Server? Versions Of SQL.
2 Copyright © 2008, Oracle. All rights reserved. Building the Physical Layer of a Repository.
11 Copyright © 2009, Oracle. All rights reserved. Enhancing ETL Performance.
More SQL: Complex Queries, Triggers, Views, and Schema Modification
Product Training Program
Visual Basic 2010 How to Program
Building a User Interface with Forms
Data Virtualization Tutorial: XSLT and Streaming Transformations
SQL MODELER - OPEN There are Three Ways to open the SQL Modeler
Database Applications
Contents Preface I Introduction Lesson Objectives I-2
Relational Database Design
SQL Server Fundamentals for Beginners
Joining Your Data to a Map
Navigating SSMS Primer for Beginners
Presentation transcript:

Oracle Data Integrator Transformations: Adding More Complexity 5 Oracle Data Integrator Transformations: Adding More Complexity 4-1

Multiple Sources You can add more than one source datastore to an interface. These datastores must be linked using joins. Two ways to create joins: References in the models automatically become joins in the diagram. Joins must be manually defined in the diagram for isolated datastores. 4-2

Manually Creating a Join Drag and drop a column from one datastore onto a column in another datastore. A join linking the two datastore appears in the diagram. In the join code box, an expression joining the two columns also appears. Modify the join expression to create the required relation. You can use the expression editor. Check the expression’s syntax if possible. Test the join if possible. 4-3

Setting up a Join Joins can be defined across technologies (here a database table and a flat file) The number of joins per interface is not limited SQL join expression (technology dependant) Validate expression Execution location Expression editor Join type Inner/Outer, Left/Right. Save expression Join order (ISO-92 Syntax) Use ISO-92 syntax Automatically calculate order 4-4

Types of Joins The following type of joins exist: 4-5 Cross Join Cartesian Product. Every combination of any Customer with any Order, without restriction. Inner Join Only records where a customer and an order are linked. Left Outer Join All the customers combined with any linked orders, or blanks if none. Right Outer Join All the orders combined with any linked customer, or blanks if none. Full Outer Join All customers and all orders. 4-5

Options for Filters, Joins and Mappings Active Mapping When unchecked, the filter, join or mapping is disabled for this interface Enable mapping for update and/or insert Allows mappings to only apply to updates or inserts. By default, both insert and update are enabled Choose the update key by selecting the Key checkbox Change the execution location of the filter, join or mapping. 4-6

Setting Options for Filters, Joins and Mappings Activate/Deactivate For mappings, filters or joins Execution Location For mappings, filters or joins Part of the Update Key For target columns (mappings) Active Mapping When unchecked, the filter, join or mapping is disabled for this interface Enable mapping for update and/or insert Allows mappings to only apply to updates or inserts. By default, both insert and update are enabled Choose the update key by selecting the Key checkbox Change the execution location of the filter, join or mapping. Insert/Update For mappings 4-7

Note – Update Keys for Flow Control To perform Updates or use Flow Control, you must define an update key for the interface 4-8

What is an Update Key? An update key: is a set of columns capable of uniquely identifying one row in the target datastore is used for performing updates and flow control can be: one of the primary/unique keys defined for the datastore defined specially for the interface 4-9

How to Define the Update Key Go to the Diagram tab of the interface Select the Target Datastore. Select the Update Key in the properties panel. To define a new key in the Interface only Choose <Undefined> for the update key. Select one target column to make part of the update key. Check the Key checkbox in the properties panel. Repeat for each column in the update key. To define a new key for the table that could be used in other interfaces Go back in the Model Expand the table Right-click on Constraints and add a new key (more on this in a later chapter) 4-10

How to Change the Execution Location For mappings, filters and joins, you can choose where the operation will take place: source database, staging area or target database (mappings only, and for the mappings, only literals and database functions) Go to the interface’s Diagram tab Select the filter, join or mapping to edit. Select an execution location from the properties panel. Not every execution location is always possible. Must be set to Active first. 4-11

Why Change the Execution Location? You may need to change the execution location if: The technology at the current location does not have the features required Files, JMS, etc do not support transformations A required function is not available The current location is not available for processing The machine can’t handle any more demand ODI does not allow this location It is not possible to execute transformations on the target. 4-12

What is the Flow? Flow – The path taken by data from the sources to the target in an ODI interface. The flow determines where and how data will be extracted, transformed, then integrated into the target. 4-13

What Defines the Flow? Three factors: Where the staging area is located On the target, on a source or on a third server How mappings, filters and joins are set up Execution location: Source, target or staging area Whether transformations are “active” Choice of Knowledge Modules LKM: Loading Knowledge Module IKM: Integration Knowledge Module 4-14

A Data Integration Scenario Filter - ORDERS.STATUS=‘CLOSED’ … Mapping - SALES = SUM(LINES.AMOUNT) + CORRECTION.VALUE. - SALES_REP = ORDERS.SALES_REP_ID … Source Sybase ORDERS LINES Target Oracle SALES CORRECTIONS File Join - ORDERS.ORDER_ID = LINES.ORDER_ID … 4-15

The Basic Process Sequence of operations with or without an integration tool Source: Sybase ORDERS LINES Target: Oracle 5 Transform & Integrate C$_0 1 Extract/Join/Transform SALES I$_SALES 3 Join/Transform CORRECTIONS File C$_1 2 Extract/Transform 4-16

What Is the Staging Area? Staging Area – A separate, dedicated area in an RDBMS where ODI creates its temporary objects and executes some of your transformation rules. By default, ODI sets the staging area on the target data server. 4-17

Case Study: Placing the Staging Area The Staging Area may be located: On the target database (default). On a third RDBMS database or the Sunopsis Memory Engine. On the source database. The Staging Area cannot be placed on non relational systems (Flat files, ESBs, etc.) 4-18

How to change the Staging Area Go to the interface’s Definition tab of your Interface. To choose the Staging Area, check the Staging Area Different From Target option, then select the logical schema that will be used as the Staging Area. To leave the Staging area on the target, uncheck the Staging Area Different From Target option Go to the Flow tab. You can now see the new flow. 4-19

Case #1 in ODI 4-20 Staging Area in the Target Source Sets Staging Area + Target This is how this arrangement looks in ODI. First, you uncheck the Staging Area Different From Target checkbox. Now, on the Flow tab you can see that the SALES target is in a box labelled Target+Staging Area (ORACLE). The two source servers are shown as Source Sets. A source set is a group of joined source datastores located in one server. Here, the Sybase server is a source set, as it contains the joined ORDERS and ORDERS_LINES source datastores. The file datastore is another source set, as it is stored on a different server. 4-20

Case #2 in ODI 4-21 Staging Area is the Sunopsis Memory Engine Target Source Sets Staging Area Target To create this kind of setup in ODI, first set the Staging Area Different From Target checkbox on the Definition tab. Then select a third server. As previously mentioned, we’re using the built-in Sunopsis Memory Engine. On the Flow tab, we now see the three separate phases of the integration. You can see that the join between the two orders tables is performed on the source, Sybase, server. The data from this these tables and the data from the corrections file are then loaded onto the staging area. These source sets, or temporary tables, are shown as the yellow cogs SS_0 and SS_1. The inner join is then performed on this staging area, which is shown as the box labelled Staging Area (SUNOPSIS_MEMORY_ENGINE). Lastly, in the integration phase there is a cross-database copy to the Oracle target. 4-21

Case #3 in ODI 4-22 Staging Area in the Source Target To create this scenario, set the Staging Area Different From Target checkbox, then select the source server from the drop down list. We see that the data from the file source is now being transferred to the Sybase server into the source set SS_0. However, there is no loading phase for the Orders tables, since they are already on the staging area. Hence they are displayed as datastores, rather than temporary tables. Unlike the previous situations, we now see that both the joins take place on the same server. As usual, there is a final integration phase onto the target. Source Sets 4-22