Ensuring the optimal performance and reliability of database systems is crucial for maintaining business continuity. Amazon RDS Performance Insights empowers users to effectively monitor, analyze, and optimize database workloads, enabling them to identify and address performance bottlenecks proactively.
Performance Insights provides a suite of features for visualizing and analyzing database activity, enabling users to gain valuable insights into their database's performance patterns. Users can effortlessly monitor CPU utilization, database load, and other key metrics, gaining a clear understanding of how their database is currently performing.
Bottlenecks
With Performance Insights, users can pinpoint the exact areas of their database that are causing performance slowdowns. You can analyze detailed SQL statement metrics, identify inefficient queries that are consuming excessive resources, allowing you to optimize those queries and improve overall database performance.
However, you are possibly reacting to problems, not solving them early on. Wouldn’t it be nice to be notified about the problems before they become problems?
Proactive Recommendations
The new feature I’m talking about here is called Proactive Recommendations. It makes it possible to react to the evolving situation early on. Proactive Recommendations actively looks for for potential database performance and availability issues before they escalate into major concerns. It monitors your database instances, identifying conditions that might risk future database health. On spotting such conditions, it generates actionable suggestions, explaining the nature of the potential problem and providing specific steps for resolution.
How to enable the recommendations?
You can enable Performance Insights for existing databases, you don’t need to create a new database for this. However, the database instance size needs to be large enough or Performance Insights is not available at all. When you are using the burstable instance classes (t class), this basically filters out the smallest instance sizes, such as db.t4g.micro and db.t4g.small. The Performance Insights documentation has details of this and other limitations.
After choosing the correct instance class and size you can enable Performance Insights. As of writing this blog post Performance Insights is enabled by default.
In order to get Proactive Recommendations, you also need to change the default retention period of the metrics from 7 days to something longer, such as 1 month.
After enabling the recommendations, you can look at them by choosing “Recommendations” from your RDS Dashboard menu. Luckily my demo environment didn’t have any recommendations waiting for me. Good for my environment, bad for this demo 🤓
If you are interested, AWS documentation contains additional images of the recommendation summary, metrics and analysis recommendations.