Dynamic query optimization
First Claim
Patent Images
1. A system comprising:
- one or more processors;
a memory coupled to at least the one processor; and
,a manager residing in the memory and executable by the at least one processor, wherein said manager;
(a) evaluates a runtime instance of a query during execution of said runtime instance for data relative to performance of said runtime instance with respect to a predefined query time boundary, said data relative to performance of said runtime instance with respect to a predefined query time boundary being derived from execution of said runtime instance, said predefined query time boundary limiting a length of time in which said runtime instance of said query is allowed to complete runtime execution;
(b) dynamically predicts, during execution of said runtime instance and using said data relative to performance of said runtime instance, a projected amount of computer resources required to complete execution of said runtime instance of said query within said predefined query time boundary; and
(c) uses the results of said dynamically predicting step to dynamically allocate an amount of computer resources to complete execution of said runtime instance of said query, said amount being an amount required to make the total amount of said computer resources allocated to complete execution of said runtime instance of said query equal to said projected amount of computer resources required to complete execution of said runtime instance of said query within said predefined query time boundary dynamically predicted by said dynamically predicting step.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and computer program products for dynamically adjusting computer resources, as appropriate, in response to predictions of query runtimes as well as for rendering costs of the computer resources actually utilized, which costs are consistent with consumer demands.
-
Citations
18 Claims
-
1. A system comprising:
-
one or more processors; a memory coupled to at least the one processor; and
,a manager residing in the memory and executable by the at least one processor, wherein said manager; (a) evaluates a runtime instance of a query during execution of said runtime instance for data relative to performance of said runtime instance with respect to a predefined query time boundary, said data relative to performance of said runtime instance with respect to a predefined query time boundary being derived from execution of said runtime instance, said predefined query time boundary limiting a length of time in which said runtime instance of said query is allowed to complete runtime execution; (b) dynamically predicts, during execution of said runtime instance and using said data relative to performance of said runtime instance, a projected amount of computer resources required to complete execution of said runtime instance of said query within said predefined query time boundary; and (c) uses the results of said dynamically predicting step to dynamically allocate an amount of computer resources to complete execution of said runtime instance of said query, said amount being an amount required to make the total amount of said computer resources allocated to complete execution of said runtime instance of said query equal to said projected amount of computer resources required to complete execution of said runtime instance of said query within said predefined query time boundary dynamically predicted by said dynamically predicting step. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-implemented method in a system having at least one processor;
- a memory coupled to the at least one processor, and a manager residing in the memory and being executable, the method comprising;
evaluating a runtime instance of a query during execution of said runtime instance for data relative to performance of said runtime instance with respect to a predefined query time boundary, said data relative to performance of said runtime instance with respect to a predefined query time boundary being derived from execution of said runtime instance, said predefined query time boundary limiting a length of time in which said runtime instance of said query is allowed to complete runtime execution; dynamically predicting, during execution of said runtime instance and using said data relative to performance of said runtime instance, a projected amount of computer resources required to complete execution of said runtime instance of said query within said predefined query time boundary; and responsive to said dynamically predicting step, dynamically allocating an amount of computer resources to complete execution of said runtime instance of said query, said amount being an amount required to make the total amount of said computer resources allocated to complete execution of said runtime instance of said query equal to said projected amount of computer resources required to complete execution of said runtime instance of said query within the predefined query time boundary dynamically predicted by said dynamically predicting step. - View Dependent Claims (9, 10, 11, 12, 13, 14)
- a memory coupled to the at least one processor, and a manager residing in the memory and being executable, the method comprising;
-
15. A computer program product for implementing query optimization in a computer system including a processor, said computer program product including instructions recorded on computer-readable recording media which when executed comprise the steps of:
-
evaluating a runtime instance of a query during execution of said runtime instance for data relative to performance of said runtime instance with respect to a predefined query time boundary, said data relative to performance of said runtime instance with respect to a predefined query time boundary being derived from execution of said runtime instance, said predefined query time boundary limiting a length of time in which said runtime instance of said query is allowed to complete runtime execution; dynamically predicting, during execution of said runtime instance and using said data relative to performance of said runtime instance, a projected amount of computer resources required to complete execution of said runtime instance of said query within said predefined query time boundary; and responsive to said dynamically predicting step, dynamically allocating an amount of computer resources to complete execution of said runtime instance of said query, said amount being an amount required to make the total amount of said computer resources allocated to complete execution of said runtime instance of said query equal to said projected amount of computer resources required to complete execution of said runtime instance of said query within the predefined query time boundary dynamically predicted by said dynamically predicting step. - View Dependent Claims (16, 17, 18)
-
Specification