Identifying Basic transformer stage

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
zulfi123786
Premium Member
Premium Member
Posts: 730
Joined: Tue Nov 04, 2008 10:14 am
Location: Bangalore

Identifying Basic transformer stage

Post by zulfi123786 »

Having worked for 9 years on DataStage, I was baffled when I wasn't able to say by opening the transformer stage of a job whether it was Basic Transformer or parallel Transformer .

Can it be found any where in the stage ? Both say Transformer Stage and I am currently opening Stage variable properties wherein Parallel one has more options than Basic one. I am sure I can do it in a more meaningful way.

Thanks
- Zulfi
qt_ky
Premium Member
Premium Member
Posts: 2895
Joined: Wed Aug 03, 2011 6:16 am
Location: USA

Post by qt_ky »

It's rather unfortunate they share the exact same icon and name. All the differences are subtle: at a glance, the parallel stage will show loop variables below stage variables whereas basic does not. The metadata column names may be a bit different. If you open the stage properties with the top left button, the basic stage will have fewer tabs visible. It may help to establish a stage naming convention but for existing ones you just have to pop them open and dig around a bit.
Choose a job you love, and you will never have to work a day in your life. - Confucius
Mike
Premium Member
Premium Member
Posts: 1021
Joined: Sun Mar 03, 2002 6:01 pm
Location: Tampa, FL

Post by Mike »

The use of a BASIC transformer in a parallel job should be very rare. If I ever use one (or one of my developers were to use one), I require an annotation on the canvas surrounding the BASIC transformer denoting it as such.

Mike
UCDI
Premium Member
Premium Member
Posts: 383
Joined: Mon Mar 21, 2016 2:00 pm

Post by UCDI »

Seems like it would call a basic routine, as another identification point, which you MAY be able to spot in the job dependency tree or something like that. Not 100% sure, but a parallel job with a server routine as a dependency is a dead giveaway.

Beware of these things. I use one now and again, because its faster for some string processing, but they for sure mangle timestamps and possibly have other issues. You have to route timestamp fields around this stage if you want to keep microseconds.
rameshrr3
Premium Member
Premium Member
Posts: 609
Joined: Mon May 10, 2004 3:32 am
Location: BRENTWOOD, TN

Post by rameshrr3 »

I usually use an icon editor or image processing tool to change the default look and feel of basic transformer on canvas , so that I know :)
On my canvas the Basic transformer now has the similar icon as parallel transformer , but the COLOR is different as i edited the bmp (PXSVtransformer.bmp ??) file and moved the hue/saturation/brightness sliders more towards the greenish side .

There are many other ways of knowing it - In generated OSH look for "dsjobsh "operator - dead giveaway for basic transformer, or you can open up the transformer stage editor and if you don't see loop variables its a basic transformer.

Its useful if you have lots of legacy server text processing and date processing routines and don't have time to replicate them using the parallel transformer external function feature via c++ ( Eg in my case i had the ABA checksum algorithm and the string decode function ) . It is Not scalable on grid environments as it needs to run only on the conductor node - so it can be a bottleneck in that case.
Post Reply