The order in which links are used in a datastage transformer
Moderators: chulett, rschirm, roy
-
- Premium Member
- Posts: 141
- Joined: Tue Mar 16, 2004 8:22 am
- Location: HSBC - UK and India
- Contact:
The order in which links are used in a datastage transformer
I think this is probably a basics question for you (so apologies in advance).
Could you confirm the order of processing in a transformer stage.
If I send records into a transformer with two output links, does the first record go down output link 1 and then the first record go down output link 2 (and then the same for all the subsequent records) , or do all the records go down output link 1 and only when that has finished all the records go down output link 2?
The reason I'm asking is because I have a transformer which has one output going to a shared container which will write records to a hash file and a second output which goes to another transformer which expects to be able to find the record in the hash file. Is there a possibility that I could get to the second transformer before the shared container has written the record to the hash file?
Thanks for your help
Could you confirm the order of processing in a transformer stage.
If I send records into a transformer with two output links, does the first record go down output link 1 and then the first record go down output link 2 (and then the same for all the subsequent records) , or do all the records go down output link 1 and only when that has finished all the records go down output link 2?
The reason I'm asking is because I have a transformer which has one output going to a shared container which will write records to a hash file and a second output which goes to another transformer which expects to be able to find the record in the hash file. Is there a possibility that I could get to the second transformer before the shared container has written the record to the hash file?
Thanks for your help
-
- Premium Member
- Posts: 483
- Joined: Thu Jun 12, 2003 4:47 pm
- Location: St. Louis, Missouri USA
-
- Premium Member
- Posts: 141
- Joined: Tue Mar 16, 2004 8:22 am
- Location: HSBC - UK and India
- Contact:
Thanks Tony.
The situation I have is ..
Transformer 1 has two output links
Output link 1 goes to a shared container were the record goes through several transformers before being written to a hash file.
Output link 2 goes to a transformer which looks up the record on the hash file.
When the record gets sent down Output link 1, does the transformer wait until all the processing downstream form Output link 1 has completed before it sends the record to Output link 2? If this is the case then I think I'm ok - otherwise is it possible that the transformer after Output link 2 could be trying to look up on the hash file before the transformer a bit downstream from Output link1 has written the record to the hash file?
The situation I have is ..
Transformer 1 has two output links
Output link 1 goes to a shared container were the record goes through several transformers before being written to a hash file.
Output link 2 goes to a transformer which looks up the record on the hash file.
When the record gets sent down Output link 1, does the transformer wait until all the processing downstream form Output link 1 has completed before it sends the record to Output link 2? If this is the case then I think I'm ok - otherwise is it possible that the transformer after Output link 2 could be trying to look up on the hash file before the transformer a bit downstream from Output link1 has written the record to the hash file?
-
- Premium Member
- Posts: 483
- Joined: Thu Jun 12, 2003 4:47 pm
- Location: St. Louis, Missouri USA
The transformer sends a row down each of the output links in the order that the links appear in the transformer. As far as I know, it sends data down one link, then the next, then the next, etc. Because we can specify the order in which the links are processed, I would assume that it completes sending the data down one link before it sends the data down the next output link.When the record gets sent down Output link 1, does the transformer wait until all the processing downstream form Output link 1 has completed before it sends the record to Output link 2? If this is the case then I think I'm ok - otherwise is it possible that the transformer after Output link 2 could be trying to look up on the hash file before the transformer a bit downstream from Output link1 has written the record to the hash file?
Tony
-
- Participant
- Posts: 197
- Joined: Mon Feb 17, 2003 11:20 pm
- Location: India
If I understood it right in Output Link 2 you are making a lookup to a hash file which is being populated in Output Link 1. Now in this kind of a scenario the transformer that makes a lookup to this hash file will always wait for the hash file to get populated completely before processing the records further.
Regards,
Sumit
Regards,
Sumit
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact: