Switching From Reactive to a Proactive System
Author: Patrick Gates | 5 min read | June 22, 2016
What challenges and objectives do DBAs face?
Nowadays, Database Administrators (DBAs) are supposed to do more than react to performance issues; but rather be proactive in their database management activities. Proactivity is very crucial for DBAs who are looking to improve the quality of their work and the stability of the databases they manage. Proactive database management requires the right tools to help make sense of the overwhelming amount of raw data provided by the database engine.
However, becoming proactive in enterprise database management is a great challenge because of the following three reasons:
- Criticality: Service levels are becoming more formalized as databases align with the applications they support, which reduces the tolerance for database downtime and poor performance.
- Complexity: The number of features to manage, and metrics to understand, increases substantially with each new database release. DBAs also face increased complexity from data volume growth and the fact that organizations are deploying databases at an ever-increasing rate.
- Productivity: DBAs are being required to manage more databases and therefore are deploying more productivity tools to simplify and automate both routine tasks and the collection of performance data.
To address these challenges, the most proactive DBAs set clear objectives about performance and the outcomes they seek. They also use high-quality data to make better decisions than experience alone can deliver, transforming raw performance metrics into meaningful, actionable information.
The set objectives are as follows:
- Accelerated problem resolution
- Problem prevention
- Maximizing hardware resources
- Reducing risk during change
Turning data into information
Database engines are equipped with performance metrics, and this data is the primary source for nearly all performance-related assessment. With every new release, the database provides more and more performance metrics. For instance, Oracle 11g contains 1,100+ wait events, as compared to 870+ in 10g and 400+ in 9i.
Owing to the availability of extensive data, DBAs cannot just depend exclusively on raw metrics and be effective in meeting their performance objectives. Also, raw data can only support a basic diagnostic process, but this solely depends on the DBA’s ability to interpret the data accurately and quickly.
What about complex processes? Decisions made will be based on guesswork if complex problems are assessed using only raw metrics, hence increasing the risk to the stability of the production system.
The solution to all these is deployment of performance technologies to automate the collection, and most of the analysis needed to convert raw data into useful information.
These technologies are categorized according to their core value and used in a simple process to help proactive DBAs meet their performance objectives, as illustrated below
Monitor. Analyze. Optimize.
This approach is important in avoiding the situation where performance technology contributes more to complexity than to the understanding of performance.
Monitor: Detect unusual behavior and isolate the source
Analyze: Identify the root cause of performance bottlenecks and develop an optimization plan
Optimize: Restore and maximize performance
Assessing performance technologies
There are many options to consider when assessing which technologies are most effective in improving the quality and stability of database performance. The inherent complexity of the database environment implies that there are many potential sources of poor performance, that’s why automated monitoring and analysis is the most desired.
A comprehensive technology embraces complexity by committing to measure all of the components that could potentially cause disruption to production performance. If it isn’t measured, it isn’t managed. As a result, the DBA has to define the scope of coverage required and verify this against the technology being assessed.
There are three levels of performance monitoring and analysis relevant to the database:
Application performance monitoring (APM)
APM identifies problems within the components of the application, between end users and the database. Non-database modules may be relevant to the DBA, especially in virtualization monitoring components.
Instance monitoring
Instance monitoring identifies problems affecting the database infrastructure, providing an early warning about stressed configuration or components that can affect the user experience.
Transaction workload analysis
Transaction workload analysis measures the SQL that connects users and applications to database resources. Deep visibility into database transactions is essential for critical databases because it enables the DBA to prioritize high-impact sources for resolution, prevention and optimization.
Because of the highly dynamic nature of the transaction workload, measurement requires specialized technology. When assessing a workload analysis solution, be sure to consider the following factors:
- Context
- Problem prevention
- Data granularity
- Measured overhead
- Scalability and integrity
Case study: Oracle proactive database monitoring
Oracle revolutionized the field of enterprise database management systems with the release of Oracle Database 10g by introducing the industry’s first self-management capabilities built into the database kernel. The Oracle Database makes it easy to proactively monitor the health and performance of your database.
It monitors the metrics or vital signs related to database health, analyzes the workload running against the database, and automatically identifies any issues that need your attention as DBA. The identified issues are either presented as alerts and performance findings in Enterprise Manager or sent to you via email.
The proactive database monitoring in Oracle database is done through the following features:
- Alerts notification and management
- Performance self-diagnostics (Automatic Database Diagnostic Monitor)
- Monitoring general database state and workload
If you need to find a proactive DBA or learn more about proactive database management, contact Datavail today. With over 600 DBAs worldwide, Datavail is the largest database services provider in North America. With 24×7 managed database services, including database design, architecture and staffing, Datavail can support your organization as it works with MySQL, regardless of the build you ultimately select.