Patent application number | Description | Published |
20090077016 | FULLY AUTOMATED SQL TUNING - Techniques are provided for a fully-automated process for tuning database query language statements that selects database query language statements for tuning, tunes the database query language statements and generates tuning recommendations, tests the tuning recommendations, and determines whether to implement the tuning recommendations based on the test results. The fully-automated tuning process may also automatically implement certain tuning recommendations and monitor the performance of the database query language statements for which tuning recommendations have been implemented. | 03-19-2009 |
20090077017 | SQL PERFORMANCE ANALYZER - Techniques are provided for analyzing performance differences for a set of database query language statements on two different database systems. The performance analysis is based on quantitative measurements and estimates of the execution of the set of database query language statements on the two different database systems. This performance analysis process may be used by database administrators to predict impacts to performance due to a change in a database system. | 03-19-2009 |
20090105982 | DIAGNOSABILITY SYSTEM: FLOOD CONTROL - Techniques for controlling collection of diagnostic data in a monitored system. A set of flood control rules are configured for the monitored system for controlling the gathering of diagnostic data in the monitored system. The set of flood control rules may include one or more default flood control rules. The set of flood control rules are user-configurable enabling the user of the monitored system to set policies for dynamically controlling gathering of diagnostic data for the monitored system. In one embodiment, diagnostic data gathering is controlled based upon a number of previous occurrences of a condition in some predefined or user-configured time frame that triggers diagnostic data gathering and/or a number of previous executions of an action performed in some predefined or user-configured time frame responsive to the condition in the monitored system. | 04-23-2009 |
20090105989 | NON-INTRUSIVE GATHERING OF DIAGNOSTIC DATA USING ASYNCHRONOUS MECHANISMS - Techniques for non-intrusive performance of diagnostic actions including actions that result in gathering of diagnostic data in response to a condition detected in a monitored system. In one embodiment, the diagnostic actions are performed asynchronously by processes or threads that are different from the failing process or thread that receives or detects the condition that triggers the diagnostic actions such that the failing process or thread can continue processing without being affected by the executions of the diagnostic actions. Multiple asynchronous processes or threads that are different from the failing process or thread may be spawned to perform multiple diagnostic actions in parallel. The asynchronous processes or threads may be monitored to ensure that they do not adversely impact the monitored system. | 04-23-2009 |
20090105991 | RULE-BASED ENGINE FOR GATHERING DIAGNOSTIC DATA - An infrastructure is provided for gathering diagnostic data that is relevant to an error or other conditions detected in a monitored system. A diagnosability framework is provided that automates the gathering of relevant diagnostic data upon occurrence of the condition in the monitored system. In one embodiment, context data is determined for the condition detected in the monitored system. A rule-based engine is provided that is configured to automatically determine one or more actions to be performed for the condition detected in the monitored system based on the determined context data. The actions may include performing tasks that gather diagnostic data that is relevant to the detected condition, store the gathered diagnostic data in a repository, recommend one or more diagnostic actions to a user, and other diagnostic related actions. | 04-23-2009 |
20090106180 | HEALTH METER - Techniques for indicating the status or health of a software system in a simple and summarized manner. In one embodiment, a health meter is displayed that displays a status value indicating the status or health of the software system. The status or health of the system as indicated by the health meter may be based upon one or more characteristics or perspectives (or components) of the system, such as performance, resource utilization, reliability, availability, scalability, and status values computed for the components. | 04-23-2009 |
20090106278 | DIAGNOSABILITY SYSTEM - A diagnosability system for automatically collecting, storing, communicating, and analyzing diagnostic data for one or more monitored systems. The diagnosability system comprises several components configured for the collection, storage, communication, and analysis of diagnostic data for a condition detected in monitored system. The diagnosability system enables targeted dumping of diagnostic data so that only diagnostic data that is relevant for diagnosing the condition detected in the monitored system is collected and stored. This in turn enables first failure analysis thereby reducing the time needed to resolve the condition detected in the monitored system. | 04-23-2009 |
20090106589 | GATHERING CONTEXT INFORMATION USED FOR ACTIVATION OF CONTEXTUAL DUMPING - An infrastructure is provided for gathering diagnostic data that is relevant to an error or other conditions detected in a monitored system. A diagnosability framework is provided that automates the gathering of relevant diagnostic data upon occurrence of the condition in the monitored system. In one embodiment, context data is determined for the condition detected in the monitored system. A rule-based engine is provided that is configured to automatically determine one or more actions to be performed for the condition detected in the monitored system based on the determined context data. The actions may include performing tasks that gather diagnostic data that is relevant to the detected condition, store the gathered diagnostic data in a repository, recommend one or more diagnostic actions to a user, and other diagnostic related actions. | 04-23-2009 |
20090106605 | HEALTH MONITOR - Techniques for proactively and reactively running diagnostic functions. These diagnostic functions help to improve diagnostics of conditions detected in a monitored system and to limit/quarantine the damages caused by the detected conditions. In one embodiment, a health monitor infrastructure is provided that is configured to perform one or more health checks in a monitored system for diagnosing and/or gathering information related to the system. The one or more health checks may be invoked pro-actively on a scheduled basis, reactively in response to a condition detected in the system, or may even be invoked manually by a user such as a system administrator. | 04-23-2009 |
20100005340 | Test execution of user SQL in database server code - Systems, methods, and other embodiments associated with test execution of user SQL in server code are described. One example method includes producing a reproduced execution environment that reproduces a portion of an execution environment in which a user SQL runs. The example method may also include running the user SQL in the reproduced execution environment and capturing a statistic associated with performance of the user SQL while the user SQL runs in the reproduced execution environment. The method may conclude by storing, displaying, and/or providing a signal concerning the statistic. | 01-07-2010 |
20100030758 | Hybrid optimization strategies in automatic SQL tuning - Systems, methods, and other embodiments associated with hybrid optimization strategies in automatic SQL tuning are described. One example method includes receiving a first (e.g., cost-based) execution plan for a user structured query language statement (User SQL) from a first (e.g., cost-based) optimizer. The example method may also include receiving a second (e.g., rules-based) execution plan for the User SQL from a second, different (e.g., rules-based) query optimizer. The method may include identifying a preferred execution plan based on data produced by test executing the execution plans in a reproduced execution environment that reproduces at least a portion of an execution environment in which the user SQL runs. The method may also include controlling a database to execute the User SQL using the preferred execution plan. | 02-04-2010 |
20100198796 | TREEMAP VISUALIZATIONS OF DATABASE TIME - Particular embodiments generally relate to displaying database time using a treemap. A set of database time values is determined for a set of dimensions. The database time values measure performance of one or more databases by the time the database takes to respond to a request. The set of database time values is correlated to a set of cells in the treemap. A size of the cell is determined based on the database time value associated with it. For example, the database time value is correlated to an area of the cell. A layout of the set of cells is determined and the treemap is displayed using the layout. For example, the largest values of database time may be shown with the largest sized cells. This makes it easier for an administrator to review and analyze the database performance across multiple dimensions and determine problem areas affecting the performance of the one or more databases. | 08-05-2010 |
20110276550 | FINE GRAIN SYNCHRONIZATION FOR DATABASE REPLAY - A method, apparatus, and computer readable medium for preserving data dependency during replay of database commands without strictly preserving a global ordering of the database commands is provided. A capture process captures a workload of database commands executed by a production system. The captured workload includes object identifiers that identify database objects that were referenced directly or indirectly during execution of the database commands by the production system. The captured workload also includes an indication of whether the database objects were potentially read or written during execution of the commands. The workload is processed to determine that an object accessed during execution of a command was previously modified during execution of one or more other commands. A replay process on a test database system prevents the command from being replayed until after the one or more other commands have been replayed to modify the object. | 11-10-2011 |
20110295801 | FILTERING WORKLOAD FOR DATABASE REPLAY - A method and apparatus for capturing database system workload and replaying that workload in a database system is provided. According to one aspect, in order to subject a test database system to the same workload to which the production database system actually would be subjected, a database server in the production system captures and records workload that the database server receives from external entities. This captured workload is processed. Processes external to a database server in the test database system send the processed workload to that database server. As a result, the test database system is subjected to the same workload to which the production database system originally was subjected. The foregoing technique permits a database administrator to determine how the production database system will fare if the difference that is present in the test database system is introduced into the production database system. | 12-01-2011 |
20120005188 | TECHNIQUES FOR RECOMMENDING PARALLEL EXECUTION OF SQL STATEMENTS - Techniques for automatically recommending parallel execution of a SQL statement. In one set of embodiments, a first determination can be made regarding whether a SQL statement can be executed in parallel. Further, a second determination can be made regarding whether executing the SQL statement in parallel is faster than executing the statement in serial by a predetermined factor. If the first determination and second determination are positive (i.e., the statement can be executed in parallel and parallel execution is faster by the predetermined factor), a recommendation can be provided indicating that the SQL statement should be executed in parallel. In some embodiments, the recommendation can include a report specifying the degree of performance improvement gained from parallel execution, additional system resources consumed by parallel execution, and other statistics pertaining to the recommended parallel execution plan. | 01-05-2012 |
20120005189 | TECHNIQUES FOR RECOMMENDING ALTERNATIVE SQL EXECUTION PLANS - Techniques for automatically recommending alternative execution plans for a SQL statement. In one set of embodiments, information pertaining to one or more execution plans for a SQL statement can be retrieved from a set of plan sources. The one or more execution plans can include the current execution plan for the statement and one or more historical execution plans. Based on the retrieved information, the performance of the one or more execution plans can be compared to each other. Based on the comparison, a recommendation can be provided to a user indicating that a particular execution plan (e.g., a historical execution plan) should be used in place of the current execution plan to execute the SQL statement. | 01-05-2012 |
20120221513 | TRANSACTIONALLY CONSISTENT REPLAY OF APPLICATION WORKLOADS - A database system providing transactionally consistent replay of application workloads. In a database system, a method providing transactionally consistent replay of application workloads comprises the steps of: during a replay phase in which a plurality of application requests that were previously submitted to an application server system during a capture phase are being replayed, receiving, at a database server, a database request to execute a database command against a database. The database request specifies an application request identifier that identifies a particular application request of the plurality of application requests. The particular application request caused the database command to be executed previously during the capture phase. In response to receiving the database request, determining, based on the application request identifier in the database request, whether to delay execution of the database command at least until a particular replay-phase database transaction has been committed. | 08-30-2012 |
20120221519 | APPLICATION WORKLOAD CAPTURE AND REPLAY SYSTEM - An application workload capture and replay system with a transactionally consistent application workload replay feature is provided. More particularly, the feature includes capture-phase components for capturing and recording a real application workload submitted to a production web application system and includes replay-phase components for replaying the captured application workload against a test web application system in a transactionally consistent manner. The feature provides guarantees about the order of database transactions that are caused when the workload is replayed such that there is a consistency between the replay-phase order of the database transactions and the order of those transactions that occurred when the workload was captured. These consistency guarantees facilitate a faithful reproduction of database changes observed in the production web application system in the test web application system using a captured real application workload. Significantly, this faithful reproduction may be accomplished without having to create a synthetic application workload that approximates or emulates the transactional behavior of the real application workload. Instead, a real application workload may be used as or substantially as it is captured. | 08-30-2012 |
20130117441 | UPGRADING ENTERPRISE MANAGERS - Techniques are described for upgrading systems that include a first set of agents for collecting target data from a plurality of targets and sending the target data to a first management server. In an embodiment, a second set of agents is pre-deployed. Each pre-deployed agent is configured to, upon activation, collect target data from a respective target of the plurality of targets and send the target data to a second management server. While the pre-deployed agent remains inactive, an agent from the first set of agents collects and sends the target data to the first management server. When a first batch of one or more pre-deployed agents is activated, each activated agent begins collecting target data and sending the target data to the second management server. For agents not in the first batch, the first set of agents continues to collect and send the target data. | 05-09-2013 |
20130311642 | AUTOMATED DISCOVERY OF TEMPLATE PATTERNS BASED ON RECEIVED SERVER REQUESTS - Described herein are methods for determining patterns based on requests received by a server. Based on the determined patterns, insight into the types of requests received by the server can be gained. Additionally, performance statistics and query statistics can be aggregated in a useful way. For example, performance statistics may be summarized for each determined pattern. One technique for determining patterns includes determining a sequence of template identifiers identifying templates that correspond to sub-sequences of requests in a sequence of server requests. A model may be created based on the sequence of template identifiers. Based on the model, template patterns may be determined. Template patterns may further be grouped into pattern clusters. | 11-21-2013 |
20140006358 | CREATION AND REPLAY OF A SIMULATION WORKLOAD USING CAPTURED WORKLOADS | 01-02-2014 |
20150081669 | FULLY AUTOMATED SQL TUNING - Techniques are provided for a fully-automated process for tuning database query language statements that selects database query language statements for tuning, tunes the database query language statements and generates tuning recommendations, tests the tuning recommendations, and determines whether to implement the tuning recommendations based on the test results. The fully-automated tuning process may also automatically implement certain tuning recommendations and monitor the performance of the database query language statements for which tuning recommendations have been implemented. | 03-19-2015 |