Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

How does a session work?

Status
Not open for further replies.

138006

IS-IT--Management
Dec 30, 2003
101
IN
Hi,
Can anyone please explain (give references to documents) as to how a session works.

Lets consider a map that selects rows from table T1 in database D1 and inserts rows in table T2 in database D2.The table definitions are stored in the Source and Target definitions. Now all these are stored in the repository.

If I want the same thing in a SQL my SQL will be something like:

Insert into T2 ..... (select ....from T1)

I have to run this in database instances of either D1 or D2 and appropriately append the table name with the dblink name.

How is Informatica running this session then--

1) Whether it creates a SQL similar to this and runs the SQL in any database?

2)Or, it fetches data from Source (D1.T1) and stores it somewhere(in memory it will be very heavy considering I have 10 million rows in the source) , does the transformation and then pushes it in Target(D2.T2).

3)Or it does the entire ETL process for each row sequentially.(Anyway, Informatica performs a row-by-row operation)

Hope it explains my query.
Thanks.
 
The way INFA handles this is a wee bit more complicated.

A session will need about 10k to sustain itself. This is allocated when you start the session. In the session properties you can set the cache sizes of index and data cache (defaults are used)

If you have to much data to handle or just to little available memory the PM server will use part of the servers harddisk to create swapfiles. If this is the case, you can see that specific files are created in the cache folder.
(*.dat and *.idx files) This will slow down performance greatly.

The caches are dynamically located first and then the source qualifier will start loading data to the shared memory buffers(reader thread)

Next step (see log files) is that existing lookups are build up in memory

The transformer thread accepts the output of the reader thread and is responsible for all other objects with exception of the final target.

Finally the writer thread will allocate commit areas to write to the target.

T. Blom
Information analyst
tbl@shimano-eu.com
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top