Category component scheduling allows you to run a small subset of analysis actions automatically at defined times. You can repeat these actions indefinitely, or set them to run a defined number of times (known as cycles).
As well as the Category Backup
action (see Back Up and Restore Category), you can schedule operations for clustering by snapshot, and to create taxonomies from your data.
The full list of actions that can be scheduled is:
ClusterSnapshot
ClusterCluster
ClusterSGDataGen
TaxonomyGenerate
Backup
You can schedule and administer Category jobs from the Category Queue page in the Control section of IDOL Admin.
To set up scheduled commands, you need to add the following section to your Category configuration file:
[AnalysisSchedules] Number=5 [AnalysisSchedule0] ScheduleStartTime=23:00 ScheduleInterval=1 day ScheduleCycles=-1 ScheduleAction=CLUSTERSNAPSHOT DREQuery=finance stock market TargetJobname=myjob [AnalysisSchedule1] ...
In the [AnalysisSchedules]
configuration section, you use the Number
parameter to specify how many actions you are scheduling. You then add an [AnalysisScheduleN]
section for every action being scheduled, replacing N
with the number of the action, starting from zero.
In each section, you specify:
when to run the action: ScheduleStartTime
.
set this parameter to NOW
to run the schedule immediately.
how often to run the action: ScheduleInterval
.
the number of times to run the action: ScheduleCycles
.
use -1 to run it indefinitely.
the action to run: ScheduleAction
.
Some actions have extra action parameters that you must specify for the action to run successfully. From the example schedule earlier, the CLUSTERSNAPSHOT
action needs a TargetJobName
to run correctly. Similarly, some actions have optional parameters, such as DREQuery
in the earlier example.
Simply specify these parameters in the configuration file as ParameterName=ParameterValue
, where:
ParameterName
|
is the name of the action parameter that you want to add. |
ParameterValue
|
is the value of that parameter to use for the schedule. |
Some operations use results from other operations. You can set up dependencies to ensure that such jobs run in the correct order, and that they have the latest results to use.
To create a dependency, set the ScheduleDependencies
parameter for a schedule, and set it to a comma-separated list of schedule numbers (the number in the configuration section name for a job). The action does not run until all jobs in this dependency list are complete.
For example:
[AnalysisSchedule2] ... ScheduleDependencies=0,1
In this example, the job specified by AnalysisSchedule2
does not run until jobs 0 and 1 are complete.
In a practical context, snapshots are required for both cluster extraction and spectrograph generation, so you should set up dependencies accordingly.
If you are experiencing problems with your scheduled actions and want to disable some or all of them temporarily, use the InactiveSchedules
parameter in the [Server]
section. This is a comma-separated list of schedule numbers: specify the ones you want to disable.
To disable all analysis schedules, set InactiveSchedules
to all
.
You can run one or more of your scheduled actions immediately by using the ExecuteSchedule
action. Send this action with the ScheduleID
parameter set to a comma-separated list of schedule jobs, or a range of jobs (for example, 0-3).
IDOL Server copies the specified schedules from the job queue and runs them immediately, but it runs them only once. It still respects dependencies in the schedules.
The action returns an error if the job is not in the queue, usually because it is already running.
All scheduled jobs are added to the job queue on startup. The state of the job queue is saved regularly as an XML file called schedule.xml
in the same directory as the Category executable.
The Backup
action copies this file to preserve the state of the component.
|