Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Scope

Standard Data Model

Standard Tables

Inventory Tables

  • The following tables are managed by reporting inventory jobs that create an inventory of existing jobs, job chains and orders.
  • Records are overwritten by each run of the reporting inventory jobs.
  • SQL Scripts

...

Expand
titleINVENTORY_FILES
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
INSTANCE_IDNOT NULLNUMERICForeign Key

references INVENTORY_INSTANCES.ID

FILE_TYPENOT NULLVARCHAR 

file types in use:

  • job
  • job_chain
  • order

file types not used:

  • process_class
  • config
  • lock
  • schedule
  • ...
FILE_NAMENOT NULLVARCHAR 

path from live directory

e.g. test/my_job.job.xml

FILE_BASENAMENOT NULLVARCHAR 

file base name with extension

e.g. my_job.job.xml

FILE_DIRECTORYNOT NULLVARCHAR 

path calculated from the live directory

e.g. test

FILE_CREATEDNULLDATETIME UTC timestamp of the creation date of the file
FILE_MODIFIEDNULLDATETIME UTC timestamp of the modification date of the file
FILE_LOCAL_CREATEDNULLDATETIME local timestamp of the creation date of the file
FILE_LOCAL_MODIFIEDNULLDATETIME local timestamp of the modification date of the file
CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification

...

Expand
titleINVENTORY_JOB_CHAINS
Red complete the list of start causes
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
INSTANCE_IDNOT NULLNUMERICForeign Key

references INVENTORY_INSTANCES.ID

used for simplified clean-up
FILE_IDNOT NULLNUMERICForeign Keyreferences INVENTORY_FILES.ID
START_CAUSENOT NULLVARCHAR 

the following start causes are available:

  • file_trigger
  • order
Status
colour
titleTODO
NAMENOT NULLVARCHAR 

job chain name

e.g. test/my_jobchain for a given job chain path test/my_jobchain.job_chain.xml

BASENAMENOT NULLVARCHAR 

job chain base name

e.g. my_jobchain for a given job chain path test/my_jobchain.job_chain.xml
TITLENULLVARCHAR job chain title
CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification
Expand
titleINVENTORY_JOB_CHAIN_NODES
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
INSTANCE_IDNOT NULLNUMERICForeign Key

references INVENTORY_INSTANCES.ID

used for simplified clean-up
JOB_CHAIN_IDNOT NULLNUMERICForeign Keyreferences INVENTORY_JOB_CHAINS.ID
NAMENOT NULLVARCHAR 

job node name:

  • file_order_source
  • job_chain_node
  • file_order_sink
ORDERINGNOT NULLNUMERIC ordering of node in job chain

STATE

NULLVARCHAR job node state as specified in the configuration
NEXT_STATENULLVARCHAR next state for an order in case of successful execution
ERROR_STATENULLVARCHAR error state for an order in case of unsuccessful execution
JOBNULLVARCHAR 

job name as specified in the job node configuration

e.g. ../my_job

JOB_NAMENOT NULLVARCHARForeign Key

corresponds to INVENTORY_JOBS.NAME. Paths are resolved to absolute values starting from the live directory

e.g. test/my_job

CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification
Expand
titleINVENTORY_JOB_CHAIN_ORDERS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
INSTANCE_IDNOT NULLNUMERICForeign Key

referencesINVENTORY_INSTANCES.ID

used for simplified clean-up
FILE_IDNOT NULLNUMERICForeign Keyreferences INVENTORY_FILES.ID
JOB_CHAIN_NAMENOT NULLVARCHARForeign Key 

order namecorresponds to INVENTORY_JOB_CHAINS.NAME

e.g. test/my_jobchain,my_order for a given order path test/my_jobchain,my_order.order.xml

BASENAMEORDER_IDNOT NULLVARCHAR 

order identification (unique per job chain)order base name

e.g. my_jobchain,my_order for a given order job chain path test/my_jobchain,my_order.order.xml
TITLENULLVARCHAR order title
ISORDER_RUNTIME_DEFINEDID

 

NOT NULLNUMERICVARCHAR 

specifies if a start time has been configured:

  • 1: yes
  • 0: no

order identification (unique per job chain)

e.g. my_order for a given order path test/my_jobchain,my_order.order.xml

JOB_CHAIN_NAMECREATEDNOT NULLDATETIMEVARCHARForeign Key

corresponds to INVENTORY_JOB_CHAINS.NAME

e.g. test/my_jobchain

IS_RUNTIME_DEFINED

 

NOT NULLNUMERIC 

specifies if a start time has been configured:

  • 1: yes
  • 0: no
CREATEDNOT  timestamp of record creationMODIFIEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification

Fact Tables

  • The following tables are used to collect facts from the JobScheduler history.
  • No standalone jobs are given. Fact tables contain job chain starts exclusively.
  • These tables can be used to create individual reports.
  • SQL Scripts

...

Expand
titleREPORT_EXECUTIONS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
SCHEDULER_ID NOT NULLNUMERIC corresponds to SCHEDULER_ORDER_HISTORY.SCHEDULER_ID
HISTORY_IDNOT NULLNUMERIC corresponds to SCHEDULER_ORDER_HISTORY.HISTORY_ID
TRIGGER_IDNOT NULLNUMERICForeign Keyreferences REPORT_TRIGGERS.ID
STEPNOT NULLNUMERIC 

corresponds to SCHEDULER_ORDER_STEP_HISTORY.STEP

NAMENOT NULLVARCHAR 

corresponds to SCHEDULER_HISTORY.JOB_NAME

e.g. test/my_job

BASENAMENOT NULLVARCHAR 

job base name

e.g. my_job, for a given job path test/my_job.job.xml

TITLENULLVARCHAR corresponds to INVENTORY_JOBS.TITLE
START_TIMENOT NULLDATETIME 

corresponds to SCHEDULER_ORDER_STEP_HISTORY.START_TIME

END_TIMENULLDATETIME 

corresponds to SCHEDULER_ORDER_STEP_HISTORY.END_TIME

STATENOT NULLVARCHAR 

corresponds to SCHEDULER_ORDER_STEP_HISTORY.STATE

CAUSENOT NULLVARCHAR start cause for execution, can be mapped to an individual start cause by use of table REPORT_MAP_CAUSES
ERRORNOT NULLNUMERIC 

specifies if an error occurred:

  • 0: no error
  • 1: error
ERROR_CODENULLVARCHAR JobScheduler error code
ERROR_TEXTNULLVARCHAR error message
IS_RUNTIME_DEFINEDNOT NULLNUMERIC 

specifies if a start time has been configured:

  • 1: yes
  • 0: no
CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification

Aggregation Tables

  • The following tables contain aggregations for
    • job steps per order 
    • triggers and executions per day, week, month, quarter, year
  • SQL Scripts

...

Expand
titleREPORT_EXECUTION_DATES
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
SCHEDULER_IDNOT NULLVARCHAR corresponds to SCHEDULER_ORDER_HISTORY.SCHEDULER_ID
HISTORY_IDNOT NULLNUMERIC corresponds to SCHEDULER_ORDER_HISTORY.HISTORY_ID
REFERENCE_IDNOT NULLNUMERICForeign Key

references REPORT_TRIGGERS.ID or REPORT_EXECUTIONS.ID

REFERENCE_TYPENOT NULLNUMERIC 

type of reference:

  • 0: references REPORT_TRIGGERS
  • 1: references REPORT_EXECUTIONS
START_DAYNOT NULLNUMERIC 

calendar day

e.g. 1

START_WEEKNOT NULLNUMERIC 

calendar week

e.g. 52

START_MONTHNOT NULLNUMERIC 

calendar month

e.g. 12

START_QUARTERNOT NULLNUMERIC 

quarter

e.g. 1

START_YEARNOT NULLNUMERIC 

year

e.g. 2015

END_DAYNOT NULLNUMERIC 

calendar day

e.g. 1

END_WEEKNOT NULLNUMERIC 

calendar week

e.g. 52

END_MONTHNOT NULLNUMERIC 

calendar month

e.g. 12

END_QUARTERNOT NULLNUMERIC 

quarter

e.g. 1

END_YEARNOT NULLNUMERIC 

calendar year

e.g. 2015

CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification

Mapping Tables

  • The following tables are used for the mapping of report data. Users can add individual records that are used for the mapping of results in individual reports:
    • Mapping of start causes for jobs
  • Contents in these tables is optional, however, their existence is required.
  • SQL Scripts

...

Expand
titleREPORT_MAP_CAUSES
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
CAUSENOT NULLVARCHAR 

start cause as used by JobScheduler:

possible values include

  • order: job start triggered by manual order
  • min_tasks: job start triggered by forced minimum number of tasks
  • delay_after_error: job start due to a setback event
  • period_single: job start triggered by order start time
  • period_repeat: job start triggered by order repeat interval
  • queue_at: job start scheduled manually or by task congestion

additional values provided by the JobScheduler Reporting Interface include

  • file_trigger: job start due to an incoming file
MAPPED_CAUSENOT NULLVARCHAR individual mapping of start cause
CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification

Standard Procedures

  • For most DBMS it is recommended to use views or procedures in order to speed up queries by pre-compiled statements.
  • The following procedures implement the use of the standard tables for reporting results.
  • SQL Scripts

Report about Installed Objects

  • Report about jobs, job chains and orders as collected from disk.

 

Expand
titleREPORT_INSTALLED_OBJECTS
CREATE OR REPLACE FUNCTION REPORT_INSTALLED_OBJECTS(start_date DATE, end_date DATE) RETURNS TABLE (
"ID" BIGINT,
"SCHEDULER_ID" VARCHAR(100),
"HOSTNAME" VARCHAR(255),
"JOB_CHAIN" VARCHAR(255),
"JOB_NAME" VARCHAR(255),
"JOB_BASENAME" VARCHAR(100),
"JOB_CHAIN_BASENAME" VARCHAR(100),
"JOB_TITLE" VARCHAR(255),
"JOB_CHAIN_TITLE" VARCHAR(255),
"CAUSE" VARCHAR(100),
"IS_ACTIVE_CALENDAR" INT,
"FILE_CREATED" TIMESTAMP,
"FILE_MODIFIED" TIMESTAMP
)

Report about Execution Summary

  • Report about executions of jobs and job chains.

 

Expand
titleREPORT_EXECUTION_SUMMARY
CREATE OR REPLACE FUNCTION REPORT_EXECUTION_SUMMARY(start_date DATE, end_date DATE) RETURNS TABLE ( 
"ID" BIGINT,
"SCHEDULER_ID" VARCHAR(100),
"HOSTNAME" VARCHAR(255),
"JOB_CHAIN" VARCHAR(255),
"JOB_NAME" VARCHAR(255),
"JOB_BASENAME" VARCHAR(100),
"JOB_CHAIN_BASENAME" VARCHAR(100),
"JOB_TITLE" VARCHAR(255),
"JOB_CHAIN_TITLE" VARCHAR(255),
"CAUSE" VARCHAR(100),
"IS_ACTIVE_CALENDAR" INT,
"START_TIME" TIMESTAMP,
"END_TIME" TIMESTAMP,
"START_DATE" DATE,
"END_DATE" DATE
)

Customization

  • The standard data model can be customized by use of additional tables and procedures.
  • Such tables are not required by the JobScheduler Reporting Interface.

Sample Custom Tables

  • The following tables implement samples for the customization of reports:
    • Assigning applications to jobs
    • Assigning mandators to jobs
  • Samples are presented for instructional use only.
  • SQL Scripts

Assigning Applications to Jobs

  • Should a report present information on a number of jobs that are used for the same application then the following tables could be used:

Application Master Data

 

Expand
titleREPORT_CUSTOM_APPS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
NAMENOT NULLVARCHAR application name
TITLENULLVARCHAR application title

Application Joins to Jobs

 

Expand
titleREPORT_CUSTOM_JOB_APPS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
JOB_NAMENOT NULLVARCHAR corresponds to INVENTORY_JOBS.NAME
APP_NAMENOT NULLVARCHAR corresponds REPORT_CUSTOM_APPS.NAME

Assigning Mandators to Jobs

Mandator Master Data

 

Expand
titleREPORT_CUSTOM_MANDATORS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
NAMENOT NULLVARCHAR mandator name
TITLENULLVARCHAR mandator title

Mandator Joins to Jobs

 

Expand
titleREPORT_CUSTOM_JOB_MANDATORS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
JOB_CHAINNOT NULLVARCHARForeign Keyreferences REPORT_JOBS.ID
MANDATOR_IDNOT NULLNUMERICForeign Keyreferences REPORT_MANDATOR.ID

...

  • manually or by task congestion

additional values provided by the JobScheduler Reporting Interface include

  • file_trigger: job start due to an incoming file
MAPPED_CAUSENOT NULLVARCHAR individual mapping of start cause
CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification

Standard Procedures

  • For most DBMS it is recommended to use views or procedures in order to speed up queries by pre-compiled statements.
  • The following procedures implement the use of the above custom standard tables for reporting results that are aggregated per application and mandator.
  • SQL Scripts

Report about Installed Objects

  • The standard procedure is improved to map installed objects to applications and mandators.

...

  • Report about jobs, job chains and orders as collected from disk.

 

Expand
titleREPORT_CUSTOM_INSTALLED_OBJECTS
CREATE OR REPLACE FUNCTION REPORT_CUSTOM_INSTALLED_OBJECTS(start_date DATE, end_date DATE) RETURNS TABLE (
"ID" BIGINT,
"SCHEDULER_ID" VARCHAR(100),
"HOSTNAME" VARCHAR(255),
"JOB_CHAIN" VARCHAR(255),
"JOB_NAME" VARCHAR(255),
"JOB_BASENAME" VARCHAR(100),
"JOB_CHAIN_BASENAME" VARCHAR(100),
"JOB_TITLE" VARCHAR(255),
"JOB_CHAIN_TITLE" VARCHAR(255),
"CAUSE" VARCHAR(100),
"IS_ACTIVE_CALENDAR" INT,
"FILE_CREATED" DATETIMESTAMP,
"FILE_MODIFIED" DATE,
"MANDATOR_NAME" VARCHAR(100),
"APPLICATION_NAME" VARCHAR(100)
)

Report about Executions

...

TIMESTAMP
)

Report about Execution Summary

  • Report about executions of jobs and job chains.

 

Expand
titleREPORT_CUSTOM_EXECUTION_SUMMARY
CREATE OR REPLACE FUNCTION REPORT_CUSTOM_EXECUTION_SUMMARY(start_date DATE, end_date DATE) RETURNS TABLE ( 
"ID" BIGINT,
"SCHEDULER_ID" VARCHAR(100),
"HOSTNAME" VARCHAR(255),
"JOB_CHAIN" VARCHAR(255),
"JOB_NAME" VARCHAR(255),
"JOB_BASENAME" VARCHAR(100),
"JOB_CHAIN_BASENAME" VARCHAR(100),
"JOB_TITLE" VARCHAR(255),
"JOB_CHAIN_TITLE" VARCHAR(255),
"CAUSE" VARCHAR(100),
"IS_ACTIVE_CALENDAR" INT,
"START_TIME" TIMESTAMP,
"END_TIME" VARCHAR(100),
"IS_ACTIVE_CALENDAR" TIMESTAMPINT,
"START_DATETIME" DATETIMESTAMP,
"END_DATETIME" DATETIMESTAMP,
"MIN_START_DATE" DATE,
"MAX_START_DATE" DATE,
"MANDATOREND_NAMEDATE" VARCHAR(100),
"APPLICATION_NAME" VARCHAR(100)DATE
)