Implementation of data access metrics for automated physical database design

US11550762B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11550762-B2
Application numberUS-202117316901-A
CountryUS
Kind codeB2
Filing dateMay 11, 2021
Priority dateFeb 24, 2021
Publication dateJan 10, 2023
Grant dateJan 10, 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.

The present disclosure involves systems, software, and computer implemented methods for improved design and implementation of data access metrics for automated physical database design. An example method includes identifying a database workload for which index advisor access counters are to be tracked. Each SQL statement in the database workload is executed. For each SQL statement, attribute sets are determined for which a selection predicate filters a result for an SQL statement. An output cardinality of each selection predicate is determined. A logarithmic counter for an attribute set corresponding to the selection predicate is determined based on the output cardinality of the selection predicate. The determined logarithmic counter is incremented. Respective values for logarithmic counters of the determined attributes are provided to an index advisor. The index advisor determines attribute sets for which to propose an index based on the logarithmic counters of the respective attribute sets.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: identifying a database workload for which index advisor access counters are to be tracked, wherein the database workload includes at least one SQL (Structured Query Language) statement; executing each SQL statement in the database workload, wherein executing a respective SQL statement comprises: determining attribute sets of at least one free attribute for which a selection predicate filters a result for the SQL statement; determining an output cardinality of each selection predicate; determining, for each selection predicate, whether the output cardinality of the selection predicate is greater than a threshold; and in response to determining that the output cardinality of a respective selection predicate is not greater than the threshold: creating logarithmic counters for the selection predicate if logarithmic counters have not yet been created for the selection predicate; determining, based on the output cardinality of the selection predicate, a logarithmic counter for an attribute set corresponding to the selection predicate; and incrementing the logarithmic counter; and providing respective values for the logarithmic counters of the determined attributes to an index advisor, as the index advisor access counters. 2. The computer-implemented method of claim 1 , wherein the logarithmic counter is selected from among a collection of logarithmic counters for the attribute set. 3. The computer-implemented method of claim 2 , wherein determining the logarithmic counter comprises determining a collection index of a particular logarithmic counter in the collection of logarithmic counters for the attribute set. 4. The computer-implemented method of claim 2 , wherein determining the collection index comprises determining the logarithm of the output cardinality of the selection predicate. 5. The computer-implemented method of claim 4 , wherein determining the logarithm of the output cardinality of the selection predicate comprises: determining a current value of a configurable logarithm base parameter; and using the current value of the configurable logarithm base parameter when determining the logarithm of the output cardinality of the selection predicate. 6. The computer-implemented method of claim 1 , wherein the threshold is based on a maximum query result size. 7. The computer-implemented method of claim 1 , wherein the logarithmic counters for an attribute set are created in response to determining that an executed query includes a selection predicate for the attribute set. 8. The computer-implemented method of claim 1 , wherein the index advisor determines attribute sets for which to propose an index based on the logarithmic counters of the respective attribute sets. 9. A system comprising: one or more computers; and a computer-readable medium coupled to the one or more computers having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations comprising: identifying a database workload for which index advisor access counters are to be tracked, wherein the database workload includes at least one SQL (Structured Query Language) statement; executing each SQL statement in the database workload, wherein executing a respective SQL statement comprises: determining attribute sets of at least one free attribute for which a selection predicate filters a result for the SQL statement; determining an output cardinality of each selection predicate; determining, for each selection predicate, whether the output cardinality of the selection predicate is greater than a threshold; and in response to determining that the output cardinality of a respective selection predicate is not greater than the threshold: creating logarithmic counters for the selection predicate if logarithmic counters have not yet been created for the selection predicate; determining, based on the output cardinality of the selection predicate, a logarithmic counter for an attribute set corresponding to the selection predicate; and incrementing the logarithmic counter; and providing respective values for the logarithmic counters of the determined attributes to an index advisor, as the index advisor access counters. 10. The system of claim 9 , wherein the logarithmic counter is selected from among a collection of logarithmic counters for the attribute set. 11. The system of claim 10 , wherein determining the logarithmic counter comprises determining a collection index of a particular logarithmic counter in the collection of logarithmic counters for the attribute set. 12. The system of claim 10 , wherein determining the collection index comprises determining the logarithm of the output cardinality of the selection predicate. 13. The system of claim 12 , wherein determining the logarithm of the output cardinality of the selection predicate comprises: determining a current value of a configurable logarithm base parameter; and using the current value of the configurable logarithm base parameter when determining the logarithm of the output cardinality of the selection predicate. 14. The system of claim 9 , wherein the threshold is based on a maximum query result size. 15. A computer program product encoded on a non-transitory storage medium, the product comprising non-transitory, computer readable instructions for causing one or more processors to perform operations comprising: identifying a database workload for which index advisor access counters are to be tracked, wherein the database workload includes at least one SQL (Structured Query Language) statement; executing each SQL statement in the database workload, wherein executing a respective SQL statement comprises: determining attribute sets of at least one free attribute for which a selection predicate filters a result for the SQL statement; determining an output cardinality of each selection predicate; determining, for each selection predicate, whether the output cardinality of the selection predicate is greater than a threshold; and in response to determining that the output cardinality of a respective selection predicate is not greater than the threshold: creating logarithmic counters for the selection predicate if logarithmic counters have not yet been created for the selection predicate; determining, based on the output cardinality of the selection predicate, a logarithmic counter for an attribute set corresponding to the selection predicate; and incrementing the logarithmic counter; and providing respective values for the logarithmic counters of the determined attributes to an index advisor, as the index advisor access counters. 16. The computer program product of claim 15 , wherein the logarithmic counter is selected from among a collection of logarithmic counters for the attribute set. 17. The computer program product of claim 16 , wherein determining the logarithmic counter comprises determining a collection index of a particular logarithmic counter in the collection of logarithmic counters for the attribute set. 18. The computer program product of claim 16 , wherein determining the collection index comprises determining the logarithm of the output cardinality of the selection predicate. 19. The computer program product of claim 18 , wherein determining the logarithm of the output cardinality of the selection predicate comprises: determining a current value of a configurable logarithm base parameter; and using the current value of the

Assignees

Inventors

Classifications

  • with details for schema evolution support · CPC title

  • Management thereof · CPC title

  • G06F16/21Primary

    Design, administration or maintenance of databases · CPC title

  • Selection of Compressor · CPC title

  • Query execution · 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 US11550762B2 cover?
The present disclosure involves systems, software, and computer implemented methods for improved design and implementation of data access metrics for automated physical database design. An example method includes identifying a database workload for which index advisor access counters are to be tracked. Each SQL statement in the database workload is executed. For each SQL statement, attribute se…
Who is the assignee on this patent?
Sap Se
What technology area does this patent fall under?
Primary CPC classification G06F16/21. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 10 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).