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
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
  • orderstatus
NAME
colourRed
titleTODO
NAMENOT NULLNOT NULLVARCHARVARCHAR 

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

ORDER_IDNOT NULLVARCHAR 

order identification (unique per job chain)

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

TITLEBASENAMENOT NULLVARCHAR order title

IS_RUNTIME_DEFINED

 

NOT 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

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

 

order base name

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

order identification (unique per job chain)

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

JOB_CHAIN_NAMENOT NULLVARCHARForeign 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 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_TRIGGERS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 

SCHEDULER_ID

NOT NULL

VARCHAR

 

corresponds to SCHEDULER_ORDER_HISTORY.SCHEDULER_ID

HISTORY_IDNOT NULLNUMERIC
Expand
titleREPORT_TRIGGERS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 

SCHEDULER_ID

NOT NULL

VARCHAR

 

corresponds to SCHEDULER_ORDER_HISTORY.SCHEDULER_ID

HISTORY_IDNOT NULLNUMERIC 

corresponds to SCHEDULER_ORDER_HISTORY.HISTORY_ID

NAMENOT NULLVARCHAR 

corresponds to SCHEDULER_ORDER_HISTORY.ORDER_ID

TITLENULLVARCHAR 

order title

corresponds to INVENTORY_JOB_CHAIN_ORDERS.TITLE

PARENT_NAMENOT NULLVARCHAR 

corresponds to SCHEDULER_ORDER_HISTORY.JOBHISTORY_CHAINID

PARENT_BASENAMENAMENOT NULLVARCHAR job chain base name

corresponds to SCHEDULER_ORDER_HISTORY.ORDER_ID

PARENT_TITLENULLVARCHAR 

order title

corresponds to INVENTORY_JOB_CHAIN_CHAINSORDERS.TITLE

STARTPARENT_TIMENAMENOT NULLDATETIMEVARCHAR 

corresponds to SCHEDULER_ORDER_HISTORY.START_TIMEJOB_CHAIN

PARENT_BASENAMENULLVARCHAR job chain base name
PARENT_TITLEEND_TIMENULLDATETIMEVARCHAR 

corresponds to SCHEDULERINVENTORY_ORDERJOB_HISTORYCHAINS.ENDTITLE

START_TIMESYNC_COMPLETEDNOT NULLNUMERICDATETIME 

corresponds to SCHEDULER_ORDER_HISTORY.START_TIME

END_TIMENULLDATETIME 

corresponds to SCHEDULER_ORDER_HISTORY.END_TIME

SYNC_COMPLETEDNOT NULLNUMERIC 

for use by the JobScheduler Reporting Interface jobs only:
specifies if a synchronization has been configured and has been completed successfully:

  • 1: yes
  • 0: no
RESULTS_COMPLETEDNOT NULLNUMERIC 

for use by the JobScheduler Reporting Interface jobs only:
specifies if all job nodes have been completed successfully:

  • 1: yes
  • 0: no
CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification
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

...

  • 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 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"
    "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"
    "CAUSE"                 VARCHAR(100),
"IS_ACTIVE_CALENDAR" INT,
"FILE_CREATED"
DATE
          TIMESTAMP,
"FILE_MODIFIED"
DATE,
"MANDATOR_NAME" VARCHAR(100),
"APPLICATION_NAME" VARCHAR(100)
)

Report about Executions

Custom Report on Execution Summary

         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"
    "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(255),
"CAUSE" VARCHAR(100),
"IS_ACTIVE_CALENDAR" INT,
"START_TIME" TIMESTAMP,
"END_TIME"
TIMESTAMP,
"START_DATE" DATE,
"END_DATE" DATE,
"MIN_START_DATE" DATE,
"MAX_START_DATE" DATE,
"MANDATOR_NAME" VARCHAR(100),
"APPLICATION_NAME" VARCHAR(100)
              TIMESTAMP,
"START_DATE" DATE,
"END_DATE" DATE
)