Template based database analyzer

US9311345B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9311345-B2
Application numberUS-201213648043-A
CountryUS
Kind codeB2
Filing dateOct 9, 2012
Priority dateOct 9, 2012
Publication dateApr 12, 2016
Grant dateApr 12, 2016

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.

An automated database analyzer is uses templates to accommodate multiple database languages, such as SQL and its dialects. The templates are combined with metadata that define a database schema and operations on the database schema. An SQL file instantiates the database schema on a database system being tested. Operations on the database schema may then be performed to assess the performance of the database system being tested.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for assessing a plurality of database (DB) systems comprising: identifying a plurality of DB systems, each implemented using a different set of hardware environments and application requirements, the plurality of DB systems include at least one in-memory database; for each DB system in the plurality of DB systems, storing a plurality of template files, wherein each template file in the plurality of template files describes a different set of grammar and syntax for one or more DB statements of a DB language corresponding to the DB system and each template file comprises a plurality of DB statements expressed in the DB language of its corresponding DB system, wherein at least one of the DB statements is configured to define a DB schema in the corresponding DB system using placeholders in place of actual names of data tables that comprise the DB schema; for a given DB system: receiving a template file from among the plurality of template files that corresponds to the given DB system; receiving a metadata file that contains metadata for a DB schema including metadata for one or more DB tables of the DB schema and metadata for data fields of the DB tables; generating DB statements using the template file and the metadata file, including substituting placeholders in the template file with actual names from the metadata file according to the grammar and syntax specified in the template file; creating first DB statements configured to create an instance of the DB schema and second DB statements configured to perform operations on the DB tables of the DB schema; instantiating the DB schema on the DB system by executing the first DB statements; executing the second DB statements to perform operations on the DB tables of the DB schema; and reporting on the DB system's performance of execution of the second DB statements, including memory usage of the DB system when executing the second DB statement; and comparing performance of each DB system in the plurality of DB systems for analysis by a user. 2. The method of claim 1 wherein the first DB statements insert data values into the DB tables. 3. The method of claim 1 further comprising obtaining data values to be inserted into the DB tables of the DB schema, wherein the first DB statements include DB statements that insert the data values into the DB tables. 4. The method of claim 3 further comprising receiving the data values from an existing database system. 5. The method of claim 3 wherein at least some of the data values are randomly generated. 6. The method of claim 1 further comprising collecting performance data from the DB system during execution of the second DB statements. 7. The method of claim 1 further comprising repeating execution of the second DB statements one or more times and reporting on the DB system's performance of executing the second DB statements multiple times. 8. The method of claim 1 wherein the metadata file is one among a plurality of predefined metadata files. 9. The method of claim 1 wherein the DB statements include third DB statements that delete the DB schema from the DB system, the method further comprising deleting the DB schema from the DB system by executing the third DB statements subsequent to executing the second DB statements. 10. The method of claim 1 , wherein the performance of each DB system in the plurality of DB system is measured during a single run of the second DB statements. 11. A system for assessing a plurality of database (DB) systems comprising: a computer system; and a data storage system having stored thereon computer executable program code, which, when executed by the computer system, causes the computer system to: identify a plurality of DB systems, each implemented using a different set of hardware environments and application requirements, the plurality of DB systems include at least one in-memory database; for each DB system in the plurality of DB systems, store a plurality of template files, wherein each template file in the plurality of template files describes a different set of grammar and syntax for one or more DB statements of a DB language corresponding to the DB system and each template file comprises a plurality of DB statements expressed in the DB language of its corresponding DB system, wherein at least one of the DB statements is configured to define a DB schema in the corresponding DB system using placeholders in place of actual names of data tables that comprise the DB schema; for a given DB system: receive a template file from among the plurality of template files that corresponds to the given DB system; receive a metadata file that contains metadata for a DB schema including metadata for one or more DB tables of the DB schema and metadata for data fields of the DB tables; generate DB statements using the template file and the metadata file, including substituting placeholders in the template file with actual names from the metadata file according to the grammar and syntax specified in the template file; create first DB statements configured to create an instance of the DB schema and second DB statements configured to perform operations on the DB tables of the DB schema; instantiate the DB schema on the DB system by executing the first DB statements; execute the second DB statements to perform operations on the DB tables of the DB schema; and report on the DB system's performance of execution of the second DB statements, including memory usage of the DB system when executing the second DB statement; and compare performance of each DB system in the plurality of DB systems for analysis by a user. 12. The system of claim 11 wherein the first DB statements insert data values into the DB tables. 13. The system of claim 11 wherein the computer executable program code further causes the computer system to obtain data values to be inserted into the DB tables of the DB schema, wherein the first DB statements include DB statements that insert the data values into the DB tables. 14. The system of claim 13 wherein at least some of the data values are randomly generated. 15. The system of claim 13 wherein the computer executable program code further causes the computer system to collect performance data from the DB system during execution of the second DB statements. 16. A non-transitory computer readable storage medium for assessing a database (DB) system having stored thereon computer executable program code, which, when executed by a computer system, causes the computer system to perform steps of: identifying a plurality of DB systems, each implemented using a different set of hardware environments and application requirements, the plurality of DB systems include at least one in-memory database; for each DB system in the plurality of DB systems, storing a plurality of template files, wherein each template file in the plurality of template files describes a different set of grammar and syntax for one or more DB statements of a DB language corresponding to the DB system and each template file comprises a plurality of DB statements expressed in the DB language of its corresponding DB system, wherein at least one of the DB statements is configured to define a DB schema in the corresponding DB system using placeholders in place of actual names of data tables that comprise the DB schema; for a given DB system: receiving a template file from among the plurality of template files that corresponds to the given DB system; receiving a metadata file that contains metadata for a DB schema including metadata for one or more DB table

Assignees

Inventors

Classifications

  • G06F16/217Primary

    Database tuning (G06F16/2282 takes precedence; database performance monitoring G06F11/3409) · CPC title

  • Query predicate definition using graphical user interfaces, including menus and forms (G06F16/2423 takes precedence) · CPC title

  • Physics · mapped topic

  • Physics · mapped topic

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 US9311345B2 cover?
An automated database analyzer is uses templates to accommodate multiple database languages, such as SQL and its dialects. The templates are combined with metadata that define a database schema and operations on the database schema. An SQL file instantiates the database schema on a database system being tested. Operations on the database schema may then be performed to assess the performance of…
Who is the assignee on this patent?
Sap Ag, Sap Se
What technology area does this patent fall under?
Primary CPC classification G06F16/217. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 12 2016 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).