FORMAL difference between server and parallel jobs?

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
StefL
Participant
Posts: 47
Joined: Fri Feb 25, 2005 3:55 am
Location: Stockholm
Contact:

FORMAL difference between server and parallel jobs?

Post by StefL »

I've stumbled across a problem that seems minor but keeps bugging me, and it also keeps me wondering about the formal difference between parallel and server jobs. I realise a parallel job gives greater possibility of distributing the execution, but having previously worked with Informatica I find it somewhat hard to logically cope with some of the limitations that come with server jobs in comparison to parallel.

Right now a simple thing that's getting me stuck is to set the radix character (decimal separator) to comma (,) when reading Oracle data and writing it to a sequential file (csv). It should be a piece of cake but I find no way of controlling it in a server job except by resetting the NLS locale which still doesn's solve it entirely.
In a parallel job decimal separator is one parameter free to be set in the file stage, but defining a parallel job DEMANDS manual specification of virtually everything.

I realise this is a 'big' question but would be grateful if someone could briefly outline the 'technical' differences between parallel and server (I've looked in the documentation and help but found no explanation of the kind I look for) as well as suggest a feasible solution to my more direct problem described above.
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

StefL,

I'll take a short stab at answering part of your question. First off, both Server and Px might now share the Ascential name but they evolved quite separately from each other, so it is not surprising that they handle certain things differently. In particular, the DataStage Server engine is an equal opportunity data handler and usually doesn't really what sort of data is in any column, at least until it is asked to manipulate it. Thus, in the case of importing and passing through numeric data with NLS-type conventions the job doesn't know if a "." or "," is being used as a thousands separator or as a decimal point. Once you do try to manipulate the data (meaning doing more than just passing it straight through without a derivation) then suddenly it needs to know and will use whatever the NLS settings are (if activated) or the default conventions.

So, if you do not wish to have decimal output from a Server job to be different from the input format you will have to explicitly modify or convert it. The ICONV and OCONV functions have been discussed in enough detail and I'm sure you have used them before, in addition I've seen posting here in DSXChange which describe a simple string-based manipulation to change the formatting around.

I'm not sure if I addressed or answered your query correctly - please tell me what you think...
kcbland
Participant
Posts: 5208
Joined: Wed Jan 15, 2003 8:56 am
Location: Lutz, FL
Contact:

Post by kcbland »

The FORMAL difference is that Server is the ETL tool used by over 2000 customers. Parallel is a separate tool that was purchased a few years back and "folded" into the suite. Parallel and Server are COMPLETELY separate ETL tools under the covers, with some limited overlap capability.

Imagine two houses side-by-side. To make a bigger house, you take off the roofs of both houses and build a single larger roof to span both. You build a wall connecting the sides of both houses to make it appear from the street that it is a single large house. Upon entering the house, you discover there's two kitchens and there's a walkway that connects two radically different interior designed portions of the house.

Parallel writes C code that uses a C compiler and uses a custom script process (OSH) that is interpreted at runtime and is built for high-performance high-volume data loading of highly cleansed data. Server writes a version of BASIC programs using an internal compiler and is built for highly-nimble transformation of very dirty non-conforming data.

Comparing anything between the two jobs is irrelevant, they do not share the same technology. The way something works in one is completely different than the way it works in the other. Good luck!
Kenneth Bland

Rank: Sempai
Belt: First degree black
Fight name: Captain Hook
Signature knockout: right upper cut followed by left hook
Signature submission: Crucifix combined with leg triangle
manteena
Premium Member
Premium Member
Posts: 38
Joined: Thu Feb 10, 2005 1:43 pm
Location: USA

Post by manteena »

Simply
Server DS = (Visual) Basic
PX = C++
Think about the differences between Right Hand Sides same differences exits at the Left Hand Side.
StefL
Participant
Posts: 47
Joined: Fri Feb 25, 2005 3:55 am
Location: Stockholm
Contact:

Thanks for the answers

Post by StefL »

Thanks Kenneth!
That indeed did some clarification to me. In all work I've been doing so far server has been the choice and I've never been able to fit parallel into the picture. I just happened to stumble across a very minor functionality I figured could be useful but got lost in the details of parallel when trying to use it...

And Arnd - I guess you're right I need to configure the data format even as I read it from an Oracle database. I kept thinking it was irrelevant which format is used as long as it isn't explicitly printed out but probably the picture isn't quite that simple - the output settings of the database might affect what the DS job actually sees.

/Stef

With greetings from a very snowy and sunny Stockholm 8)
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

manteena wrote:Simply
Server DS = (Visual) Basic
PX = C++
Think about the differences between Right Hand Sides same differences exits at the Left Hand Side.
Server DataStage is written in Uv/Basic which relies on the UniVerse or DataStage server engine - it is quite different from Visual Basic!
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Re: Thanks for the answers

Post by ArndW »

StefL wrote:...With greetings from a very snowy and sunny Stockholm 8)
Are you working on the DHL project there? In that case we almost worked together, but I chose a more southerly clime :lol: (I'm in a city on the Cote d'Azur between Nice & Cannes)
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

You might find this piece (in the FAQ forum) on DataStage architecture interesting.
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