IP Library Granted Patent US 8,533,216
Granted Patent B2
US 8,533,216 · App. 11/554,113 · Granted Sep 10, 2013

Database system workload management method and system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,533,216
App. No.
11/554,113
Granted
Sep 10, 2013
Kind
B2
Abstract

An improved workload management system and method for a database system. The improved workload management system evaluates certain workload management rules dynamically at key points during database query execution rather than relying on enforcement prior to query activation. In the case of product join operations, the workload management system evaluates the potential impact on system performance by the product join operation after input tables have been populated, but prior to the execution of the join operation. Delaying workload management enforcement to this point ensures that the sizes of inputs and outputs are reliably known and improves system performance impact estimates at a point early enough to prevent any serious performance degradation from an inefficient product join.

Claims (25)

1. A database system workload management method comprising: providing populated input tables of a database query;

calculating one or more parameters reflective of resource requirements of the query, wherein the resource requirements of the query are based on the populated input tables;

determining whether the one or more of the parameters exceed a respective specified parameter maximum value; and

in the event that the one or more parameters do not exceed the respective maximum value proceeding with execution of the query.

2. A method as claimed in claim 1 , wherein the query involves a product join.

3. A method as claimed in claim 1 , wherein in the event that the one or more parameters exceed the respective maximum value, execution of the query is stopped or delayed.

4. A method as claimed in claim 1 , wherein the one or more parameters are derived from a number of rows of the input tables.

5. A method as claimed in claim 1 , wherein one or more of the input tables is a spool file, in which a number of rows is obtained from a count recorded by the population of the spool file.

6. A method as claimed in claim 1 , wherein one or more of the input tables is a base table.

7. A method as claimed in claim 1 , wherein a number of rows of the input tables is obtained from an optimizer's estimate in an execution plan.

8. A method as claimed in claim 1 , wherein one of the parameters is a cross product of a number of rows of each input table.

9. A method as claimed in claim 1 , wherein one of the parameters is a number of output rows.

10. A method as claimed in claim 9 , wherein the number of output rows is determined by an actual number of input rows.

11. A method as claimed in claim 9 , wherein the number of output rows is an estimate by the optimizer.

12. A method as claimed in claim 1 , wherein In an embodiment, one of the parameters is an output size of a table resulting from the query.

13. A method as claimed in claim 12 , wherein the output size is determined by an actual size of the table resulting from the query.

14. A method as claimed in claim 12 , wherein the output size is an estimate.

15. A method as claimed in claim 1 , wherein the parameter is partly based on an actual size of the input table.

16. A database system for performing a query based on populated input tables comprising:

at least one storage device that stores a database and a source of instructions; and

at least one processor that calculates one or more parameters reflective of resource requirements of the query, wherein the resource requirements of the query are based on the populated input tables and determines whether the one or more of the parameters exceed a respective specified parameter maximum value; and in the event that the one or more parameters do not exceed the respective maximum value the at least one processor is arranged to cause execution of the query to proceed.

17. A database product computer program tangibly embodied on a computer-readable medium comprising instructions for causing a computer processor to:

calculate one or more parameters reflective of resource requirements of a database query, wherein the resource requirements of the query are based on populated input tables of the database query;

determine whether the one or more of the parameters exceed a respective specified parameter maximum value; and

proceed with execution of the query in the event that the one or more parameters do not exceed the respective maximum value.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2008
From: NCR CORPORATION
To: TERADATA US, INC.
Reel/Frame 020666/0438 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2006
From: BURGER, LOUIS; JULIEN, THOMAS; VANDERVORT, FRANK RODERIC
To: NCR CORPORATION
Reel/Frame 018451/0823 →