Scaling query processing resources for efficient utilization and performance

US11727003B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11727003-B2
Application numberUS-202117547831-A
CountryUS
Kind codeB2
Filing dateDec 10, 2021
Priority dateNov 26, 2021
Publication dateAug 15, 2023
Grant dateAug 15, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Scaling of query processing resources for efficient utilization and performance is implemented for a database service. A query is received via a network endpoint associated with a database managed by a database service. Respective response times predicted for the query using different query processing configurations available to perform the query are determined. Those query processing configurations with response times that exceed a variability threshold determined for the query may be excluded. A remaining query processing configuration may then be selected to perform the query.

First claim

Opening claim text (preview).

What is claimed is: 1. A database service, comprising: one or more computing devices, respectively comprising a processor and a memory, configured to implement a proxy service for the database service, wherein the proxy service is configured to: receive a query via a network endpoint associated with a database, wherein the database is managed by the database service, wherein the database was created in response to a request that specified that the database was to be managed by the database service; determine respective response times predicted for the query using a plurality of query processing configurations available to perform the query at the database service; determine the respective response times for one or more query processing configurations exceed a variability threshold determined for the query; exclude the one or more query processing configurations of the plurality of query processing configurations to determine a remaining one or more query processing configurations; select one of the remaining one or more query processing configurations to perform the query; route the query to the selected query processing configuration to be performed; and return a response to the query received from the selected query processing configuration. 2. The system of claim 1 , wherein to determine the respective response times predicted for the query using a plurality of query processing configurations available to perform the query at the database service, the proxy service is configured to: predict respective execution times of the query using the plurality of query processing configurations; determine respective bootstrap times to prepare the plurality of query processing configurations; determine respective queue times for the query at the plurality of query processing configurations to perform the query; and add the respective execution times, bootstrap times, and queue times to determine the respective response times predicted for the query. 3. The system of claim 1 , wherein the selected one of the remaining one or more query processing configurations to perform the query is not attached to the database, and wherein the proxy service is further configured to request a control plane of the database service to attach the selected one of the remaining one or more query processing configurations to the database in order to be routed the query for performance. 4. The system of claim 3 , wherein the proxy service is further configured to determine that a query processing resource limit for the database is not exceeded by attaching the selected one of the remaining one or more query processing configurations. 5. A method, comprising: receiving a query via a network endpoint associated with a database managed by a database service; determining, by the database service, respective response times predicted for the query using a plurality of query processing configurations available to perform the query at the database service; excluding, by the database service, one or more query processing configurations of the plurality of query processing configurations to determine a remaining one or more query processing configurations responsive to determining the respective response times for the one or more query processing configurations exceed a variability threshold determined for the query; and selecting, by the database service, one of the remaining one or more query processing configurations to perform the query. 6. The method of claim 5 , wherein determining the respective response times predicted for the query using a plurality of query processing configurations available to perform the query at the database service, comprises: predicting respective execution times of the query using the plurality of query processing configurations; determining respective bootstrap times to prepare the plurality of query processing configurations; determining respective queue times for the query at the plurality of query processing configurations to perform the query; and adding the respective execution times, bootstrap times, and queue times to determine the respective response times predicted for the query. 7. The method of claim 6 , wherein predicting respective execution times of the query using the plurality of query processing configurations comprises applying a trained machine learning model that accepts as input a plan to perform the query and a query processing configuration to make the prediction of an execution time for the query processing configuration. 8. The method of claim 5 , further comprising: disabling prediction of response times for subsequent queries responsive to determining that a prediction accuracy for queries fails to satisfy an accuracy criteria. 9. The method of claim 5 , further comprising: disabling prediction of response times for subsequent queries responsive to determining that a prorated variability exceeds a threshold variability target for an execution range of time. 10. The method of claim 5 , wherein the selected one of the remaining one or more query processing configurations to perform the query is already attached to the database. 11. The method of claim 5 , wherein the selected one of the remaining one or more query processing configurations to perform the query is not attached to the database, and wherein the method further comprises causing the selected one of the remaining one or more query processing configurations to be attached to the database in order to be routed the query for performance. 12. The method of claim 11 , further comprising determining that a query processing resource limit for the database is not exceeded by attaching the selected one of the remaining one or more query processing configurations. 13. The method of claim 5 , further comprising: determining that a query processing resource limit for the database is exceeded by attaching the selected one of the remaining one or more query processing configurations; and selecting a different one of the one or more remaining query processing configurations to perform the query that does not cause the query processing resource limit for the database to be exceeded. 14. One or more non-transitory, computer-readable storage media, storing program instructions that when executed on or across one or more computing devices cause the one or more computing devices to implement a database service that implements: receiving a query via a network endpoint associated with a database managed by the database service; determining respective response times predicted for the query using a plurality of query processing configurations available to perform the query at the database service; determining the respective response times for one or more query processing configurations exceed a variability threshold determined for the query; excluding the one or more query processing configurations of the plurality of query processing configurations to determine a remaining one or more query processing configurations; selecting one of the remaining one or more query processing configurations to perform the query; and causing the query to be performed at the selected query processing configuration. 15. The one or more non-transitory, computer-readable storage media of claim 14 , wherein, in determining the respective response times predicted for the query using a plurality of query processing configurations available to perform the query at the database service, the program instructions cause the one or more computing devices to implement: predicting respective execution times of the query using the plurality of query process

Assignees

Inventors

Classifications

  • Selectivity estimation or determination · CPC title

  • of operators · CPC title

  • Query processing with adaptation to specific hardware, e.g. adapted for using GPUs or SSDs · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11727003B2 cover?
Scaling of query processing resources for efficient utilization and performance is implemented for a database service. A query is received via a network endpoint associated with a database managed by a database service. Respective response times predicted for the query using different query processing configurations available to perform the query are determined. Those query processing configura…
Who is the assignee on this patent?
Amazon Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/24545. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 15 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).