Informatica Session Design is a very important component of Informatica Powercenter code. The Informatica workflow can perform well with an effective mapping design combined with a good session design. Informatica PowerCenter session has a collection of properties connected to code execution, DTM, buffer caches, transformation caches, Error configuration and metadata information.
What is Default Session Configuration?
- Power Center will have a default session configuration and workflow manager applies this default configuration to a new session task.
- These properties can be changed at session level and the scope of the changes will remain to a particular task.
- If the Default Session Configuration is changed, the changes will be applied to all the sessions those are using that default session configuration.
Can there be more than one Session Configuration(s)?
Yes. You can create two session configuration and chose the appropriate configuration for your session.
How to create a new Session Configuration or edit an existing Configuration?
It will be well explained in the below snapshots. Quick verbose to create a new session configuration in steps is below
- Open Workflow Manager -> open a folder -> Go to Tasks -> Select Session Configuration.
- Click on “New” to create a new session configuration
- Enter a name for the session configuration.
- Set the properties and save.
Let’s talk about the session configuration now. Each Informatica folder has a default session configuration object that has the below primary settings – Advanced, Log options, Error handling, Partitioning options, and Session on grid.
Some important properties that you need to know in session configuration –
|Advanced||Cache Lookup() Function||You can always configure to cache lookups and uncheck to those particular sessions those has lookup transformations do not required to be cached|
|Default Buffer Block Size||Auto is always a safe option that will enable Integration service to stretch as required at the runtime|
|Pre-build Lookup Cache||If your lookup table is static in nature and you are willing to cache the lookup, you can always configure to pre build lookup cache so Informatica will not wait for the first row to appear before lookup transformation but will build the cache as soon as the session triggers and DTM is allocated|
|Additional Concurrent Pipelines for Lookup Cache Creation||You can specify the the number of concurrent channels required to build the lookup cache as explained in earlier property|
|Log Options||Save Session Log By||Do you want timestamp to be appended to session log file name?|
|Save Session Log for These Runs||How many historical session log files do you want to maintain at a given time? Zero saves the current log file only|
|Writer Commit Statistics Log Frequency||What is the need of writing commit statistics to session log file? If your session load is stuck with some external code blocks, it will be easy for a support person to look into these timely statistics and understand the problem. You will surely want to apply this configuration to the complete folder so default config is the best place to put your directve|
|Writer Commit Statistics Log Interval|
|Error Handling||Stop On Errors||If you have predefined permissible errors in your system, you can always increase this value to a higher value to allow your session run even after a non fatal error occurs. For example you know that there is a functional format deviation for one employee middle name, you can configure this value to 1 so the session do not fail on occurence of the error|
|Override Tracing||Imagine you set a tracing level of verbose data at transformation level while debugging the code, that will create a enormously huge file every time the session runs? Of course no – you are safe guarded with the default session config by setting the required tracing level for the project and this value will overwrite the mapping level setting|
|On Stored Procedure Error||If you are using a stored procedure or SQL Statements to truncate the table or recreate the indexes, or executing a command to create list of source files to feed source transformation, you will always want to set this value here so the property can be scaled to all the sessions in a particular folder.|
|On Pre-Session Command Task Error|
|On Pre-Post SQL Error|
|Other Error Logging properties||There are many other properties those direct Informatica to log error information in DB / flatfile. You can refer Error logging techniques for more information on this|
|Partitions||Dynamic Partitioning||This is an interesting configuration object. The number of partitions can now be controlled by a session parameter. The number of partitions can be chosed based on number of nodes on grid, number of source partitions or number of CPUs. Is not it exciting?|
|Number of Partitions||Number of partions are either determined based on the above configuration or read from the session parameter value.|