How do we eliminate duplicate records in a flat file without using Sorter and Aggregator?
Answers were Sorted based on User's Feedback
Answer / kiran
We can use dynamic cache in lookup to eliminate duplicates.
Is This Answer Correct ? | 11 Yes | 0 No |
Answer / joe
Option 1: using Unix for flat files
Option2: Using Checksum function in the expression to
generate a unique hexadecimal code for each record.
and comparing the same with the next record.
Is This Answer Correct ? | 5 Yes | 2 No |
Answer / ankur saini
sol--seq gen---rank ---filter
add a sequence generator ...
ex input is
1 a
1 b
2 a
2 b
after seq generator
1 a 1
1 b 2
2 a 3
2 b 4
then ranl it group by all file ports rank on the seq gen key
input seq rank
1 a 1 1
1 b 2 2
2 a 3 1
2 b 4 2
add filter on rank=1
enjoy!!!!!
Is This Answer Correct ? | 2 Yes | 0 No |
Answer / harish konda
Give the SQL query to sort the data in source in source
qualifier t/f.
And then connect to exp t/f and add one more port (say flag)
to generete numbers like, when prev row and current row
values are same, then increment number, or else give 1.
And next connect to Filter t/f and give the condition in
filter as flag=1.
Then rout the data to target.
Is This Answer Correct ? | 2 Yes | 1 No |
Answer / isha
Select all source rows.
The Dynamic Lookup transformation builds the caches from the target table.
When the lookup evaluates a row from the source that does not exist in the lookup cache, it inserts the row into the cache and assigns the NewLookupRow output port the value of 1. When the lookup evaluates a row from the source that exists in the lookup cache, it does not insert the row into cache and assigns the NewLookupRow output port the value of 0.
The filter in this mapping checks if the row is a duplicate or not by evaluating the NewLookupRow output port from the Lookup. If the value of the port is 0, the row is filtered out, as it is a duplicate row. If the value of the port is not equal to 0, then the row is passed out to the target table.
Is This Answer Correct ? | 1 Yes | 0 No |
Answer / priyank
There are several ways of achieving this. We can do it
through expression transformation and other is look up on
the target.
Expression transformation:
Create ports,
Var_PREV_KEY=Key
Var_CURR_KEY=Var_PREV_KEY
Var_CHK_DUPLICATE --> IIF(Var_CURR_KEY=Key,'DUP','NODUP')
OUT_DUPLICATE --> Var_CHK_DUPLICATE
Note: I have taken a scenario where the target table
contains only 1 Key. In case of multiple keys, will have to
create a few more Variable ports for both CURR and PREV and
in the Var_CHK_DUPLICATE port, we need to add those checks
with an 'AND' operator.E.g. For 2 keys,
Var_PREV_KEY1=Key1
Var_CURR_KEY1=Var_PREV_KEY1
Var_PREV_KEY2=Key2
Var_CURR_KEY2=Var_PREV_KEY2
Var_CHK_DUPLICATE --> IIF(Var_CURR_KEY1=Key1 AND
Var_CURR_KEY2=Key2,'DUP','NODUP')
OUT_DUPLICATE --> Var_CHK_DUPLICATE
If the Informatica version is Unix installation, then in
the pre session command you can give an unix command to
remove the duplicates from the file like
sort <file_name> | uniq > <file_name>.new
Hope it helps.
Is This Answer Correct ? | 4 Yes | 12 No |
What are the tasks that source qualifier perform?
explain the scenario for bulk loading and the normal loading option in Informatica Work flow manager ???
Plz can anybody send Informatica and Cognos FAQ Plz To thid ID ppradeep_dwh@yahoo.co.in
Useful UNIX commands regular/frequently used
How do you change a non-reusable transformation to reusable transformation?
what is worklet and what use of worklet and in which situation we can use it?
i have two tables,table 1 having 2 columns and 3 rows,table2 having 3 columns and 2 rows.what is the output if i do left outerjoin,full outer join,right outer join?
how the server recognises , if the session fails after loading the 100 records in to the target
What are the technical challenges faced in Informatica production support member? Give any one example and how to solve it?
My source data like... Empid Name 10 chandra 10 sekhar I am expecting result is Empid Ename 10 Chandrasekhar How can we solve this prob?
What is the commit type if you have a transaction control transformation in the mapping?
what is INFORMATICA TESTING process