Skip to main content
Announcements
SYSTEM MAINTENANCE: Thurs., Sept. 19, 1 AM ET, Platform will be unavailable for approx. 60 minutes.
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

tmap reload at each row

Hi,

 

I was checking reload at each row logic for tmap in Talend document here

 

https://help.talend.com/reader/iUlm0MDXr5kWsTan1oPozg/C9gANC9ZnbIrGSvLsc~qbA

 

Reload at each row means all lookup's data will loaded every time for every incoming input record.

 

First point says : The lookup data flow is constantly updated and you want to load the newest lookup data for each record of main flow in order to get the new data after the join execution. Makes Sense..Cleared

 

Second point says :You have less rows in your main flow and have a large data set that comes from a database table in the lookup flow. It might cause an OutOfMemory exception if you use the Load once option. In this situation, the Reload at each row option will be considered.

 

If I load all lookup's data at once, it could show OutOfMemory exception. but why its saying that " the Reload at each row option will be considered." WHY ? Because in reload at each row does the same thing. Will load all lookup's data in memory. Then why its recommended for large lookup except from the first point  ?

 

Please share ..!

Thanks

Labels (2)
1 Reply
Aukema
Creator
Creator

When enabling the "Reload at each row" option, a new option gets available in the input row. you can now add an expression  (Expr.) and attach a "globalMap Key".

 

You now link the from (for example) the main input to the newly created expression and give it a proper name (globalMap Key).  

 

This globalMap Key can now be used in your input, for example to select only 1 record from the "big" table

Select Field1, Field2  From table where key = "+globalMap.get(myKey1)+"

 

See attached screenshow

 

 


Capture.PNG