System for scheduling and monitoring computer processes
First Claim
1. A job scheduling device for scheduling jobs to run on at least two nodes of at least one computing platform, comprising:
- at least two local job repositories, each local job repository installed on a separate one of the at least two nodes and each local job repository configured to maintain job information on each job submitted to the node where the local job repository is installed, the job information including job parameters needed to execute each job; and
at least two enterprise scheduling agents, each enterprise scheduling agent installed on a separate one of the at least two nodes and each enterprise scheduling agent configured to;
access the job information maintained by the local job repository;
schedule for execution each job submitted to the node where the local job repository is installed;
determine when to execute each job submitted to the node where the local job repository is installed; and
launch execution of each job submitted to the node based on the determination;
a presentation system configured to accept and validate parameters identifying at least one job to be submitted for execution on at least one of the nodes; and
a job scheduler configured to allocate at least one job based on the parameters to at least one of the nodes and to submit the allocated jobs to the at least one of the nodes;
wherein the job scheduler is communicatively coupled to the at least two nodes by a network.
4 Assignments
0 Petitions
Accused Products
Abstract
A job scheduling device providing a consistent set of application programming interfaces (APIs) compiled and linked into an individual or suite of programs to provide scheduling services on a single computer or across multiple computing platforms, includes a GUI API for retrieving and validated job parameters, a job scheduling API for allocating jobs based on the job parameters, and an enterprise scheduling agent hosted on one or more nodes of the computer platforms. An enterprise communication agent sends messages containing jobs from a computer executing a program utilizing the job scheduling device to the enterprise scheduling agent on a selected node where the job is to execute. Then, the enterprise scheduling agent retrieves job parameters and launches the job on the selected node. The enterprise scheduling agent maintains a local job repository containing job information for each job run on its corresponding node and sends messages to a job data management API to maintain a central job repository containing information on jobs executed on all nodes.
288 Citations
50 Claims
-
1. A job scheduling device for scheduling jobs to run on at least two nodes of at least one computing platform, comprising:
-
at least two local job repositories, each local job repository installed on a separate one of the at least two nodes and each local job repository configured to maintain job information on each job submitted to the node where the local job repository is installed, the job information including job parameters needed to execute each job; and at least two enterprise scheduling agents, each enterprise scheduling agent installed on a separate one of the at least two nodes and each enterprise scheduling agent configured to; access the job information maintained by the local job repository; schedule for execution each job submitted to the node where the local job repository is installed; determine when to execute each job submitted to the node where the local job repository is installed; and launch execution of each job submitted to the node based on the determination; a presentation system configured to accept and validate parameters identifying at least one job to be submitted for execution on at least one of the nodes; and a job scheduler configured to allocate at least one job based on the parameters to at least one of the nodes and to submit the allocated jobs to the at least one of the nodes; wherein the job scheduler is communicatively coupled to the at least two nodes by a network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A method of scheduling jobs to run on at least two nodes of at least one computing platform, comprising:
-
determining, at a first location, at least one job to be scheduled based on job parameters for the at least one job; submitting the at least one job to the at least two nodes, each node having a local job repository and an enterprise scheduling agent installed thereon; maintaining, at each of the local job repositories, the at least one job submitted to the node where the local job repository is installed; using each scheduling agent to schedule for execution each job submitted to the node where the local job repository is installed; determining, at each of the enterprise scheduling agents, when to execute the at least one job submitted to the node where the enterprise scheduling agent is installed; and based on the determinations, executing the at least one job on the at least two nodes under management of the enterprise scheduling agents; wherein the first location is communicatively coupled to the at least two nodes by a network. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. Software for use in scheduling jobs to run on at least two nodes of at least one computing platform, the software embodied in computer readable media that, when executed using one or more computers, is operable to:
-
determine, at a first location, at least one job to be scheduled based on job parameters for the at least one job; submit the at least one job to the at least two nodes, each node having a local job repository and an enterprise scheduling agent installed thereon; maintain, at each of the local job repositories, the at least one job submitted to the node where the local job repository is installed; schedule for execution each job submitted to the node where the local job repository is installed; determine, at each of the enterprise scheduling agents, when to execute the at least one job submitted to the node where the enterprise scheduling agent is installed; and based on the determinations, execute the at least one job on the at least two nodes under management of the enterprise scheduling agents; wherein the first location is communicatively coupled to the at least two nodes by a network.
-
-
47. A job scheduling device for scheduling jobs to run on at least two nodes of at least one computing platform, comprising:
-
installed on each of the at least two nodes; first means for maintaining job information on each job submitted to the node where the first means is installed, the job information including job parameters needed to execute the job; second means for; accessing the job information maintained by the first means; scheduling for execution each job submitted to the node where the first means is installed; determining when to execute the jobs submitted to the node where the first means is installed; and launching execution of each job submitted to the node based on the determination; third means for accepting and validating parameters identifying at least one job to be submitted for execution on at least one of the nodes; and fourth means for allocating at least one job based on the parameters to at least one of the nodes and for submitting the allocated jobs to the at least one of the nodes; wherein the first means is communicatively coupled to the at least two nodes by a network. - View Dependent Claims (48)
-
-
49. A job scheduling system for scheduling jobs to run on at least two nodes of at least one computing platform, comprising:
-
at least two local job repositories, each local job repository installed on a separate one of the at least two nodes and each local job repository configured to maintain job information on each job submitted to the node where the local job repository is installed, the job information including job parameters needed to execute each job; and at least two enterprise scheduling agents, each enterprise scheduling agent installed on a separate one of the at least two nodes and each enterprise scheduling agent configured to; access the job information maintained by the local job repository; schedule for execution each job submitted to the node where the local job repository is installed; determine when to execute the jobs submitted to the node where the local job repository is installed; and launch execution of each job submitted to the node based on the determination; a presentation system configured to accept and validate parameters identifying at least one job to be submitted for execution on at least one of the nodes; and a job scheduler configured to allocate at least one job based on the parameters to at least one of the nodes and to submit the allocated jobs to the at least one of the nodes so that the at least one allocated job can be executed by the enterprise scheduling agent installed on the node to which the job was allocated and submitted; wherein the job scheduler is communicatively coupled to the at least two nodes by a network.
-
-
50. A job scheduling method for scheduling jobs to run on at least two nodes of at least one computing platform, comprising:
-
installing at least two local job repositories, each local job repository installed on a separate one of the at least two nodes, each local job repository configured to maintain job information on each job submitted to the node where the local job repository is installed, the job information including job parameters needed to execute each job; installing at least two enterprise scheduling agents, each enterprise scheduling agent installed on a separate one of the at least two nodes, each enterprise scheduling agent configured to; access the job information maintained by the local job repository; schedule for execution each job submitted to the node where the local job repository is installed; determine when to execute the each job submitted to the node where the local job repository is installed; and launch execution of each job submitted to the node based on the determination; at a first location; accepting and validating parameters identifying at least one job to be submitted for execution on at least one of the nodes; and allocating at least one job based on the parameters to at least one of the nodes; submitting the at least one allocated job to the at least one of the nodes; and executing the at least one allocated job on the at least one of the nodes to which the job was allocated and submitted; wherein the first location is communicatively coupled to the at least two nodes by a network.
-
Specification