Friday, January 10, 2014

ODI 12c Mappings Introduction

I had to create a separate blog post for mappings because when I started creating a mapping (previously interface) I came to know how different it is from the previous versions.

Before we go into details of creating a mapping, lets see what all things are different from the previous versions.

I created a completely nonsensical mapping as you will see below, and trust me, for a person who is accustomed to creating interfaces in ODI for the last four years, it was infuriating
(Note: Creating Models is similar to older versions so that topic will not be elaborated)


Mapping Tab:
Observe the tabs of mapping 'TAB1' , Overview, Logical, Physical .
Now what these tabs mean in previous versions,
Overview in 12c == Overview in 11g (except that now you cant specify Execution Schema in this tab)
Logical in 12c == Mapping tab in 11g (more on the mapping tab later)
Physical in 12c == Flow tab in 11g

Components:
This is something new to 12c, sql functions have been included separately in this tab. You have to drag -n-drop or click on the mapping tab in order to use these functions, I will be covering each of them in the next few blogs (Frankly, I've been struggling to know how to use a few of them)
So far, I feel that these components are a good thing, but even people having a good experience in ODI 11g will find it a bit tedious initially. 
ODI Help (Table of contents) is a good place to search and read a brief description of these components

Properties:
This is similar to older version but with addition of some new properties and a change in the layout, take a few minutes to see what is where for the first time and you will be fine next time. And I've already started detesting this word 'Staging Location Hint' (Hint ?? seriously ??), it is the same execution location of previous version.

Mapping Tab Changes:
The biggest change in this area is the absence of a separate Target area, all datastores (source and target) now fall in the same canvas. The plus point of this is now you can have multiple datastores as target. But this feature radically changes the way associations are done. For example, if you want to create a join between two tables, dragging a column of table1 to the column of table2 will not create a join (in ODI11g), instead it will create a flow meaning table1 is source and table2 is target. To create a join you have to use the component named 'Join'. How this is achieved will be covered in the following posts, but for now, just remember that building a mapping in 12c is completely different from 11g and it is better to keep the concepts of ODI 11g aside and learn ODI12c as a new tool.

Live long and prosper !!



Thursday, January 9, 2014

ODI 12c : Models, Projects and Interfaces ... er sorry.. Mappings

Creating Models is similar to the previous version, so I will not show how it is done here, Topology manager has not changed either.

Where it gets interesting is when you create a project.


The 'Interfaces' node has now been replaced with 'Mappings'.
Importing KMs gives a prompt for entering an Unique ID.
I entered 1, and proceeded, looks like it appended 1 to the original ID

Now lets take a dig at interfaces, er sorry, mappings ... 

Oracle Data Integrator 12c : Installation, Configuration and upgrading from ODI11g

God, its amazing how fast technology evolves, just as we were trying to get a hang of ODI 11g,
ODI 12c is here and the 'blogosphere' is busy writing whats new and 'cool' in this iteration.
Refer this link for a glance:
http://www.rittmanmead.com/2013/10/oracle-data-integrator-12c-release-part-1/

I had a shot at it myself and started installing, I'll be putting down my experience of working with this new version.

The Installation :
The installable can be downloaded from Oracle's website.  Within the zip file is an html page which will tell you how to install. DO READ THE INSTRUCTIONS CAREFULLY !!

THIS BABY RUNS ONLY ON JDK 1.7 !!

To get the new studio, you have to install the ENTERPRISE INSTALLATION, standalone installation will not give you the studio of 12c.
Installation is pretty straightforward, this time it doesn't ask you to 'skip master repository connection' of an existing Repository or prompt for an agent name with port (which I think makes sense).
Thankfully there are no surprises at the time of installation.

Configuration:

The window looks like this, cool blue color is 'khool' \m/ (bad joke)


Configuring repositories is similar to 11g except that I got a warning while creating a new master repository.


I wonder what that is, I had given the necessary privileges (session, connect and resource) to the user, googling the error number wasn't fruitful, I guess I will have to dig deeper for that error, but for now it worked seamlessly. Master Repo creation worked without any error. Only one stupid warning which everyone having an engineering degree should be knowing already.


On pressing the connect button, I got this message, maybe because I already had ODI 11g  on my machine.
I said NO and proceeded, NOTE: It does take the existing version's credentials automatically.

Then, this message, I need to learn about Wallet now, I chose not to store passwords in wallet.

After that, everything was just the same as far as configuring ODI users and repositories is concerned.

Can I connect an ODI11g repository to ODI 12c studio directly ??
NO, the error you will be getting is:
oracle.odi.core.config.MasterRepositoryVersionMismatchException: ODI-10179: Client requires a repository with version 05.01.01.16 but the repository version found is 04.03.04.02.

Fortunately there is an upgrade assistant for this one as well, I did not run that (had to keep older version functional) but found a link showing how it is done

http://docs.oracle.com/middleware/1212/odi/ODIUG/tasklist.htm

Some of them have already done it. Pretty straight forward.

http://dwteam.in/upgrading-odi-11-1-1-7-repository-to-12c/

NOTE : DO TAKE A BACKUP OF YOUR DATABASE SCHEMA BEFORE TRYING IT

Next topic will be covering creating basic interfaces. Will see if its a revolution or evolution ...

Cheers !!