A must have tool for any production dba
February 22, 2019

A must have tool for any production dba

Anonymous | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User

Overall Satisfaction with SolarWinds Database Performance Analyzer

There are three ways we use DPA -
- Daily review by one of our team members to see anomalies.
- Drilling down while troubleshooting ongoing issues.
- Setting up reports to keep the hard record of a baseline.

Since DPA is a wait time oriented monitoring tool, it perfectly completes other homemade SQL scripts used to monitor and troubleshoot performance.
  • An easy way to get the status of the databases.
  • An easy way to drill down.
  • Ability to see at glance the current database health.
  • It's not very intuitive when "zoom in" "zoom out" needed while looking at performance. Eventually, you figure this out. But it would be better to see all events sharing the same timeline.
  • Some minor issues with web implementation that include auto login. Probably related to cookie handling.
  • The most important KPI for anybody who's responsible for a production database is uptime/downtime ratio. In the last few years, we made a lot of improvement in our environment. DPA served both as a tool to improve performance and the tool to confirm it. While in the past we were having at least one emergency a month that number went down to almost zero.
  • Compared to previously used tools the cost is not a big difference, while quality-wise we definitely see the difference.
We used NewRelic heavily to monitor an overall application stack. We tried to include SQL modules -- it was not the right fit. For a long time, we were using Quest Spotlight and Foglight PA. They're pretty bulky, expensive, and have a significant performance overhead while using agents.
After working with a bunch of other solutions I admit the best advantage of DPA is a design around wait-events. That's exactly what others are always missing while providing a deep performance analysis. At the end of the day, the most important thing is how long database consumers have to wait for a particular transaction to be finished.