Introduction to DPA
Use Database Performance Analyzer to help you identify, investigate, and resolve performance problems for a variety of database types, including Oracle, SQL Server, PostgreSQL, MySQL, Db2, Sybase, AWS, and Azure. DPA uses wait-based analytics to identify and prioritize the issues causing the most wait time for end users and applications.
DPA's agentless architecture uses less than one percent of resources on production systems.
Download the PDF: DPA Product Guide (formerly known as Administrator Guide)
Register database instances
You must register each database instance you want to monitor with DPA. After you register an instance, you can monitor it for 14 days without applying a license. DPA is fully functional during this evaluation period.
License requirements depend on the type of SolarWinds DPA deployment. If you deploy DPA in the Amazon Web Services (AWS) Marketplace, the AWS Marketplace Metering Service is used to calculate DPA charges. If you deploy DPA on a self-managed server or in the Azure Marketplace, you must have a license for each monitored database instance. Learn more about DPA license types.
After you activate your licenses, DPA automatically allocates them to monitored instances if there are enough activated licenses to cover all registered instances. If not, you must manually allocate licenses to the instances you want to monitor.
Investigate performance issues
Use DPA to investigate queries with long wait times, inefficient queries and the tables they run against, and anomalies (unusually long wait times).
Use DPA to identify queries with long wait times and determine the root cause of the issue. The Trends charts make it easy to identify queries with the highest wait times and times when waits were unusually long (anomalies).
To help you investigate the root cause of a query's performance problems, DPA intelligently assembles the most relevant data about the query and displays it on the Query Details page. DPA's table advisors identify inefficient queries and help determine how to improve performance. DPA also identifies tables and indexes that violate a set of best practices, and its index advisors identify missing indexes.
You can use the AI Query Assist option to send a query and associated plan to a secure enterprise LLM. You will receive AI-generated suggestions to optimize the query performance.
The following topics provide step-by-step examples of using DPA to investigate performance issues:
- Example of investigating an application performance problem with DPA
- Example of investigating an increase in wait time with DPA
- Example of investigating a wait time anomaly with DPA
Search for SQL statements
Do you want to see DPA's query performance analysis of a query that does not show up in the Trends charts? You can search for it based on what you know, such as when the query ran, the application that ran it, or even part of the SQL text.
Use resource metrics for context or alerting
Resource metrics provide information about how resources (such as CPU, disk, and memory) are being used at specific points in time. These metrics show what was happening in the rest of your environment during database slow-downs, and can provide context to help you identify the root cause of performance problems.
Some metrics have default thresholds, and you can create alerts triggered when a metric exceeds the threshold. You can add or change the thresholds. You can also create custom metrics.
Give users access to DPA
Understand DPA roles and privileges, and then create DPA user accounts and assign privileges.
Configure reports
Use DPA reports to identify database trends, track the results of your performance tuning, and communicate those results to others. After you create a report, you can schedule it to automatically run and be delivered to the specified recipients at regular intervals. Use report groups to display data from related reports on the same page. With report groups, you can quickly run or schedule multiple reports.
Configure alerts
Use alerts to become aware of issues and address them proactively before they affect end users. Configure DPA's predefined alerts to be warned about long wait times, resources that violate thresholds, and problems with the health of the database system. You can also create custom alerts.
You can stop alerting for a period of time, for example during a maintenance window.
Use custom email templates to define the contents of email notifications sent after an alert is triggered.
Link DPA servers together
For large or geographically separate environments, use DPA Central to link DPA servers together. In the DPA Central Server, the Central page displays summarized information about all connected DPA servers.
Automate tasks with the DPA REST API
Use the DPA REST API to retrieve information and automate management tasks, such as registering database instances, stopping and starting monitors, adding annotations, and allocating licenses. Access the Swagger interface to explore the available API endpoints and try out API calls. Also view examples of Python scripts and PowerShell scripts that make DPA API calls.
View DPA data in SolarWinds Observability Self-Hosted
If you have SolarWinds Observability Self-Hosted, you can use the DPA Integration Module (DPAIM) to view information collected from DPA in the SolarWinds Platform Web Console. You can view database instance information alongside other environmental factors to get a more comprehensive view of issues affecting users and your IT infrastructure. Integration adds DPA-specific resources that poll information directly from DPA, and it also expands the information available in other resources. Information from DPA, such as database wait time, improve your ability to troubleshoot slow response times or pinpoint database instances that need more resources.