Join the mix ! The Oracle mix.

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

Pickens Plan

July 10th, 2008

I do not normally comment or blog on national or social issues, but the person who has been accurately predicting oil prices ( “80 before I’m 80″ is a famous quote he made on CNBC in November 2007 ) displayed a sense of leadership recently that struck a chord with me.

$1 billion a day plus of lost national wealth ( a run rate of $700 billion a year recently ), General Motors at less than $10 a share ( having not much more net worth than what GE recently paid to acquire ”The Weather Channel” ), Ford at less than $5/share, and Ethanol (from Corn) - they don’t have an emoticon to capture my thoughts on the negative energy efficiency of that program ( it uses more energy to produce than it provides - did you know they use Natural Gas to produce it?  Oil to move it from one location to another?  ).

I’m not saying I agree with everything that his plan advocates.  I do not have any financial interest in any of his companies.  I do admire his leadership and intelligence.

If interested in reading about his plan:

 

SNAGIT - Worth your while in productivity

June 22nd, 2008

I used to use the SNAGIT software tool periodically the past 3 - 5 years when doing software development and needing to leverage an existing image on the web.  When I was doing web work, I tended to do a cut/paste and then manipulate and work within the Macromedia Fireworks.

Now that I am doing a mix of software development, web development, and presentation creation, I find myself using SNAGIT more and more for productivity.  It’s ability to “understand” application destination sources and targets ( like Internet Explorer, MS Outlook, Word, Powerpoint, … ), I find it taking 10% of the time it used too when I want to “mashup” and/or manipulate content ( a portion of a powerpoint slide, an image, … combining pieces into a new content item ).  I believe this is the first blog entry I’v done on a product since starting to Blog in 2004, but SNAGIT saved me so much time today ( and made the results better )

How many times do “less time” and “better quality” come together?  With SNAGIT, it does.  If you have not tried an image / content capture utility, I recommend giving SNAGIT at try.  I believe I bought mine at $39.95, I see it is $49.95 presently.  Perhaps I got it on special?  Either way, the productivity to me just today makes makes it worth that much to me when I was writing some new Business Processes using BPEL Process Manager, and then documenting ( in Word and Powerpoint ) what they  does.  I now find myself using it at least weekly, usually several times a week.

I recommend the investment.  You can check SNAGIT out here.  It’s available as a free 30 day trial download.  The usability on it has increased so much through these “source” / “target” application adapter like architecture, that I bought it earlier this year, and have been more productive since.

FWIW - your mileage may vary - but this one is one of those tools that ( to me ) falls in the “jewel” category.

 

Oracle Data Integrator - Oracle 11g Certified as ODI Repository

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

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!

   

Best Oracle Data Integrator Links

May 24th, 2008

Here is a set of my “Go To” External Links for Oracle Data Integrator (ODI):

 

I will make period updates to this Link collection.  Hopefully something in the above will make you more productive and successful with Oracle Data Integrator.