Batch scheduling
First Claim
1. A method to schedule execution of a plurality of batch jobs by a computer system, the method comprising:
- reading one or more constraints that constrain the execution of the plurality of batch jobs by the computer system and a current load on the computer system;
grouping the plurality of batch jobs into at least one run frequency that includes at least one batch job;
setting the at least one run frequency to a first run frequency;
computing a load generated by each batch job in the first run frequency on the computer system based on each batch job'"'"'s start time, the computing including multiplying by a factor that transforms an average of the load in a given time period of operation to a load expected during a busiest of such given time period of operation to protect against a worst case in which a number of batch operations in such given time period is higher than an average number of batch operations expected during the busiest of such given time period;
determining an optimized start time for each batch job in the first run frequency that meets the one or more constraints and that distributes each batch job'"'"'s load on the computer system using each batch job'"'"'s computed load and the current load for the first run frequency, the one or more constraints providing that the optimized start time for each batch job meets requirements of a service level agreement of the computer system and that a number of operations per time period required by the batch jobs in the first run frequency does not exceed a maximum number of operations per time period capability of the computer system;
regularizing at least one batch job with an irregular run frequency from the plurality of batch jobs to a batch job with a regular frequency; and
updating the current load on the computer system with loads of each batch job in the first run frequency by setting the at least one run frequency to a second run frequency and computing a load generated by each batch job in the second run frequency on the computer system based on each batch job'"'"'s start time.
1 Assignment
0 Petitions
Accused Products
Abstract
There is provided a method to schedule execution of a plurality of batch jobs by a computer system. The method includes: reading one or more constraints that constrain the execution of the plurality of batch jobs by the computer system and a current load on the computer system; grouping the plurality of batch jobs into at least one run frequency that includes at least one batch job; setting the at least one run frequency to a first run frequency; computing a load generated by each batch job in the first run frequency on the computer system based on each batch job'"'"'s start time; and determining an optimized start time for each batch job in the first run frequency that meets the one or more constraints and that distributes each batch job'"'"'s load on the computer system using each batch job'"'"'s computed load and the current load.
-
Citations
9 Claims
-
1. A method to schedule execution of a plurality of batch jobs by a computer system, the method comprising:
-
reading one or more constraints that constrain the execution of the plurality of batch jobs by the computer system and a current load on the computer system; grouping the plurality of batch jobs into at least one run frequency that includes at least one batch job; setting the at least one run frequency to a first run frequency; computing a load generated by each batch job in the first run frequency on the computer system based on each batch job'"'"'s start time, the computing including multiplying by a factor that transforms an average of the load in a given time period of operation to a load expected during a busiest of such given time period of operation to protect against a worst case in which a number of batch operations in such given time period is higher than an average number of batch operations expected during the busiest of such given time period; determining an optimized start time for each batch job in the first run frequency that meets the one or more constraints and that distributes each batch job'"'"'s load on the computer system using each batch job'"'"'s computed load and the current load for the first run frequency, the one or more constraints providing that the optimized start time for each batch job meets requirements of a service level agreement of the computer system and that a number of operations per time period required by the batch jobs in the first run frequency does not exceed a maximum number of operations per time period capability of the computer system; regularizing at least one batch job with an irregular run frequency from the plurality of batch jobs to a batch job with a regular frequency; and updating the current load on the computer system with loads of each batch job in the first run frequency by setting the at least one run frequency to a second run frequency and computing a load generated by each batch job in the second run frequency on the computer system based on each batch job'"'"'s start time. - View Dependent Claims (2, 3)
-
-
4. A system to schedule execution of a plurality of batch jobs by a third party computer system, the system comprising:
-
an input module adapted to read one or more constraints that constrain the execution of the plurality of batch jobs by the third party computer system and a current load on the third party computer system; a frequency regularization module adapted to group the plurality of batch jobs into at least one run frequency that includes at least one batch job; a load initialization module adapted to compute a load generated by each batch job in a first run frequency on the third party computer system based on each batch job'"'"'s start time, the computing including multiplying by a factor that transforms an average of the load in a given time period of operation to a load expected during a busiest of such given time period of operation to protect against a worst case in which a number of batch operations in such given time period is higher than an average number of batch operations expected during the busiest of such given time period; a start time determination module adapted to determine an optimized start time for each batch job in the first run frequency that meets the one or more constraints and that distributes each batch job'"'"'s load on the third party computer system using each batch job'"'"'s computed load and the current load for the first run frequency, the one or more constraints providing that the optimized start time for each batch job meets requirements of a service level agreement of the third party computer system and that a number of operations per time period required by the batch jobs in the first run frequency does not exceed a maximum number of operations per time period capability of the computer system; a batch job regularizing module adapted to regularize at least one batch job with an irregular run frequency from the plurality of batch jobs to a batch job with a regular frequency; and a load update module adapted to update the current load on the computer system with loads of each batch job in the first run frequency wherein the load update module sets the at least one run frequency to a second run frequency and computes a load generated by each batch job in the second run frequency on the computer system based on each batch job'"'"'s start time. - View Dependent Claims (5, 6)
-
-
7. A non-transitory machine-readable storage medium including a set of instructions to schedule execution of a plurality of batch jobs by a computer system, the instructions, when executed by a processor cause the machine to:
-
read one or more constraints that constrain the execution of the plurality of batch jobs by the computer system and a current load on the computer system; group the plurality of batch jobs into at least one run frequency that includes at least one batch job; set the at least one run frequency to a first run frequency; compute a load generated by each batch job in the first run frequency on the computer system based on each batch job'"'"'s start time, the computing including multiplying by a factor that transforms an average of the load in a given time period of operation to a load expected during a busiest of such given time period of operation to protect against a worst case in which a number of batch operations in such given time period is higher than an average number of batch operations expected during the busiest of such given time period; determine an optimized start time for each batch job in the first run frequency that meets the one or more constraints and that distributes each batch job'"'"'s load on the computer system using each batch job'"'"'s computed load and the current load for the first run frequency, the one or more constraints providing that the optimized start time for each batch job meets requirements of a service level agreement of the computer system and that a number of operations per time period required by the batch jobs in the first run frequency does not exceed a maximum number of operations per time period capability of the computer system; regularize at least one batch job with an irregular run frequency from the plurality of batch jobs to a batch job with a regular frequency; and update the current load on the computer system with loads of each batch job in the first run frequency by setting the at least one run frequency to a second run frequency and computing a load generated by each batch job in the second run frequency on the computer system based on each batch job'"'"'s start time. - View Dependent Claims (8, 9)
-
Specification