Workload manager managing a workload of an enterprise data warehouse
First Claim
1. A workload manager for managing a workload in a database, comprising:
- an admission controller to divide the workload into a plurality of batches, with each batch having at least one workload process to be performed in the database, and each batch having a memory requirement based on available memory for processing the workload;
a scheduler, executed by a hardware processor, to assign a unique priority to each workload process in each of the plurality of batches, the unique priorities to provide an order in which each workload process is executed in the database, wherein each assigned unique priority is different from any other of the assigned unique priorities; and
an execution manager to execute each workload process in each of the plurality of batches in accordance with the unique priority assigned to each workload process.
12 Assignments
0 Petitions
Accused Products
Abstract
Described herein is a workload manager for managing a workload in a database that includes: an admission controller operating to divide the workload into a plurality of batches, with each batch having at least one workload process to be performed in the database, and each batch having a memory requirement based on the available memory for processing workloads in the database; a scheduler operating to assign a unique priority to each of the at least one workload process in each of the plurality of batches, the unique priority provides an order in which each workload process is executed in the database; and an execution manager operating to execute the at least one workload process in each of the plurality of batches in accordance with the unique priority assigned to each workload process.
17 Citations
20 Claims
-
1. A workload manager for managing a workload in a database, comprising:
-
an admission controller to divide the workload into a plurality of batches, with each batch having at least one workload process to be performed in the database, and each batch having a memory requirement based on available memory for processing the workload; a scheduler, executed by a hardware processor, to assign a unique priority to each workload process in each of the plurality of batches, the unique priorities to provide an order in which each workload process is executed in the database, wherein each assigned unique priority is different from any other of the assigned unique priorities; and an execution manager to execute each workload process in each of the plurality of batches in accordance with the unique priority assigned to each workload process. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for managing a workload of queries in a database, comprising:
-
dividing the workload of queries into a plurality of batches of queries such that each batch has a memory requirement of no more than an average available memory for processing workloads in the database; assigning a unique priority to each of the queries, the unique priorities providing an order in which each query is executed in the database, wherein each assigned unique priority is different from any other of the assigned unique priorities; and executing each of the plurality of batches by; a) executing at least one query in one batch based on the unique priority assigned to the at least one query in the one batch; b) determining whether the execution of the one batch is done; and c) executing another batch of the plurality of batches once the execution of the selected batch is done. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 20)
-
-
17. A non-transitory computer readable medium on which is encoded code that when executed by a processing unit, the code is to:
-
divide the workload of queries into a plurality of batches of queries such that each batch has a memory requirement of no more than an average available memory for processing workloads in the database; assign a unique priority to each of the queries in each of the plurality of batches, the unique priorities to provide an order in which each workload process is executed in the database, wherein each assigned unique priority is different from any other of the assigned unique priorities; and execute each of the plurality of batches, wherein to execute each of the plurality of batches, the code is to; a) execute one of the plurality of batches based on the unique priority assigned to each of the queries in the one batch; b) determine whether the execution of the one batch is done; and c) execute another one of the plurality of batches once the execution of the one batch is done. - View Dependent Claims (18, 19)
-
Specification