Archive for the ‘Fusion Middleware’ Category

Oracle Data Integrator – Demo Webcast Archives

Thursday, August 20th, 2009

I was about to send the link below to a different customer for the third time in two days.  Then a thought went through my head – perhaps I should create a quick post on DavidHecksel.com to share with everyone ( as I feel the ratio of valuable content provided divided by awareness of said content is much ( much ) too high ).

Whether you use Oracle Data Integrator regularly, are evaluating usage, or just interested in learning more about it, the archives of the twice monthly webcasts on ODI are an invaluable source of information.

Oracle Data Integrator Demo Webcast Archive

Oracle Data Integrator 10.1.3.4.6 now available

Tuesday, November 4th, 2008

The Oracle Data Integrator 10.1.3.4.6 cumulative patch is now available.  If you are using or plan to use ODIInvokeWebService as part of your data integration / governance plans, I recommend applying the cumulative patch.

The patch can be obtained from Metalink ( http://metalink.oracle.com ) . 

The patch number is 7485029.   The ODIInvokeWebService fix ( bug number 7238234 - ODIINVOKEWEBSERVICE IS UNABLE TO PROCESS LISTS AS WS ARGUMENTS ) is within the 10.1.3.4.6 patch.

Have you got your application / solution to connect to ODI by WebService?  Have you integrated from ODI to another application by WebService?  Which Application / Solution?  Post your answer as a comment, I would be interested in knowing the user experience of inbound/outbound applications that ODI has been used successfully when integrating by WebServices.

If using ODI and WebServices, I highly recommend being on at least patch level 10.1.3.4.4, and going to 10.1.3.4.6 shortly.  I am upgrading my Oracle Data Integrator environments to 10.1.3.4.6 today.

Oracle Service Bus 10gR3 is Production

Thursday, October 30th, 2008

Oracle Service Bus 10gR3 has gone Gold – Golden Master production.  You can download the product on Oracle Technology Network.  Below is a snippet of the announcement from Deb Ayers, the OSB product manager.

Download and enjoy! 

“Oracle Service Bus 10gR3 is now available on OTN for download: http://www.oracle.com/technology/software/products/osb/index.html
The official GA is scheduled for November as part of the monthly eDelivery media pack.”

Important note: If you want to use the OSB Samples, please select Custom Install (vs. Typical) and select the check box OSB Samples.

Join the mix ! The Oracle mix.

Thursday, July 24th, 2008

A new technical community site is picking up activity / interest prior to Oracle OpenWorld 2008.

Oracle Mix – http://mix.oracle.com

Collaborate and contribute with thousands of your peers on topics ranging from Database, to Fusion Middleware, Application Integration Architecture, Siebel, Hyperion, …

This year, I’m presenting on advanced SOA usecases for Data Integration at Oracle OpenWorld 2008 ( September 21 – 25 ).

Join the mix – become a member at http://mix.oracle.com .  I found it interesting that “ThoughtWorks” ( Martin Fowlers company ) is collaborating with the Oracle Mix community collaboration site. 

My Profile on Oracle Mix – http://mix.oracle.com/user_profiles/31203-david-hecksel

Oracle Data Integrator – Oracle 11g Certified as ODI Repository

Tuesday, June 3rd, 2008

I have seen the following question asked multiple times lately, so I thought it was time for a post here. 

Question:

 ”Is Oracle 11g is certified as a ODI repository database?”.

Answer: 

Yes, Oracle Database 11g is certified as an Oracle Data Integrator Repository for Oracle Data Integrator 10.1.3.3 and higher.

 

Oracle Data Integrator Agent – What you need to know

Monday, May 26th, 2008

Having recently helped a team fix an Oracle Data Integrator (ODI) Agent installation problem, and from the number of questions I see related to the ODI Agent, I thought a post that put most of the information related to the ODI Agent in a single place would be a valuable and productive topic to cover.

What is an ODI Agent, and why do you need one?

  • One question to ask yourself is “Do I need one?”.  The answer is “not necessarily”.  If you are doing development on your own, you can run Local (No Agent) versus installing an Agent.  In this case, the Oracle Data Integrator GUI is acting as the Agent.  When first using the product, this choice is fine.  However, when you start working with others on a project (and quite probably have to setup an Oracle Data Integrator shared team environment “in a hurry”), having knowledge about the Agent, and how to install and configure it will pay dividends.  And when going into Test or Production, you will need one.  The goal of this article is to help you understand the installation and configuration of the Agent so that you can avoid having the Agent become an obstacle to productivity and success for your development, test, and deployment teams.
  • So – What is an ODI Agent?  The Agent, which runs in a separate lightweight Java Virtual Machine (JVM), is the ODI component that orchestrates your ODI processes.  Agents come in two flavors – Listener Agent, and Scheduler Agent.  For the purpose of this article, we will be discussing Listener Agent unless otherwise noted.  In addition to orchestrating processes, the Agent has the following additional responsibilities:
    • Takes the information stored in Knowledge Modules and generates the appropriate SQL for the technology that will Extract, Load, or Transform data
    • Connection Management with Sources and Targets
    • Transmission of the generated code for Execution on the Source or Target
    • Receive the response
    • Populate the Repository with return code and processing statistics, updating the logs (note:  these logs are in the Database, not Log4J logs) which can be viewed by the Operator module

How do I install an Agent?

The default Agent port is 20910.  Make sure that port (or the non default port you choose) is not in use before getting started (you can do this by running “netstat -a” from a command line interface).

How do I run (start) an Agent?

Run agent.bat (or agent.sh) from a command line interface.  Parameters are:

  • -port=<port>                 The default port is 20910
  • -help                               Prints help for the command
  • -name=<agentname>    You may wish to encode your lifecycle development phase and project name in the Agent name ( -name=DevelopmentMasterCustomerData )
  •  -v=                                Tracing output – specify a number from 1 to 5.  You may wish to redirect output to a file ( agent.bat “-v=5″ > trace.txt ).  Number 4 will trace the SQL queries executed

How do I stop an Agent?

Run agentstop.bat or agentstop.sh.  If no port is specified, the default port (20910) is assumed. 

Example:  agentstop.bat “-PORT=20200″ on Windows.

When using the Windows operating system, how do I start an Agent as a Service?

When the Agent platform is Windows, it can be useful to automatically launch the Oracle Data Integrator Agent when rebooting Windows.  To do that, you need to:

  1. Edit the /bin/odiparams.bat file.   When the Agent is launched as a Windows Service, the service uses the agent startup parameters specified in odiparams.bat.  To avoid complexity, you should setup/define your Master and Work Repository before modifying Windows to run the Agent as a Windows Service.  In particular, eyeball the section of the file “Repository Connection Information” to make sure the information is correct.
  2. From a Command Prompt, go to the /bin sub-directory of the Oracle Data Integration installation folder 
  3. Run agentservice.bat with the appropriate parameters to install the service
  4. Once the service is installed, you must go to Windows Service Manager to start / autostart the Service ( you can run this directly by typing services.msc in a command prompt or Run command )

Parameters for AgentService.bat are:

agentservice.bat -i|-r -a|-s [<agent_name> [<agent_port>

[<wrapper_configuration_file>]]]

You must specify two parameters:  -i or -r, and -a or -s.  The others are optional.

 
 
 

 

 

  • -i installs the service, -r uninstalls the service
  • -a installs the listener agent (uses the snpsagent.conf parameter file)
  • -s installs the scheduler agent (uses the snpsagentscheduler.conf parameter file)
  • agent_name is the agent name previously defined in Topology Manager (required if specifying -s above)
  • agent_port is the listening port for the agent
  • wrapper_configuration_file – outside the scope of this article

How many Agents do I need, and where do I install them?

  • This answer is dependent on your understanding of Work Repositories.  While the subject of Repositories is itself a separate article ( I hope to be publishing a comprehensive “Best Practices” article on ODI Topology Manager in the September issue of Select Journal ( published/sponsored by IOUG ) as part of their TIPS and Best Practices collection ), the recommendation is to have a Work Repository for each development lifecyle environment you have ( for example: Development, Test, QA, Pre-Production, Production ).  The recommendation is to have one Agent for each Work Repository you have.  In that example, you would have five Agents (and five Work Repositories that “talk to” a single Master Repository), one for each lifecycle environment.  In summary, you have a Physical Agent for each development lifecycle environment, and for each Physical Agent, create a corresponding Logical Agent (make it obvious by incorporating the lifecycle process name in the Agent name ( for example, ProductionCustomerMasterDataAgent )
  • The criteria used to decide on which servers (where) the ODI Agents should be installed, depend on the technical architecture, the precise requirements for Data Integration processes, and the environments used for the lifecycle development of your project.A general rule of thumb is to install ODI Agents on or close to the servers hosting your Target data servers.  Reliable connectivity and low network latency from Agent to Target data servers are factors to consider.  You do not want your ODI Agent installed in San Francisco when all of your frequently accessed Target data servers are in your New York Data Center.  The speed of light is fast, but not that fast.     
  • The number of Agents is also influenced by whether you plan to do Load Balancing for Agents.  That topic is outside the scope of this article, but when adding Load Balancing for Agents, there will be additional agents ( additional for each lifecycle environment where load testing will be validated for your project).   
  • When first starting to work in a project team development environment, have the developers use a single shared Agent installed on a commonly accessible server rather than each developer using an Agent that they have on their own laptop/workstation.  This will resolve countless “well, it works when I run it on my machine” situations from arising. 

I hope this information makes you more productive when working with Oracle Data Integrator Agents.  Now you know what you need to know, and where to find it!