Sunday, 5 August 2012

DTM-Data Transformation Manager Process

While running a Workflow,the PowerCenter Server uses the Load Manager process and the Data Transformation Manager Process (DTM) to run the workflow and carry out workflow tasks.When the PowerCenter Server runs a workflow, the Load Manager performs the following tasks:  
  • Locks the workflow and reads workflow properties. 
  • Reads the parameter file and expands workflow variables. 
  • Creates the workflow log file. 
  • Runs workflow tasks. 
  • Distributes sessions to worker servers. 
  • Starts the DTM to run sessions. 
  • Runs sessions from master servers. 
  • Sends post-session email if the DTM terminates abnormally. 

After the load manager performs validations for the session, it creates the DTM process. The DTM process is the second process associated with the session run. The primary purpose of the DTM process is to create and manage threads that carry out the session tasks.When you run a session, the DTM process reads source data and passes it to the transformations for processing.When the PowerCenter Server runs a session, the DTM performs the following tasks: 
  • Fetches session and mapping metadata from the repository. 
  • Creates and expands session variables. 
  • Creates the session log file. 
  • Validates session code pages if data code page validation is enabled. Checks query conversions if data code page validation is disabled. 
  • Verifies connection object permissions. 
  • Runs pre-session shell commands. 
  • Runs pre-session stored procedures and SQL. 
  • Creates and runs mapping, reader, writer, and transformation threads to extract,transform, and load data. 
  • Runs post-session stored procedures and SQL. 
  • Runs post-session shell commands. 
  • Sends post-session email.
The DTM allocates process memory for the session and divide it into buffers. This is also known as buffer memory. It creates the main thread, which is called the master thread. The master thread creates and manages all other threads.If we partition a session, the DTM creates a set of threads for each partition to allow concurrent processing.. When Informatica server writes messages to the session log it includes thread type and thread ID. Following are the types of threads that DTM creates:
Master Thread :Main thread of the DTM process. Creates and manages all other threads.
Mapping Thread : One Thread to Each Session. Fetches Session and Mapping Information.
Pre and Post Session Thread :One Thread each to Perform Pre and Post Session Operations.
Reader Thread:One Thread for Each Partition for Each Source Pipeline.
Writer Thread :One Thread for Each Partition if target exist in the source pipeline write to the target.
Transformation Thread :One or More Transformation Thread For Each Partition.

DTM Buffer Memory
The DTM allocates buffer memory to the session based on the DTM Buffer Size setting in the session properties. By default, the Integration Service determines the DTM buffer size at run time. The Workflow Manager allocates a minimum of 12 MB for DTM buffer memory.You can specify auto or a numeric value. If you enter 2000, the Integration Service interprets the number as 2000 bytes. Append KB, MB, or GB to the value to specify other units. For example, you can specify 512MB.
Increase the DTM buffer size in the following circumstances:
  • A session contains large amounts of character data and you configure it to run in unicode mode. Increase the DTM buffer size to 24MB.
  • A session contains n partitions. Increase the DTM buffer size to at least n times the value for the session with one partition.

1 comment:

Related Posts Plugin for WordPress, Blogger...

ShareThis