Object-level database performance management
AssigneePrecise Software Solutions, Inc.
InventorsGil Nadel, Kristiaan Kolk
Life of this patent
Estimating the term…
Abstract
A method and system are provided for object-level database monitoring and tuning in a performance management system. Performance data for a plurality of database objects in a database server computer system are collected and stored. A performance problem in the database server computer system is detected. A problematic database object is identified using the performance data for the plurality of database objects, wherein the problematic database object is related to the performance problem. The problematic database object is tuned to improve performance of the database server computer system.
Claims56
A method, including steps of
- by a measurement component at a server, for one or more database objects, measuring a performance timing effect associated with accessing said database objects;
- identifying a particular database object in response to said performance timing effect, said particular database object adversely effecting performance of said server in correlation with said performance timing effect;
- wherein said steps of identifying include steps of periodically sampling a database performance view, said database performance view being responsive to said performance timing effect;
- and measuring which particular database objects exhibit said performance timing effect relatively more frequently;
- generating one or more tuning recommendations, wherein the one or more tuning recommendations comprise one or more of:
- moving said particular database object to a different storage component, or creating a new access path to said particular database object.
A method, including steps of
- by a measurement component determining an effect of using queries to access one or more database objects on a resource consumption performance of said queries;
- identifying a particular database object in response to said steps of determining, said particular database object adversely effecting performance of said server in correlation with said resource consumption performance;
- wherein said steps of identifying include steps of
- periodically sampling a database performance view, said database performance view being responsive to said resource consumption performance;
- and
- measuring which particular database objects exhibit said resource consumption performance relatively more frequently;
- improving a measure of performance of said queries in response to said steps of identifying by one or more of:
- moving said particular database object to a different storage component, or creating a new access path to said particular database object.
A method, including steps of
- receiving onto a computer-readable physical medium, sending from a computer-readable physical medium, or storing on a computer-readable physical medium, information interpretable by a computing device, the information including instructions to perform steps of
- by a measurement component at a server, for one or more database objects, measuring a performance timing effect associated with accessing said database objects;
- identifying a particular database object in response to said performance timing effect, said particular database object adversely effecting performance of said server in correlation with said performance timing effect;
- wherein said steps of identifying include steps of
- periodically sampling a database performance view, said database performance view being responsive to said performance timing effect;
- and
- measuring which particular database objects exhibit said performance timing effect relatively more frequently;
- generating one or more tuning recommendations, wherein the one or more tuning recommendations comprise one or more of:
- moving said particular database object to a different storage component, or creating a new access path to said particular database object.
A database server, including
- one or more processors;
- one or more database objects that participate in the execution of SQL statements, said SQL statements being executed by said one or more processors and said database objects being accessed in response thereto;
- a measure of performance of said execution of SQL statements including resource consumption, said measure of performance being responsive to said SQL statements being executed by said one or more processors;
- at least one particular said database object adversely affecting said resource consumption;
- and
- agent software operating at said database server,
- said agent software identifying said particular database object in response to:
- monitoring said database server,
- sampling said database objects for resource consumption cases,
- maintaining performance data, and
- correlating said performance data with said particular database object,
- wherein said agent software is operative to tune said particular database object, whereby improving performance of said database server;
- wherein said agent software is operative to generate one or more tuning recommendations;
- wherein said one or more tuning recommendations comprise one or more of:
- moving said particular database object to a different storage component, or creating a new access path to said particular database object.
A system including
- one or more processors;
- a measurement component including agent software modules capable of identifying particular database objects and capturing performance metrics on said database objects, said
- agent software modules being executed by said one or more processors and said performance metrics being updated in response thereto;
- wherein said agent software is capable of generating one or more tuning recommendations;
- wherein said one or more tuning recommendations comprise one or more of:
- moving said particular database object to a different storage component, or creating a new access path to said particular database object;
- a discovery component including installations of agent software on each server running target applications, said installations being executed by one or more processors;
- a console component communicating key performance indicators to users at appropriate times;
- a performance warehouse including a repository of said performance metrics accessible to said measurement component, said discovery component, and said console component.
Dependencies are inferred from the claim text.