Thursday, September 10, 2015

Difference between joiner and lookup


Joiner Vs Lookup

Joiner is Active  transformation
Lookup is active/passive, after 9.x it become active
In Joiner we cannot do SQL query override
In lookup we can write customize sql query in query override to get data from multiple heterogeneous system.
It supports only equi join that means it supports only equal operator in condition
Lookup supports equi and non-equi join, it supports  <,>,<=,>= ,!= along with = operator in condition
In joiner we cannot configure cache like persistence cache, shared cache, un-cache and dynamic cache
In Lookup we can configure according our requirement
We can perform full outer join, it supports Normal, Master, Detail and Full outer join.
Here we can’t perform full outer join it supports left outer join by default
Joiner T/R used as source
But lookup used as source as well as target
Joiner will return all matching record from multiple match
Lookup will return first value, last value, any value or error value
In joiner master record cached and detail record are not cached
Here only base table (lookup table) cached
If data from two different database need to be joined with outer or inner join then better to use joiner
If table size is not too large and single matching record need to be returned then use a lookup
If you want to join two source qualifier then use joiner.
If you table is getting updated in between session then use lookup using dynamic cache option.



No comments: