Skip to content

Background Processing in IFS Optimization Framework

Included within the IFS Optimization Framework are a number of background processes.  These include Database Tasks and specific Batch Queues.

Read more about Scheduling Optimization and Machine Learning.

Database Tasks

The following database tasks are included in IFS Cloud to manage the Scheduling Optimization and Machine Learning.

Task Name Description
Send Scheduling Optimization Dataset updates Sends a Full Load or Changes per Scheduling Optimization Dataset. The suggested schedule is based on the related model based on the Process Type.

For Dynamic, Appointment, Distributed or Manual datasets the suggested schedule is every 10 minutes.
For Reactive datasets the suggested schedule is every hour.
For Static or Plan datasets the suggested schedule is daily at 23:59.
For all other datasets the suggested schedule is daily at 23:59.

The first time the database task is executed a Full Load is sent. The subsequent times Changes are sent.

A Full Load is also sent daily. By default this will happen the first time the database task is executed after midnight. The time can also be defined in the field Reload Time Of Day on the Scheduling Optimization Dataset.

Parameters:
Dataset ID - The Dataset ID to process.

The database task is enabled on enabling the corresponding Scheduling Optimization Dataset.

The database task will be processed by the specific Batch Queue for IFS Optimization Framework.
Clean Up Scheduling Optimization and Machine Learning Removes outdated data from tables used by Scheduling Optimization and Machine Learning.

Parameters:
Number of Days - Removes data older than the defined number of days. The default value is 7. The number of days parameter is only used when removing data from certain tables where it may be desirable to keep the records for a defined period of time, e.g. Scheduling Optimization and Machine Learning Logs.
Commit Limit - Issues a commit after the defined number of records removed. The default value is 10000. The commit limit does normally not require to be changed.

The database task is enabled by default. The default schedule cycle is daily at midnight.
Disable Active Datasets Disables Scheduling Optimization Datasets.

Primarily used in development and test environments to prevent the buildup of Scheduling Optimization Datasets that are created for testing.

Parameters:
Dataset ID - The Dataset ID's to disable. Accepts wildcards. The default value is '%' (all datasets).
Package Name - The Package Names to disable. Accepts wildcards. The default value is '%' (all packages).
Scheduling Config ID - The Configuration ID's to disable. Accepts wildcards. The default value is '%' (all configurations).
System Defined - Disable system and/or user defined datasets. Enter 'TRUE' for system defined datasets, 'FALSE' for user defined datasets, or '%' for both. The default value is '%' (both system defined and user defined).

The database task requires to be set up and enabled manually.

It is recommended to set up a specific database task to remove Application Messages from the Message Queue used when sending data from IFS Cloud to IFS PSO.

Task Name Description
Cleanup Application Message Queues Removes Application Messages in the defined queues with the defined states older than the defined period of time.

Parameters:
List of Queues - The list of queues to be deleted. Enter 'OPTIMIZATION_FRAMEWORK_OUT' here.
List of States - The list of states to be deleted. The recommendation is to enter 'Any' for all states.
Days Old - Removes data older than the defined number of days. The default value is 1. The recommendation is to keep the default value. A higher value can be used if it is desirable that the application messages are kept for a longer period of time.
Hours Old - Removes data older than the defined number of hours. The default value is 0. It does not normally need to be changed unless a period of time less than 1 day is desired.
Minutes Old - Removes data older than the defined number of minutes. The default value is 0. It does not normally need to be changed.
Seconds Old - Removes data older than the defined number of seconds. The default value is 0. It does not normally need to be changed.
Commit Count - Issues a commit after the defined number of records removed. The default value is 10000. The commit limit does normally not require to be changed.

The database task requires to be set up and enabled manually. The recommended schedule cycle is hourly (Interval 01:00).

Batch Queue

The batch queue Scheduling Optimization Queue handles the sending of input data to PSO and receiving output data from PSO.

By default both the input data and the output data is handled in the same queue. In some situations it may be desired to separate the input and output handling. An additional batch queue can then be set up manually for handling the output data. The method SCHEDULING_TASK_API.PROCESS_SCHEDULE_ which is handling the output data then needs to be moved to the new queue.

The batch queues used should not have more than one process defined. This is to ensure that messages are processed sequentially and are not interfering with each other.

Read more about Batch Queue Configuration here.

Message Queue

The message queue OPTIMIZATION_FRAMEWORK_OUT handles the sending of input data to PSO using IFS Connect.

Read more about Message Queues here.