I received a lot of requests to write about Informatica Architecture in details. In this article I would focus on Integration Service, its components, and various processes that run behind when Informatica Workflow is run. I hope you will enjoy reading this article. Any comments or suggestions you have, feel free to write under comments section.
Informatica PowerCenter Integration Service (infasvcs) acts as a controller for entire workflow execution. Integration Service gets into action whenever a workflow is kicked off (either manually or by schedule). It reads Workflow, Session/Task and Mapping information from Repository Database and performs the execution as per transformations defined.
PowerCenter Integration Service uses three components during execution of a workflow:
Before getting into details of these three components, let’s see how Integration Service is created in Informatica. Integration Service is created in Admin Console during initial setup of Informatica. See interface below that is provided by Admin Console to create an Integration Service. One important thing to observe is, Repository Service details are required to create an Integration Service. Integration Service retrieves metadata information (stored in Repository Database) using Repository Service.
I will talk about Integration Service Process and its interaction with Repository Service in this article.
Integration Service Process
As mentioned earlier, whenever Integration Service receives a request to execute a workflow, it spawns an Integration Service Process. In admin community it is typically called as pmserver process. Please note that Integration Service can start one or multiple Integration Processes to run and monitor Workflows.
Whenever a workflow is scheduled or changed, Workflow Manager interacts with Integration Service Process. This interaction happens over TCP/IP. Integration Service process locks the Workflow and then knocks the Repository Service to get metadata about Workflow. Repository Service intern connects to Repository Database – fetches desired information – and gives it back to Integration Service process.
Once Integration Service process receives metadata information back from Repository Service, it creates connections to Source and Target databases using ODBC or Native drivers. Integration Service process also creates connections to any lookup or stored procedure databases which are used by the Workflow. Once the data loading process is done, Integration Service process releases and closes all open database connections.
Integration Service process is also responsible to start DTM process that will actually execute Workflow Sessions. Integration Service process passes Parameter File and Session information to DTM process, that helps it to retrieve required metadata from the repository. Please refer to article Data Transformation Manager for details on DTM Process.
See the figure below for details of this interaction.
To summarize, Integration Service process is responsible to carry out below tasks:
- Workflow Schedule Management
- Locking Workflow Before Execution
- Reading Parameter File
- Creating Workflow Logs
- Running any Tasks in Workflow (e.g., Email)
- Creating DTM processes to run Workflow Sessions