Versions Compared

Key

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

Table of Contents

Scope

Inventory Tables

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_INSTANCES
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
SCHEDULER_IDNOT NULLVARCHAR corresponds to the SCHEDULER_ID that is specified during installation of the JobScheduler instance
HOSTNAME
Expand
titleINVENTORY_INSTANCES
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary key 
SCHEDULER_IDNOT NULLVARCHAR  
HOSTNAMENOT NULLVARCHAR  
PORTNOT NULLNUMERIC 

Status
colourRed
titleto be discussed

TCP, UDP Port extra?

LIVE_DIRECTORYNOT NULLVARCHAR  host on which the JobScheduler instance has been installed
PORTCREATEDNOT NULLDATETIMENUMERIC  

TCP port that the JobScheduler instance is listening to. Should not TCP port be specified then the UDP port is provided.

LIVE_DIRECTORYMODIFIEDNOT NULLDATETIMEVARCHAR  path of the live directory
CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification
Expand
titleINVENTORY_FILES
FieldNullableData type
Expand
titleINVENTORY_FILES
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary keyKey 
INSTANCE_IDNOT NULLNUMERICForeign keyKey

references INVENTORY_INSTANCES.ID

FILE_TYPENOT NULLVARCHAR 

file types in use:

  • job
  • job_chain
  • order

Not treatedfile types not used:

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

Path path from live directory

e.g. test/my_job.job.xml

FILE_BASENAMENOT NULLVARCHAR 

file base name with extension

e.g. my

File basename

my_job.job.xml

FILE_DIRECTORYNOT NULLVARCHAR 

Path path calculated from the live directory

e.g. test

FILE_CREATEDNULLDATETIME UTC time timestamp of the creation date of the file
FILE_MODIFIEDNULLDATETIME UTC time timestamp of the last change modification date of the file
FILE_LOCAL_CREATEDNULLDATETIME Local time local timestamp of the creation date of the file
FILE_LOCAL_MODIFIEDNULLDATETIME Local time local timestamp of the last change modification date of the file
CREATEDNOT NULLDATETIME  timestamp of record creation
MODIFIEDNOT NULLDATETIME  timestamp of record modification
Expand
titleINVENTORY_JOBS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary keyKey 
INSTANCE_IDNOT NULLNUMERICForeign keyKey

references INVENTORY_INSTANCES.ID

for easy cleanupused for simplified clean-up

FILE_IDNOT NULLNUMERICForeign keyKeyreferences INVENTORY_FILES.ID
NAMENOT NULLVARCHAR 

Job job name

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

BASENAMENOT NULLVARCHAR 

Job job base name

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

TITLENULLVARCHAR  job title

IS_ORDER_JOB

NOT NULLNUMERIC 

specifies if this job is part of a job chain:

  • 1: yes
  • 0: no

 

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
Expand
titleINVENTORY_JOB_CHAINS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary keyKey 
INSTANCE_IDNOT NULLNUMERICForeign keyKey

references INVENTORY_INSTANCES.ID

for easy cleanupused for simplified clean-up
FILE_IDNOT NULLNUMERICForeign keyKeyreferences INVENTORY_FILES.ID
START_CAUSENOT NULLVARCHAR 

the following start causes are available:

  • file_trigger
  • order
  • ...
NAMENOT NULLVARCHAR 

Job job chain name

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

BASENAMENOT NULLVARCHAR 

Job 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 keyKey 
INSTANCE_IDNOT NULLNUMERICForeign keyKey

references INVENTORY_INSTANCES.ID

for easy cleanupused for simplified clean-up
JOB_CHAIN_IDNOT NULLNUMERICForeign keyKeyreferences INVENTORY_JOB_CHAINS.ID
NAMENOT NULLVARCHAR 

job node name:

  • file_order_source
  • job_chain_node

Status
colourRed
titleto be discussed

Eventuell END_NODE ...

ORDERINGNOT NULLNUMERIC Node order
  • file_order_sink
ORDERINGNOT NULLNUMERIC ordering of node in job chain

STATE

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
JOBJOBNULLVARCHAR 

job name as specified in the job node configuration

e.g. ../my_job

JOB_NAMENOT NULLVARCHARForeign keyKey

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 keyKey 
INSTANCE_IDNOT NULLNUMERICForeign keyKey

referencesINVENTORY_INSTANCES.ID

for easy cleanupused for simplified clean-up
FILE_IDNOT NULLNUMERICForeign keyKeyreferences INVENTORY_FILES.ID
JOB_CHAIN_NAMENOT NULLVARCHARForeign key 

order name

INVENTORY_JOB_CHAINS.NAME

e.g.

Order name

test/my_jobchain

ORDER_IDNOT NULLVARCHAR 

,my_order for a given order (path test/my_jobchain,my_order.order.xml )

TITLEBASENAMENOT NULLVARCHAR  

IS_RUNTIME_DEFINED

 

NOT NULLNUMERIC 
  • yes
  • no 
CREATEDNOT NULLDATETIME  
MODIFIEDNOT NULLDATETIME  

Fact Tables

Status
colourRed
titleto be discussed

Eine neue extra Tabelle REPORT_TRIGGER_CONFIGURATIONS  für JobChains - mit den PARENT_xxx Sachen???

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

Expand
titleREPORT_TRIGGERS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary key 

SCHEDULER_ID

NOT NULL

VARCHAR

 

SCHEDULER_ORDER_HISTORY.SCHEDULER_ID

HISTORY_IDNOT NULLNUMERIC 

SCHEDULER_ORDER_HISTORY.HISTORY_ID

NAMENOT NULLVARCHAR 

SCHEDULER_ORDER_HISTORY.ORDER_ID

TITLENULLVARCHAR 

Title

INVENTORY_JOB_CHAIN_ORDERS.TITLE

PARENT_NAMENOT NULL

VARCHAR

 

corresponds to SCHEDULER_ORDER_HISTORY.JOBSCHEDULER_CHAINID

PARENTHISTORY_BASENAMEIDNOT NULLVARCHARNUMERIC Job chain basename

corresponds to SCHEDULER_ORDER_HISTORY.HISTORY_ID

NAMENOT NULLVARCHAR 

corresponds to SCHEDULER_ORDER_HISTORY.ORDER_ID

PARENT_TITLENULLVARCHAR 

order title

corresponds to INVENTORY_JOB_CHAINSCHAIN_ORDERS.TITLE

STARTPARENT_TIMENAMENOT NULLDATETIMEVARCHAR 

corresponds to SCHEDULER_ORDER_HISTORY.START_TIMEJOB_CHAIN

PARENT_BASENAMENULLVARCHAR job chain base name
PARENT_TITLENULLVARCHAR 

corresponds to INVENTORY_JOB_CHAINS.TITLE

STARTEND_TIMENOT NULLDATETIME 

corresponds to SCHEDULER_ORDER_HISTORY.ENDSTART_TIME

SYNCEND_COMPLETEDTIMENOT NULLNUMERICDATETIME 

corresponds to SCHEDULER_ORDER_HISTORY.END_TIME

SYNC
  • 0
  • 1
RESULTS_COMPLETEDNOT NULLNUMERIC 
  • 0
  • 1
CREATEDNOT NULLDATETIME  
MODIFIEDNOT NULLDATETIME  

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 keyKey 
SCHEDULER_ID NOT NULLNUMERICForeign key corresponds to SCHEDULER_ORDER_HISTORY.SCHEDULER_ID
HISTORY_IDNOT NULLNUMERICForeign key corresponds to SCHEDULER_ORDER_HISTORY.HISTORY_ID
TRIGGER_IDNOT NULLNUMERICForeign keyKeyreferences REPORT_TRIGGERS.ID
STEPNOT NULLNUMERIC 

Sequence of steps

corresponds to SCHEDULER_ORDER_STEP_HISTORY.STEP

NAMENOT NULLVARCHAR 

corresponds to SCHEDULER_HISTORY.JOB_NAME

e.g. test/my_job

BASENAMENOT NULLVARCHAR 

Job 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
ERRORERRORNOT NULLNUMERIC 

specifies if an error occurred:

  • 0: no error
  • 1: error
ERROR_CODENULLVARCHAR  JobScheduler error code
ERROR_TEXTNULLVARCHAR  error message
IS_RUNTIME_DEFINEDCREATEDNOT NULLDATETIMENUMERIC 

specifies if a start time has been configured:

  • 1: yes
  • 0: no
CREATED MODIFIEDNOT NULLDATETIME  

Custom Tables

timestamp of record creation
MODIFIED
Expand
titleREPORT_APPS
ID 
FieldNullableData typeConstraintDescription
NOT NULLNUMERICDATETIMEPrimary key 
NAMENOT NULLVARCHAR  
TITLENULLVARCHAR
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_TRIGGER_JOBSRESULTS
key
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
NAMESCHEDULER_IDNOT NULLVARCHAR  
TITLENULLVARCHAR  
Expand
titleREPORT_MANDATORS
corresponds to SCHEDULER_ORDER_HISTORY.SCHEDULER_ID
HISTORY_IDNOT NULLNUMERIC corresponds to SCHEDULER_ORDER_HISTORY.HISTORY_ID
TRIGGER_
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary key Foreign Key

references REPORT_TRIGGERS.ID

START_CAUSENAMENOT NULLVARCHAR  
TITLENULLVARCHAR  
Expand
titleREPORT_MAP_JOB_APPS
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary key 
JOB_IDNOT NULLVARCHARForeign key REPORT_JOBS.ID
APPLICATION_IDNOT NULLNUMERICForeign keyREPORT_APPLICATIONS.ID

references SCHEDULER_HISTORY.CAUSE of the first step

for the value order check the start cause given in INVENTORY_JOB_CHAINS.START_CAUSE

STEPSNOT NULLNUMERIC 

specifies the number of job steps that have been executed

ERRORNOT NULLNUMERIC 

specifies if an error occurred

  • 0: no error
  • 1: error
ERROR_CODENULLVARCHAR JobScheduler error code
ERROR_TEXTNULLVARCHAR error message
CREATEDNOT NULLDATETIME timestamp of record creation
MODIFIEDNOT NULLDATETIME timestamp of record modification
Expand
titleREPORT_EXECUTION_DATES
Expand
titleREPORT_MAP_JOB_MANDATORS
key
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
JOBSCHEDULER_CHAINIDNOT NULLVARCHARForeign keyREPORT_JOBS.ID corresponds to SCHEDULER_ORDER_HISTORY.SCHEDULER_ID
HISTORYMANDATOR_IDNOT NULLNUMERICForeign keyREPORT_MANDATOR.ID
Expand
titleREPORT_MAP_CAUSES
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary key 
CAUSENOT NULLVARCHAR  
MAPPED_CAUSENOT NULLVARCHAR  

Aggregation Tables

 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_WEEK
Expand
titleREPORT_TRIGGER_RESULTS
ERROR
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary key 
TRIGGER_IDNOT NULLNUMERICForeign key

Reference to the

  • REPORT_TRIGGERS.ID
START_CAUSENOT NULLVARCHAR 

SCHEDULER_HISTORY.CAUSE of the 1.st step

if equals "order" check in the

INVENTORY_JOB_CHAINS.START_CAUSE

STEPSNOT NULLNUMERIC 

Number of steps

  • SCHEDULER_ORDER_STEP_HISTORY.STEP of the last step or
  • 1 for not order jobs

calendar week

e.g. 52

END_MONTHNOT NULLNUMERIC 
  • 0
  • 1
ERROR_CODENULLVARCHAR  
ERROR_TEXTNULLVARCHAR  

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  
Expand
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_CAUSEStitleREPORT_EXECUTION_DATES
key 
FieldNullableData typeConstraintDescription
IDNOT NULLNUMERICPrimary Key 
REFERENCE_IDCAUSENOT NULLNUMERICForeign key

Reference to the

  • REPORT_TRIGGERS.ID or
  • REPORT_EXECUTIONS.ID
REFERENCE_TYPENOT NULLNUMERIC 
  • 0 - REPORT_TRIGGERS
  • 1 - REPORT_EXECUTIONS
START_DAYNOT NULLNUMERIC 

Calendar day

1

START_WEEKNOT NULLNUMERIC 

Calendar week

52

START_MONTHNOT NULLNUMERIC 

Calendar month

12

START_QUARTERNOT NULLNUMERIC 

Quarter

1

START_YEARNOT NULLNUMERIC 

Year

2015

END_DAYNOT NULLNUMERIC 

Calendar day

1

END_WEEKNOT NULLNUMERIC 

Calendar week

52

END_MONTHNOT NULLNUMERIC 

Calendar month

12

END_QUARTERNOT NULLNUMERIC 

Quarter

1

END_YEARNOT NULLNUMERIC 

Calendar year

2015

CREATEDNOT NULLDATETIME  
MODIFIEDNOT NULLDATETIME 
VARCHAR 

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
)