Page 1 of 3
job running on single node
Posted: Thu Nov 26, 2009 11:46 pm
by vinsashi
Hi,
In confiuration file i have set two nodes.resource disk for first one i given d:/datastage/datasets,for second resorce disk for second node i given E:/datastage/datasets. my job contains
rowgenerator--->sort--->lookup(ref rowgeenrator)--->dataset
after executing that job on 2node but it showing singlenode.and i have set apt_dum_score is true in evironment variables.
but it showing like this
It runs 4 processes on 1 node.
what i have to do run in 2node. dataset also creating in first resource disk not created in second scratch disk
Thanks in Adavance
Vin...
Posted: Fri Nov 27, 2009 12:39 am
by vinsashi
Hi Rajesh,
I cant getting what u saying..i didnt get which environmental variable for that. in job itself i have changed combinality mode as dont'combine.but i am getting like this
it runs 7 processers on 1 node.
Thanks
Vin..
Posted: Fri Nov 27, 2009 12:51 am
by ray.wurlod
Row Generator default execution mode is Sequential. You can change this on its Advanced properties tab.
Posted: Fri Nov 27, 2009 1:09 am
by vinsashi
Hi ray,
I have changed execution mode for row generator .i am getting like this
It runs 6 processes on 1 node.
but in config file i set 2nodes.but it not showing
it runs some processes on 2node..
Thanks
Vin..
Posted: Fri Nov 27, 2009 5:25 am
by ray.wurlod
From your job log please post full details of:
(a) the configuration file entry
(b) the generated OSH
(c) the score
Please surround each with a set of Code tags.
Posted: Fri Nov 27, 2009 5:56 am
by vinsashi
Hi ray,
Please see this one
1.configfile
Code: Select all
main_program: APT configuration file: C:/IBM/InformationServer/Server/Configurations/2node.apt
{
node "node1"
{
fastname "TOMEDW"
pools ""
resource disk "C:/IBM/InformationServer/Server/Datasets" {pools ""}
resource scratchdisk "C:/IBM/InformationServer/Server/Scratch" {pools ""}
}
}
{
node "node2"
{
fastname "TOMEDW"
pools ""
resource disk "E:/datastage/Datasets" {pools ""}
resource scratchdisk "C:/IBM/InformationServer/Server/Scratch" {pools ""}
}
2.generated OSH
Code: Select all
OSH script
# OSH / orchestrate script for Job Untitled3 compiled at 17:19:39 27 NOV 2009
#################################################################
#### STAGE: Row_Generator_0
## Operator
generator
## Operator options
-schema record
(
empid:nullable int32 {random={}};
ename:string[];
)
-records 10000000
## General options
[ident('Row_Generator_0'); jobmon_ident('Row_Generator_0'); par; nocombine]
## Outputs
0> [] 'Row_Generator_0:DSLink4.v'
;
#################################################################
#### STAGE: Row_Generator_1
## Operator
generator
## Operator options
-schema record
(
empid:nullable int32 {cycle={init=1, incr=1}};
)
-records 1000000
## General options
[ident('Row_Generator_1'); jobmon_ident('Row_Generator_1'); par; nocombine]
## Outputs
0> [] 'Row_Generator_1:DSLink5.v'
;
#################################################################
#### STAGE: Lookup_2
## Operator
lookup
## Operator options
-table
-key empid
-keep
-ifNotFound continue
## General options
[ident('Lookup_2'); jobmon_ident('Lookup_2'); nocombine]
## Inputs
0< [transfer( inputData excludes empid)] 'Sort_11:DSLink8.v'
1< [] 'Row_Generator_1:DSLink5.v'
## Outputs
0> [modify (
keep
empid;)] 'Lookup_2:DSLink6.v'
;
#################################################################
#### STAGE: Data_Set_3
## Operator
copy
## General options
[ident('Data_Set_3'); nocombine]
## Inputs
0< [] 'Lookup_2:DSLink6.v'
## Outputs
0>| [ds] 'D:\\test\\sas.ds'
;
#################################################################
#### STAGE: Sort_11
## Operator
tsort
## Operator options
-stable
-key 'empid'
-asc
## General options
[ident('Sort_11'); jobmon_ident('Sort_11'); nocombine]
## Inputs
0< [] 'Row_Generator_0:DSLink4.v'
## Outputs
0> [modify (
keep
empid,ename;
)] 'Sort_11:DSLink8.v'
;
# End of OSH code
3.score
Code: Select all
main_program: This step has 7 datasets:
ds0: {op0[1p] (parallel Row_Generator_0)
eOther(APT_HashPartitioner { key={ value=empid,
subArgs={ asc }
}
})->eCollectAny
op2[1p] (parallel Sort_11)}
ds1: {op1[1p] (parallel Row_Generator_1)
eEntire->eCollectAny
op3[1p] (parallel APT_LUTCreateOp in Lookup_2)}
ds2: {op2[1p] (parallel Sort_11)
[pp] eSame->eCollectAny
op4[1p] (parallel APT_LUTProcessOp in Lookup_2)}
ds3: {op3[1p] (parallel APT_LUTCreateOp in Lookup_2)
eEntire->eCollectAny
op4[1p] (parallel APT_LUTProcessOp in Lookup_2)}
ds4: {op3[1p] (parallel APT_LUTCreateOp in Lookup_2)
eAny->eCollectAny
op4[1p] (parallel APT_LUTProcessOp in Lookup_2)}
ds5: {op5[1p] (parallel delete data files in delete D:/test/sas.ds)
->eCollectAny
op6[1p] (sequential delete descriptor file in delete D:/test/sas.ds)}
ds6: {op4[1p] (parallel APT_LUTProcessOp in Lookup_2)
[pp] ->
D:/test/sas.ds}
It has 7 operators:
op0[1p] {(parallel Row_Generator_0)
on nodes (
node1[op0,p0]
)}
op1[1p] {(parallel Row_Generator_1)
on nodes (
node1[op1,p0]
)}
op2[1p] {(parallel Sort_11)
on nodes (
node1[op2,p0]
)}
op3[1p] {(parallel APT_LUTCreateOp in Lookup_2)
on nodes (
node1[op3,p0]
)}
op4[1p] {(parallel APT_LUTProcessOp in Lookup_2)
on nodes (
node1[op4,p0]
)}
op5[1p] {(parallel delete data files in delete D:/test/sas.ds)
on nodes (
node1[op5,p0]
)}
op6[1p] {(sequential delete descriptor file in delete D:/test/sas.ds)
on nodes (
node1[op6,p0]
)}
It runs 7 processes on 1 node.
Thanks in Adavnce
vin..
Posted: Fri Nov 27, 2009 2:17 pm
by ray.wurlod
Your configuration file appears to be missing its final "}" character. This might be preventing the node2 definition from being interpreted.
Posted: Sun Nov 29, 2009 1:14 pm
by Sreenivasulu
Very good find...
Regards
Sreeni
Posted: Sun Nov 29, 2009 1:34 pm
by ray.wurlod
Another possibility is that the job has been compiled in trace mode with sequential mode execution enforced.
Posted: Sun Nov 29, 2009 10:42 pm
by vinsashi
Hi Ray,
I have change Config file but its not running on two node.
what trace mode at the time of compilation where i wil get that one.
Thanks
vin...
Posted: Sun Nov 29, 2009 11:01 pm
by vinsashi
Hi Ray,
I have changed Config file according to your instructions but its not running on two node.what trace mode at the time of compilation where i wil get that one.and if i changed dont Combinality mode but creating more datasets.what is the use of combinality mode in perfomance tunning..
Thanks
vin..
Posted: Sun Nov 29, 2009 11:17 pm
by ray.wurlod
Combinability mode governs the extent to which operators will be combined into fewer processes. By default DataStage does this aggressively, which may be sub-optimal. But it is not relevant to the question running in this thread.
If you don't know where/how to compile in trace mode, then I daresay you have not done this, so would not worry about it.
Can you please advise what the setting of $APT_CONFIG_FILE is, but I specifically need the value extracted from the Director log of this job.
Posted: Sun Nov 29, 2009 11:28 pm
by vinsashi
in administrator i have set
APT_CONFIG_FILE as C:/IBM/InformationServer/Server/Configurations/default.apt
in job i have called as a job parameter and i have changed that one as a 2node.apt
Code: Select all
Environment variable settings:
ALLUSERSPROFILE=C:\Documents and Settings\All Users
APT_COMPILEOPT=-W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c
APT_COMPILER=cxx
APT_CONFIG_FILE=C:/IBM/InformationServer/Server/Configurations/2node.apt
APT_DUMP_SCORE=1
APT_ERROR_CONFIGURATION=severity, !vseverity, !jobid, moduleid, errorIndex, timestamp, !ipaddr, !nodeplayer, !nodename, opid, message
APT_LINKER=cxx
APT_LINKOPT=-s -W/dll -W/base:0x50000000
APT_MONITOR_MINTIME=10
APT_OPERATOR_REGISTRY_PATH=C:\IBM\InformationServer\Server\Projects\EBIA_v2\buildop
APT_ORCHHOME=C:/IBM/InformationServer/Server/PXEngine
APT_USE_CRLF=1
BELL=^G
CLASSPATH=C:\IBM\SQLLIB\java\db2java.zip;C:\IBM\SQLLIB\java\db2jcc.jar;C:\IBM\SQLLIB\java\sqlj.zip;C:\IBM\SQLLIB\java\db2jcc_license_cu.jar;C:\IBM\SQLLIB\bin;C:\IBM\SQLLIB\java\common.jar
[/code]
in this way i am getting in datastage director log regarding environmental variables
Thanks
Vin..
Posted: Sun Nov 29, 2009 11:58 pm
by ray.wurlod
Try using backslashes ( \ ) in the pathname of the configuration file. I know Windows usually tolerates forward slashes, but please try.
Can you also please dump detail of the Director log entry that shows the configuration file contents?
Posted: Mon Nov 30, 2009 12:27 am
by vinsashi
Hi ray,
I have tried with back slash also it showing same.
i have attached detailed log of job.
Code: Select all
Starting Job Partest.
$APT_CONFIG_FILE = C:\IBM\InformationServer\Server\Configurations\2node.apt
Code: Select all
Environment variable settings:
ALLUSERSPROFILE=C:\Documents and Settings\All Users
APT_COMPILEOPT=-W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c
APT_COMPILER=cxx
APT_CONFIG_FILE=C:\IBM\InformationServer\Server\Configurations\2node.apt
APT_DUMP_SCORE=1
APT_ERROR_CONFIGURATION=severity, !vseverity, !jobid, moduleid, errorIndex, timestamp, !ipaddr, !nodeplayer, !nodename, opid, message
APT_LINKER=cxx
APT_LINKOPT=-s -W/dll -W/base:0x50000000
APT_MONITOR_MINTIME=10
APT_OPERATOR_REGISTRY_PATH=C:\IBM\InformationServer\Server\Projects\EBIA_v2\buildop
APT_ORCHHOME=C:/IBM/InformationServer/Server/PXEngine
APT_USE_CRLF=1
BELL=^G
CLASSPATH=C:\IBM\SQLLIB\java\db2java.zip;C:\IBM\SQLLIB\java\db2jcc.jar;C:\IBM\SQLLIB\java\sqlj.zip;C:\IBM\SQLLIB\java\db2jcc_license_cu.jar;C:\IBM\SQLLIB\bin;C:\IBM\SQLLIB\java\common.jar
ClusterLog=C:\WINDOWS\Cluster\cluster.log
COMPUTERNAME=TOMATO
CommonProgramFiles=C:\Program Files\Common Files
ComSpec=C:\WINDOWS\system32\cmd.exe
DB2INSTANCE=DB2INST
DISPLAY=:0.0
DS_ENABLE_RESERVED_CHAR_CONVERT=0
DS_OPERATOR_BUILDOP_DIR=buildop
DS_OPERATOR_WRAPPED_DIR=wrapped
DS_TDM_PIPE_OPEN_TIMEOUT=720
DS_TDM_TRACE_SUBROUTINE_CALLS=0
DS_USERNO=-1740
DSIPC_OPEN_TIMEOUT=30
FLAVOR=-1
FP_NO_HOST_CHECK=NO
INCLUDE=C:\IBM\SQLLIB\INCLUDE;C:\IBM\SQLLIB\LIB;C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\include\
LIB=C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\Lib\;C:\IBM\SQLLIB\LIB
MAN_CHM_INDEX=C:/PROGRA~1/MKSTOO~1/etc/chm/tkutil.idx;C:/PROGRA~1/MKSTOO~1/etc/chm/tkapi.idx;C:/PROGRA~1/MKSTOO~1/etc/chm/tcltk.idx;C:/PROGRA~1/MKSTOO~1/etc/chm/tkcurses.idx
MAN_HTM_PATHS=C:/PROGRA~1/MKSTOO~1/etc/htm/perl;C:/PROGRA~1/MKSTOO~1/etc/htm/perl/pod;C:/PROGRA~1/MKSTOO~1/etc/htm/perl/ext;C:/PROGRA~1/MKSTOO~1/etc/htm/perl/lib
MAN_TXT_INDEX=C:/PROGRA~1/MKSTOO~1/etc/tkutil.idx;C:/PROGRA~1/MKSTOO~1/etc/tkapi.idx;C:/PROGRA~1/MKSTOO~1/etc/tcltk.idx;C:/PROGRA~1/MKSTOO~1/etc/tkcurses.idx
NUMBER_OF_PROCESSORS=2
NUTCROOT=C:\PROGRA~1\MKSTOO~1
OS=Windows_NT
OSH_STDOUT_MSG=1
PATH=C:\IBM\InformationServer\Server\PXEngine\bin;C:\IBM\InformationServer\Server\PXEngine\osh_wrappers;C:\IBM\InformationServer\Server\PXEngine\user_osh_wrappers;C:\IBM\InformationServer\Server\PXEngine\user_osh_wrappers;C:\IBM\InformationServer\Server\DSComponents\bin;C:\IBM\InformationServer\Server\DSParallel;C:\IBM\InformationServer\Server\Projects\EBIA_v2\RT_BP385.O;C:\IBM\InformationServer\Server\DSEngine\bin;C:\IBM\InformationServer\Server\Projects\EBIA_v2\buildop;C:\IBM\InformationServer\Server\Projects\EBIA_v2\wrapped;C:\oracle\product\10.1.0\db_1\bin;C:\PROGRA~1\MKSTOO~1\mksnt;C:\PROGRA~1\MKSTOO~1\bin;C:\PROGRA~1\MKSTOO~1\bin\X11;C:\PROGRA~1\MKSTOO~1\mksnt;C:\IBM\InformationServer\ASBNode\lib\cpp;C:\IBM\InformationServer\ASBNode\apps\proxy\cpp\vc60\MT_dll\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Intel\DMIX;C:\IBM\SQLLIB\BIN;C:\IBM\SQLLIB\FUNCTION;C:\Program Files\Java\jdk1.5.0_22\bin;C:\Program Files\Java\jdk1.5.0_22\lib;C:\Program Files\Java\jre1.5.0_22\bin;C:\Program Files\Java\jre1.5.0_22\lib;C:\IBM\SQLLIB\SAMPLES\REPL;C:\IBM\SQLLIB\BIN;C:\Program Files\Common Files\DivX Shared\;C:\Program Files\MySQL\MySQL Server 5.0\bin
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.sh;.ksh;.csh;.sed;.awk;.pl
PERL5LIB=C:\oracle\product\10.1.0\db_1\perl\lib\5.6.1\MSWin32-x86;C:\oracle\product\10.1.0\db_1\perl\lib\5.6.1;C:\oracle\product\10.1.0\db_1\perl\5.6.1\lib\MSWin32-x86;C:\oracle\product\10.1.0\db_1\perl\site\5.6.1;C:\oracle\product\10.1.0\db_1\perl\site\5.6.1\lib;C:\oracle\product\10.1.0\db_1\sysman\admin\scripts
PIDTOK=7260
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 15 Model 4 Stepping 7, GenuineIntel
PROCESSOR_LEVEL=15
PROCESSOR_REVISION=0407
ProgramFiles=C:\Program Files
PWD=C:\IBM\InformationServer\Server\Projects\EBIA_v2
PX_DBCONNECTHOME=C:/IBM/InformationServer/Server/DSComponents
ROOTDIR=C:/PROGRA~1/MKSTOO~1
SHELL=C:/PROGRA~1/MKSTOO~1/mksnt/sh.exe
SystemDrive=C:
SystemRoot=C:\WINDOWS
TEMP=C:\WINDOWS\TEMP
TERM=console
TERMCAP=C:\PROGRA~1\MKSTOO~1\etc\termcap
TERMINFO=C:\PROGRA~1\MKSTOO~1\usr\lib\terminfo
TMP=C:\WINDOWS\TEMP
UNIVERSE_CONTROLLING_TERM=1
UNIVERSE_PARENT_PROCESS=7260
USER=TOMATO\Administrator
USERPROFILE=C:\Documents and Settings\Default User
VS71COMNTOOLS=C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\
WHO=EBIA_v2
windir=C:\WINDOWS
Parallel job initiated
Code: Select all
OSH script
# OSH / orchestrate script for Job Partest compiled at 11:47:47 30 NOV 2009
#################################################################
#### STAGE: Row_Generator_0
## Operator
generator
## Operator options
-schema record
(
empid:nullable int32 {random={}};
ename:string[];
)
-records 200
## General options
[ident('Row_Generator_0'); jobmon_ident('Row_Generator_0'); par]
## Outputs
0> [] 'Row_Generator_0:DSLink4.v'
;
#################################################################
#### STAGE: Row_Generator_1
## Operator
generator
## Operator options
-schema record
(
empid:nullable int32 {cycle={init=1, incr=1}};
)
-records 200
## General options
[ident('Row_Generator_1'); jobmon_ident('Row_Generator_1'); par]
## Outputs
0> [] 'Row_Generator_1:DSLink5.v'
;
#################################################################
#### STAGE: Lookup_2
## Operator
lookup
## Operator options
-table
-key empid
-keep
-ifNotFound continue
## General options
[ident('Lookup_2'); jobmon_ident('Lookup_2')]
## Inputs
0< [transfer( inputData excludes empid)] 'Sort_11:DSLink8.v'
1< [] 'Row_Generator_1:DSLink5.v'
## Outputs
0> [modify (
keep
empid;)] 'Lookup_2:DSLink6.v'
;
#################################################################
#### STAGE: Data_Set_3
## Operator
copy
## General options
[ident('Data_Set_3')]
## Inputs
0< [] 'Lookup_2:DSLink6.v'
## Outputs
0>| [ds] 'D:\\test\\sas.ds'
;
#################################################################
#### STAGE: Sort_11
## Operator
tsort
## Operator options
-stable
-key 'empid'
-asc
## General options
[ident('Sort_11'); jobmon_ident('Sort_11')]
## Inputs
0< [] 'Row_Generator_0:DSLink4.v'
## Outputs
0> [modify (
keep
empid,ename;
)] 'Sort_11:DSLink8.v'
;
# End of OSH code
Parallel job default NLS map ASCL_MS1252, default locale OFF
Code: Select all
main_program: APT configuration file: C:/IBM/InformationServer/Server/Configurations/2node.apt
{
node "node1"
{
fastname "TOMATO"
pools ""
resource disk "C:/IBM/InformationServer/Server/Datasets" {pools ""}
resource scratchdisk "C:/IBM/InformationServer/Server/Scratch" {pools ""}
}
}
{
node "node2"
{
fastname "TOMATO"
pools ""
resource disk "E:/datastage/Datasets" {pools ""}
resource scratchdisk "C:/IBM/InformationServer/Server/Scratch" {pools ""}
}
}
Code: Select all
main_program: This step has 4 datasets:
ds0: {op0[1p] (parallel delete data files in delete D:/test/sas.ds)
->eCollectAny
op1[1p] (sequential delete descriptor file in delete D:/test/sas.ds)}
ds1: {op2[1p] (parallel APT_CombinedOperatorController(1):APT_LUTCreateOp in Lookup_2)
eEntire->eCollectAny
op3[1p] (parallel APT_CombinedOperatorController(0):APT_LUTProcessOp in Lookup_2)}
ds2: {op2[1p] (parallel APT_CombinedOperatorController(1):APT_LUTCreateOp in Lookup_2)
eAny->eCollectAny
op3[1p] (parallel APT_CombinedOperatorController(0):APT_LUTProcessOp in Lookup_2)}
ds3: {op3[1p] (parallel APT_CombinedOperatorController(0):APT_LUTProcessOp in Lookup_2)
[pp] ->
D:/test/sas.ds}
It has 4 operators:
op0[1p] {(parallel delete data files in delete D:/test/sas.ds)
on nodes (
node1[op0,p0]
)}
op1[1p] {(sequential delete descriptor file in delete D:/test/sas.ds)
on nodes (
node1[op1,p0]
)}
op2[1p] {(parallel APT_CombinedOperatorController(1):
(Row_Generator_1)
(APT_LUTCreateOp in Lookup_2)
) on nodes (
node1[op2,p0]
)}
op3[1p] {(parallel APT_CombinedOperatorController(0):
(Row_Generator_0)
(Sort_11)
(APT_LUTProcessOp in Lookup_2)
) on nodes (
node1[op3,p0]
)}
It runs 4 processes on 1 node.
Thanks
Vin..