Database system having a regulator to provide feedback statistics to an optimizer
AssigneeTeradata US, Inc.
InventorsDouglas P. Brown, Anita Richards, Louis M. Burger, Stephen A. Brobst
Life of this patent
Estimating the term…
Abstract
A database system includes an optimizer to generate resource estimates regarding execution of a request in the database system, and a regulator to monitor execution of a request and to adjust a priority level of the request based on the monitored execution and based on the resource estimates provided by the optimizer. The regulator is executable to further feed back statistics regarding execution of the request to the optimizer to improve accuracy of resource estimates provided by the optimizer.
Claims22
A database system comprising:
- a physical storage device configured to store a database, an optimizer module, and a regulator module;
- at least one physical processor in communication with the storage device,
- wherein the optimizer module is executable by the at least one physical processor to cause the at least one physical processor to generate resource estimates regarding execution of a request in the database system,
- wherein the request is configured to include at least one operation to be performed on the database,
- wherein the request is one of a plurality of requests included in a workload,
- wherein each of the plurality of requests includes a respective priority level,
- wherein the at least one physical processor is configured to set each respective priority level to a respective initial priority level upon receipt of the request,
- wherein a regulator module is executable by the at least one physical processor to cause the at least one physical processor to monitor execution of the request and to adjust the respective priority level from the respective initial priority level of the request during execution of the request,
- wherein adjustment of the respective priority level is based on the monitored execution and based on the resource estimates, and
- wherein the regulator module is further executable by the at least one physical processor to cause the at least one physical processor to feed back run-time statistics for the request or query plan regarding execution of the request be used by the at least one physical processor during execution of the optimizer module to improve accuracy of resource estimates.
A method executed by at least one physical processor in a database system, comprising:
- receiving a request, wherein the request is configured to include at least one operation to be performed on a database of the database system, wherein the request is one of a plurality of requests included in a workload;
- setting a respective priority level of each of the requests to a respective initial priority level;
- generating, using an optimizer executable by the at least one processor, resource estimates for execution of the request;
- regulating execution of the request in the database system using a regulator executable by the at least one processor, wherein regulating execution of the request comprises:
- monitoring execution of the request;
- and
- adjusting the respective priority level of the request from the respective initial priority level during execution of the request based on the monitored execution and based on the resource estimates;
- and
- upon completion of the request, feeding back run-time statistics collected by the regulator subsystem to the optimizer.
A non-transitory computer-readable medium encoded with computer-executable instructions, the computer-executable instructions executable by a processor to cause the processor to:
- receive a request, wherein the request is configured to include at least one operation to be performed on a database in a database system, wherein the request is one of a plurality of requests included in a workload, and wherein each of the plurality of requests includes a respective priority level initially set to a respective initial priority level;
- and
- generate, using an optimizer, resource estimates for execution of the request;
- regulate execution of the request in the database system using a regulator subsystem, regulation of execution of the request further causes the processor to:
- monitor execution of the request;
- and
- adjust the respective priority level of the request from the respective initial priority level during execution of the request, wherein adjustment of the respective priority level is based on the monitored execution and based on the resource estimates;
- and
- upon completion of the request, feed back run-time statistics collected by the regulator subsystem to the optimizer.
Dependencies are inferred from the claim text.