Physical Architecture Introduction to the Oracle Data Integrator Topology

Setting-up the Topology 4-3 Agent Lifecycle The lifecycle of an agent is as follows: 1. When the agent starts it connects to the master repository. 2. Through the master repository it connects to any work repository attached to the Master repository and performs the following tasks at startup: ■ Clean stale sessions in each work repository. These are the sessions left incorrectly in a running state after an agent or repository crash. ■ Retrieve its list of scheduled scenarios in each work repository, and compute its schedule. 3. The agent starts listening on its port. ■ When an execution request arrives on the agent, the agent acknowledges this request and starts the session. ■ The agent launches the sessions start according to the schedule. ■ The agent is also able to process other administrative requests in order to update its schedule, stop a session, respond to a ping or clean stale sessions. The standalone agent can also process a stop signal to terminate its lifecycle. Refer to Chapter 20, Running Integration Processes for more information about a session lifecycle. Agent Features Agents are not data transformation servers. They do not perform any data transformation, but instead only orchestrate integration processes. They delegate data transformation to database servers, operating systems or scripting engines. Agents are multi-threaded lightweight components. An agent can run multiple sessions in parallel. When declaring a physical agent, it is recommended that you adjust the maximum number of concurrent sessions it is allowed to execute simultaneously from a work repository. When this maximum number is reached, any new incoming session will be queued by the agent and executed later when other sessions have terminated. If you plan to run multiple parallel sessions, you can consider load balancing executions as described in Section 4.3.3, Load Balancing Agents . Standalone and Java EE Agents The Oracle Data Integrator agents exists in two flavors: standalone agent and Java EE agent. A standalone agent runs in a separate Java Virtual Machine JVM process. It connects to the work repository and to the source and target data servers via JDBC. Standalone agents can be installed on any server with a Java Machine installed. This type of agent is more appropriate when you need to use a resource that is local to one of your data servers for example, the file system or a loader utility installed with the database instance, and you do not want to install a Java EE application server on this machine. A Java EE agent is deployed as a web application in a Java EE application server for example Oracle WebLogic Server. The Java EE agent can benefit from all the features of the application server for example, JDBC data sources or clustering for Oracle WebLogic Server. This type of agent is more appropriate when there is a need for centralizing the deployment and management of all applications in an enterprise application server, or when you have requirements for high availability. 4-4 Oracle Fusion Middleware Developers Guide for Oracle Data Integrator It is possible to mix in a single environment standalone and Java EE agents in a distributed environment. Physical and Logical Agents A physical agent corresponds to a single standalone agent or a Java EE agent. A physical agent should have a unique name in the Topology. Similarly to schemas, physical agents having an identical role in different environments can be grouped under the same logical agent. A logical agent is related to physical agents through contexts. When starting an execution, you indicate the logical agent and the context. Oracle Data Integrator will translate this information into a single physical agent that will receive the execution request. Agent URL An agent runs on a host and a port and is identified on this port by an application name. The agent URL also indicates the protocol to use for the agent connection. Possible values for the protocol are http or https. These four components make the agent URL. The agent is reached via this URL. For example: ■ A standalone agent started on port 8080 on the odi_production machine will be reachable at the following URL: http:odi_production:8080oraclediagent. ■ A Java EE agent started as an application called oracledi on port 8000 in a WLS server deployed on the odi_wls host will be reachable at the following URL: http:odi_wls:8000oracledi.

4.1.5 Languages

Languages defines the languages and language elements available when editing expressions at design-time. Languages provided by default in Oracle Data Integrator do not require any user change.

4.1.6 Repositories

The topology contains information about the Oracle Data Integrator repositories. Repository definition, configuration and installation is covered in the Installation and Upgrade Guide for Oracle Data Integrator.

4.2 Setting Up the Topology

The following steps are a guideline to create the topology. You can always modify the topology after an initial setting: 1. Create the contexts corresponding to your different environments. 2. Create the data servers corresponding to the servers used by Oracle Data Integrator. Note: The application name for a standalone agent is always oraclediagent and cannot be changed.