Top 10 Reasons to Virtualize Your Business-Critical Databases
Top 10 Reasons to Virtualize Your Business-Critical Databases
By Ariff Kassam
published: Tuesday, August 04 2009


xkoto_20090804.jpg
No enterprise can afford to be down. Whether private or public, Fortune 100 or startup, the objective is the same: to keep the business running, as customers and partners depend on it.

 

While virtualization technology is being applied to lower costs and improve utilization for Web and application workloads, relational databases are still predominantly deployed on fixed hardware that is often over-sized for peak capacity, and protected by wasteful, active/passive clustering solutions. As organizations are continually being asked to do more with less, many IT professionals are looking to apply virtualization technology for business-critical databases to achieve better application performance, higher server utilization, improved uptime, and lower operating costs.

 

WHAT IS DATABASE VIRTUALIZATION

Database virtualization software runs between applications and databases for horizontal scaling and continuous availability. It employs a shared-nothing architecture to maintain multiple, active/active database copies running anywhere on the network. The database can run on commodity or midrange systems, on virtual machines, or in remote locations.

 

The database instances themselves operate completely independently from one another, unaware that they are part of a virtual pool of database servers. Read requests are load balanced for scalability and performance gains. Write requests and database changes are propagated asynchronously to all databases to keep them in sync. Applications typically require little to no modification beyond the use of a special database driver, which talks to the database virtualization server.

 

If an individual database is taken down for any reason, when it is put back into the cluster, the database virtualization software will automatically resynchronize the data by applying the transactions that it missed while offline. Users can then perform maintenance tasks to the other database servers. All the while, the application never takes an outage. Following are the top 10 reasons to virtualize business-critical relational databases:

 

REASON 1: ELIMINATE DATABASE DOWNTIME

Despite the need for critical applications to run 24/7, most IT organizations still rely on planned maintenance windows on weekends to perform system maintenance, update database schemas, and upgrade hardware. With many businesses needing to provide global access to these applications to customers in multiple time zones, planned maintenance windows are shrinking and becoming less frequent, making it increasingly difficult to keep database systems up-to-date.

 

By virtualizing databases with software that offers active/active properties, organizations can distribute application load across a pool of database copies running anywhere on the network. Since each database is independent and has its own consistent snapshot of the data, IT professionals can take individual databases offline for maintenance while the others stay online, without ever having to take the application down.

 

xkoto_slide1-20090804.jpg

REASON 2: SCALE DATABASES HORIZONTALLY FOR DRAMATIC PERFORMANCE GAINS

Relational database systems are typically scaled vertically, on servers that are oversized for anticipated peak capacity.

 

By scaling application workload horizontally across multiple, active/active database servers, users gain a number of benefits traditional active/passive database clustering does not provide today. Since database virtualization solutions load balance database requests across a pool of active/active databases, users can scale application load across lower cost commodity systems and virtual machines where servers can easily be added or removed based on the changing needs of a company's business. Overall, users will see dramatic improvements in database server utilization. Moreover, unanticipated changes in business requirements (e.g., corporate merger doubles number of employees that need access to key application), may dramatically and suddenly increase database throughput needs. When that happens, database virtualization software allows users to easily increase the capacity of their database infrastructure. Legacy DBMS architectures typically require a complete hardware replacement to expand DBMS throughput.

 

 

REASON 3: UPGRADE AND UPDATE YOUR DBMS SOFTWARE WITHOUT TAKING AN OUTAGE

Upgrading to the latest DBMS version (e.g. migrating from SQL Server 2005 to 2008) - and even applying service packs - requires data migration, extensive testing, and in some cases, application changes. In virtually all cases, applications must take an outage in order to allow the database administration group to perform the upgrade.

 

Applying a database virtualization solution, IT professionals can patch database systems and even perform major DBMS upgrades without application downtime. Unlike traditional clustering technologies that replicate posted transactions from disk, database virtualization software intercepts inbound SQL statements and replicates them to the multiple database instances it manages. These databases can be on different versions of the underlying database or even operating system, provided that the SQL syntax and the supporting application logic are unaffected by differences in DBMS version. As a result, you can run a mixed cluster of different DBMS versions that allows you not only to keep your databases patched and up-to-date, but to also monitor the behavior of the patches in your production environment, and to stage migrations.