reference link from a shared container

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
sumitgulati
Participant
Posts: 197
Joined: Mon Feb 17, 2003 11:20 pm
Location: India

reference link from a shared container

Post by sumitgulati »

Hi,

I have a shared container say 'X' which I am using in my server job. In the server job I am passing few columns to the shared container 'X' and the remaining columns to a transformer 'T'. I want the output from container 'X' and transformer 'T' to be joined using another transformer say 'T1' and then put them into a table.
I am not able to acheive this because neither from transformer 'T' nor from the container 'X' I can draw a reference link to transformer 'T1'.

One way to solve this is to put the output from 'X' into a hash file and then draw a reference link from this hash file to 'T1'. I want to avoid using hash file or any sequential file or a table. Is there any way I can do it.

Thanks in advance

Regards,
Sumit
vmcburney
Participant
Posts: 3593
Joined: Thu Jan 23, 2003 5:25 pm
Location: Australia, Melbourne
Contact:

Post by vmcburney »

Lookup data needs to be stored in a table that supports a key lookup, which is why they tend to be hash files or database tables. In order for your shared container rows to be available as a lookup you need to put them into a hash file or database table.

It will be faster if you can avoid having to split and rejoin your data by either sending all your fields through the container or moving the container logic into the job.
sumitgulati
Participant
Posts: 197
Joined: Mon Feb 17, 2003 11:20 pm
Location: India

Post by sumitgulati »

Hi Vincent,

The shared container is being used in colse to 50 different server Jobs having diffirent number and type of columns. Because of this its not possible to pass all the columns through the container.
Is there any way in which I can pass all the columns through the container. That would definitely give better performance as the rejoining will be avoided.

Regards,
Sumit
vmcburney
Participant
Posts: 3593
Joined: Thu Jan 23, 2003 5:25 pm
Location: Australia, Melbourne
Contact:

Post by vmcburney »

It's tricky. One option is to take the transform logic out of the shared container and put it into one or more routines. Then your fifty or so jobs all call these routines within a transformer to do the same transformation your shared container would have done. It really depends on what your container is trying to do! It looks like it is creating more work for you as you have to go through the effort of splitting and merging fields.

The other option is a bit messy, it involves packing your extra columns into a single delimited text field, passing it to the shared container as a single long text field, then uppacking it again when it arrives back in the job.

I think the hash file lookup or the shared routines are better options.
sumitgulati
Participant
Posts: 197
Joined: Mon Feb 17, 2003 11:20 pm
Location: India

Post by sumitgulati »

Thanks Vincent,

I will try to work on the options you gave.

Regards,
Sumit
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

sumitgulati wrote:Hi Vincent,

The shared container is being used in colse to 50 different server Jobs having diffirent number and type of columns. Because of this its not possible to pass all the columns through the container.
Is there any way in which I can pass all the columns through the container. That would definitely give better performance as the rejoining will be avoided.

Regards,
Sumit
Presumably the number of other columns varies, too.
One possibility would be to pass ONE extra column through the container, containing a delimited string of all the other columns, then to decompose this again in T1.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Post Reply