Monday 28 January 2013

Datastage Admin Commands

Using DataStage Administrator commands to find:
Command DescriptionCommand
DS Project Object countsSELECT COUNT(*) FROM DS_JOBS;
SELECT COUNT(*) FROM DS_JOBOBJECTS;
  
List all jobs in a DS projectSELECT JOBNO, @ID, CATEGORY, NAME FROM DS_JOBS
  
Clear Log From Administratorselect JOBNO from DS_JOBS where NAME='Name of the job'
CLEAR.FILE RT_Logxx where xx is JOBNO.
  
CLEAR HASH FILE.CLEAR.FILE <HASHED FILE NAME>
  
Find how many Jobs are using given Hashed file as INPUTselect DS_JOBS.NAME AS JOB_NAME FMT '35L' from DS_JOBOBJECTS,DS_JOBS where DS_JOBOBJECTS.OLETYPE = 'CHashedInput' and DS_JOBOBJECTS.OBJIDNO = DS_JOBS.JOBNO and EVAL DS_JOBOBJECTS."@RECORD<6>" = 'hashed file name' group by JOB_NAME; 
  
Find how many Jobs are using given Hashed file as OUTPUselect DS_JOBS.NAME AS JOB_NAME FMT '35L' from DS_JOBOBJECTS,DS_JOBS where DS_JOBOBJECTS.OLETYPE = 'CHashedOutput' and DS_JOBOBJECTS.OBJIDNO = DS_JOBS.JOBNO and EVAL DS_JOBOBJECTS."@RECORD<6>" = 'hashed file name' group by JOB_NAME; 
  
Find how many Jobs are using given Hashed file as INPUT and OUTPUTselect DS_JOBS.NAME AS JOB_NAME FMT '35L' from DS_JOBOBJECTS, DS_JOBS where DS_JOBOBJECTS.OLETYPE in ('CHashedOutput','CHashedInput') and DS_JOBOBJECTS.OBJIDNO = DS_JOBS.JOBNO and EVAL DS_JOBOBJECTS."@RECORD<6>" = 'Hashed file name' group by JOB_NAME;
  
View column data in a hashed fileSELECT COLUMN_NAME FROM HASHED_FILE_NAME
  
List metadata of hashfileSELECT "FIELD", "FIELD.TYPE", "FIELD.DEF", "FIELD.CONV", "FIELD.HEAD", "FIELD.FMT", "FIELD.ASSOC" FROM DICT hashedfile ORDER BY "FIELD.NO", "TYPE";
  
Insert data into the hashfileINSERT INTO HASHED_FILE_NAME (COLUMN_NAME) VALUES ('VALUE');
  
Find which user modified the job lastSELECT INSTANCE, DTM, MODIFIER FROM DS_AUDIT WHERE CLASS = '2' AND INSTANCE LIKE 'JOB NAME'; 
  
List all the projects in DataStage.. With OwnerSELECT @ID, NAME FMT '40L' FROM UV.ACCOUNT;
  
Reset surrogate key generated using Keymgmt function in DatastageUPDATE SDKSequences USING DICT VOC SET F1 = '1' WHERE @ID = 'Your_Sequence_Name';
  
List all the surrogate key variables used in datastage projSELECT * FROM SDKSequences;
  
List Datastage error message decsription, given error meSELECT * FROM SYS.MESSAGE WHERE @ID = '081002';
  
List all jobs using a TABLESELECT DS_JOBS.NAME AS JOB_NAME, DS_JOBS.CATEGORY, DS_JOBOBJECTS.NAME AS OBJECT_NAME, DS_JOBOBJECTS.OLETYPE, EVAL DS_JOBOBJECTS."if index(upcase(@RECORD),'TABLE_NAME',1) > 0 then 'FOUND' else ''" AS FOUND FMT '5L' FROM DS_JOBS, DS_JOBOBJECTS WHERE DS_JOBS.JOBNO = DS_JOBOBJECTS.OBJIDNO and FOUND = 'FOUND' GROUP BY JOB_NAME, DS_JOBS.CATEGORY, OBJECT_NAME, DS_JOBOBJECTS.OLETYPE, FOUND; 
  
  
List Sequencer jobs calling a specified job in the project  @DsServe >> /etl/Ascential/Datastage/DSEngine/bin/dssearch -ljobs -usedby -r -oc -oj <projectname> <jobname>
List all jobs called in specified Sequencer job  @DsServe >> /etl/Ascential/Datastage/DSEngine/bin/dssearch -ljobs -uses -r -oc -oj
<projectname> <SeqJobname>

3 comments:

  1. Your post is very nice.DO u have any link or material to know complete information about DS_JOBS,DS_JOBOBJECTS,DS_AUDIT etc.As of now i know basic knowledge with the help of dsexchange

    ReplyDelete
  2. Can you please let me know from which schema i have to access these tables.

    ReplyDelete
  3. How do I search what all Jobs use a particular String. Example if I want to search for string "ABC" in all the Jobs using the query.

    ReplyDelete