top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

Informatica - Using single target multiple times in single mapping

0 votes
1,340 views

Can you use a target table in multiple areas of a single mapping.

I have routers around the table, where I know some rows are ready, and currently they are all going to a final Union transformation.

I am wondering if it is possible to direct these from the router, directly into the multiple instance of a single target table.

If so, how does Informatica do the inserts?

Will it each time queue the outputs into the same target, or try and insert them concurrently when and as it stumbles upon them?

posted Jul 23, 2014 by Amit Sharma

Share this question
Facebook Share Button Twitter Share Button LinkedIn Share Button

1 Answer

0 votes

Yes of course. We use multiple target instances (of same target) all the time. Informatica processes one row at a time, unless you have configured partitioning on the session. So, only one record gets inserted at a time.

Even if your router produces rows in multiple output groups, for a single input row (happens when the group conditions are overlapping or not mutually exclusive), then also, informatica will process the output groups sequentially. This is because, for un-partitioned sessions only one writer thread writes to all target instances. So all rows are processed sequentially by that writer thread.

answer Jul 24, 2014 by Shweta Singh
Similar Questions
0 votes

I know this may seem like a basic task, but I cannot find any documentation regarding this.

I have an output port after a set of transformations (Filter/Joins/Aggregates/Joins/Filters) and would like to use an output port twice going into 2 separate transformations.

Is this possible from all transformations?

Anything I need to watch out for?

Thanks

0 votes

I have some files that I would like to consolidate into a single database table. The files have similar but different formats. The files look something like this:

FileOne:
•ColA : string
•ColB : string
•ColC : string

FileTwo:
•ColAA : string
•ColBB : string
•ColCC : string

FileThree:
•Col01 : string
•Col02 : string
•Col03 : string

The destination table looks like this:

TableDestination:
•ColFirst : string
•ColSecond : string
•ColThird : string

I want to develop a mapping that ETLs these three files into this one database, but because the column names are different, it looks like I'll have to develop three different mappings, or three different sources, or three different somethings. The problem is that my example is contrived: I actually have many different files that all have different formats and column names, but the data is all very similar.

I would like to develop a single mapping or workflow that can handle all of this by only adding a table that holds the column mappings. Such a table would look like this based on the sample files and sample table above:

TableMappings:
enter image description here

In this way, to edit a column mapping I only have to make an edit this this TableMappings table. I wouldn't have to make any changes at all to the mapping or workflow. Nor would I have to redeploy an application.

What would a mapping or workflow look like that could take advantage of something like this? I assume there'd be a flat file source that takes files from a folder. There would be something in the middle that uses this TableMappings table to map column names. Finally there would be a relational data object that represents my destination database table "TableDestination". I don't know how to put this together though.

+1 vote

I have two sources (source A and Source B), source B is an another one target table in my db. both are in diff user id . Now i have to transfer some data,s from these two sources to target table. Can i transfer data without using the joiner transfermation? how to do ?

+1 vote

I have a source with multiple columns -
minA, maxA, minB, maxB, minC, maxC, minD, maxD

and I have 2 columns in target min values, max values. How can i put the min values of elements in min values of target and same with max?

...