Databases are the heart of applications and a vital component for business operations. And database administrators (DBAs) are under intense pressure and responsibility to ensure high performance and minimal downtime while facing myriad challenges.
Increasing workloads and database complexity are among the challenges that DBAs deal with on a daily basis, as evidenced by IT’s shifting to an application-centric approach, the introduction of multiple database platforms, and the need to manage data not only on-premises, but also in the cloud. But as the IT landscape evolves, these challenges must, and can, be overcome.
The Shift to an Application-centric Approach
At the core of nearly every application is a database. This means that when an application performance or availability problem arises, there’s a good chance it’s associated with the underlying database’s performance. Database performance impacts customers and end users, who have little patience for application issues (a recent SolarWinds survey found that 67 percent of end users say they expect IT to resolve such issues within an hour or less). In addition, in recent research by Gleanster, 88 percent of IT professionals reported the database as the most common challenge or issue with application performance. Furthermore, the cloud, DevOps, and other shifts in technology are making the entire IT department more application-focused. In the end, applications are what matters to the business and to end users. This means DBAs are being held accountable for application performance, not only database performance.
To deliver better application performance, DBAs should consider the following tips:
- Be proactive and align behind end-user experience as a shared objective across the entire IT organization by looking at application performance and the impact that the database has on it continuously, not only when it becomes a major problem.
- Measure performance based not on an infrastructure resources perspective, but on end-user wait times. Wait-time analysis gives DBAs a view into what end-users are waiting for and what the database is waiting for, providing clear visibility into bottlenecks.
- Implement monitoring tools that provide visibility across the entire application stack, including all the infrastructure that supports the database – virtualization layers, database servers, hosts, storage systems, networks, etc.
- Establish historic baselines of application and database performance that look at how applications performed at the same time on the same day last week, and the week before that, to detect any anomalies before they become larger problems.
The Introduction of Multiple Database Platforms
According to a 2015 report, most DBAs are responsible for multiple database technologies from several vendors, most commonly Oracle, SQL Server, and MySQL. In fact, over a quarter (28 percent, to be precise) of DBAs manage 26 to 100 databases at any given time. This push toward database diversity and DBA efficiency leads to an increasingly complex role for the DBA, who must learn to adapt to unfamiliar database platforms as more responsibility for business success is added to their shoulders.
The following best practices can help DBAs better manage multiple database platforms within a single IT environment:
- Have a common set of goals, metrics and SLAs across all databases, ideally based on application response times, not only uptime.
- Use tools that provide a single dashboard of performance and the ability to drill down across database technologies and deployment methods, including cloud.
- Document a consistent set of processes for ensuring integrity and security: backup and restore processes, encryption at rest and on transit, detection of anomalies and potential security events in logs, to name a few.
- Establish a strategy, roadmap, and guidelines for moving to the cloud (or not) and for reducing workload costs by moving databases to lower-license-cost versions or open-source alternatives.
- Make sure team members can escape firefighting mode and spend enough time proactively optimizing performance of the databases and taking care of important maintenance tasks, which can result in significant cost savings and prevent problems in the future.
Managing Data On-Premises and in the Cloud
With the allure of cost savings, greater flexibility, and more agility, many organizations are eyeing the cloud as an alternative for deploying new applications, including those with high database performance requirements. In fact, technology research firm TechNavio predicts a 62 percent annual growth rate of cloud-based databases through 2018. However, this transition creates new complexities and challenges for DBAs, especially because DBAs are ultimately responsible for both database performance and data security regardless of if the data lives on-premise or in the cloud.
Here are several pieces of advice for managing data in the cloud that DBAs should keep in mind:
- When considering which databases to move to the cloud, take into account data transfer process and latency, and how to maintain databases in sync if required, especially if applications need to integrate with others that are not in the same cloud deployment.
- Poor on-premise database performance will be poor in the cloud too. Moving the problem does not solve it. Scaling in the cloud to compensate for bad performance is the wrong approach and gets expensive quickly.
- Understand the service provider’s services and capabilities, know its SLAs, review its recommended architecture, and be very aware of scheduled maintenance.
- Think through, plan, and manage backup and recovery to ensure important data is not lost in the event of a vendor failure or outage.
- Stay on top of security, realizing that encryption is only the tip of the iceberg. Consider who will monitor database access for malicious or unauthorized access and plan for the worst. Have a documented course of action in case of a security breach or data loss.
- If it is important to monitor and optimize on-premise deployments, it’s even more important in the cloud, given its dynamic nature. A consistent set of tools to do so across both sides of hybrid IT environments is ideal.
Shifting to an application-centric approach to database management, managing multiple databases, and managing data on-premise and in the cloud are all challenges that DBAs face in today’s evolving database landscape. But these challenges are not insurmountable. By heeding best practices, DBAs can overcome these challenges and ensure success.
Gerardo Dada is Vice President of Product Marketing and Strategy for SolarWinds’ database, applications and cloud businesses globally, including SolarWinds Database Performance Analyzer and SolarWinds Cloud. Gerardo is a technologist who has been at the center of the Web, mobile, social, and cloud revolutions at companies like Rackspace, Microsoft, Motorola, Vignette, and Bazaarvoice. He has been involved with database technologies from dBase and BTrieve to SQL Server, NoSQL, and DBaaS in the cloud.
Subscribe to Data Informed for the latest information and news on big data and analytics for the enterprise.