generate Unique sequence numbers for each partition in session with Unconnected Lookup ?




Hi All,

Please help me to resolve the below issue while Applying partitioning concept to my Session.

This is a very simple mapping with Source, Lookup , router, and target.

I need to Lookup on the target and compare with the source data, if any piece of data is new then Insert, and If any thing change in the existed data then Update.

while Inserting the new records to the target table I'm generating sequence numbers with Unconnected lookup, by calling the maximum PK ID from the target table.

The above flow is working fine from last one year.

Now I wish to apply the Partitioning concept to the above floe(session)

At source I used 4 pass through partitions.(For Each partition different filter conditions to pull the data from source)

at Target I used 4 passthrough Partitions.

it is working fine for some data, but for some rows for Insert Operation , it is throwing Unique key errors, because while Inserting the data it is generating the same sequence key twice.


In detail : 1st row is coming from 1st partition and generated the sequence number 1 for that row.

2nd row is coming from 1st partition and generated the sequence number 2 for that row

3rd row is coming from the 2nd partition generated the sequence number 2 again for that row. (it must generate 3 for this row)

the issue is becuase of generating the same sequence numbers twice for different partitions.

Can any one Please help me to resolve this issue.

While Applying partitions how can I generate a Unique Sequence numbers from Unconnected lookup for Each partitioned data.


Regrads,
N Kiran.

Answer Posted / subhrangshu

Hi,
Take one parameter (i.e. $$seq) and assign initial value for the unique key (i.e. 1000). Now, from Source Qualifier take all the ports to one expression transformation. Add two additional ports in the Expression Transformation as below.

v_seq (variable port) = IIF(v_seq>0,v_seq+1,$$seq)
SEQ_NO (output port) = v_seq

In this way, the Sequence transformation can be avoided but we will have the same facility in partition scenario as we are changing the port values only.

Though I believe it will work but please let me know if it is not.

Is This Answer Correct ?    0 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

can u give example for factless fact table

5978


Under which circumstances, informatica server creates reject files?

842


What are the transformations that cannot be placed between the sort origin and the joiner transformation so that we do not lose the input sort order?

992


What is a sorter transformation?

889


What do you understand by term role-playing dimension?

789


What is the function of union transformation?

849


What is joiner transformation in informatica?

846


what are 3 tech challenges/ common issues you face?

2119


What are the challenges you have faced in your Project (DWH- ETL)? Explain with example?

7945


What is domain and gateway node?

937


can anyone explain me about retail domain project in informatica?

7713


What are the types of data warehouses?

1182


What are the components of workflow manager?

810


what are factless facts? And in which scenario will you use such kinds of fact tables.

1532


Explain why we use partitioning the session in informatica?

811