Tip

Optimizing Xen virtualization for Oracle databases

With a few tweaks to Xen virtualization, it’s possible to run Oracle databases inside virtual machines without performance issues, but you should be mindful of the support problems that may arise.

In the early days

    Requires Free Membership to View

of virtualization, running Oracle databases in virtual machines (VMs) wasn't necessarily a good idea. The hypervisor needed to trap and emulate instructions from the virtualized operating system before sending them to the hardware.  Called full virtualization, this method reduced the database’s performance when compared with running on bare metal.

That changed with Xen’s paravirtualization feature, which sends instructions directly to the hardware, bypassing the hypervisor. This feature eliminates the performance gap between the Xen virtualization and running on physical hardware, allowing you to virtualize Oracle databases without any performance worries. All brands of Xen virtualization offer this method, including Citrix Systems XenServer, SUSE Linux and Oracle VM. The only requirement is an operating system that supports paravirtualization.

Optimizing Xen virtualization for an Oracle database
When running Oracle databases in a Xen-based infrastructure, there are ways to ensure your workload is achieving the best possible performance.

First, you must optimize the hypervisor settings. In general, there aren’t many adjustments you can make to a hypervisor. But you can choose between paravirtualization or full virtualization. Generally, paravirtualization is faster for virtualized Oracle workloads. But you should always test which Xen virtualization method is faster, because speeds may vary depending on your database workload.

You also want to ensure that the virtualized OS, which is running the Oracle database, has access to enough hardware resources. For example, use CPU pinning to ensure that every virtual CPU reserved for the Oracle database is paired with a physical CPU core. In this configuration, all of the available physical CPU cycles are offered to the Oracle database.

Next, you must choose the right OS. Oracle databases mainly run on Linux OSes, most of which support paravirtualization. Even if you choose another OS, you can run a virtualized Oracle database without a performance hit as long as the OS kernel supports paravirtualization.

Ultimately, the real optimizations occur at the OS level. For instance, the kernel parameters must allocate enough resources for the Oracle database’s shared memory and simultaneously opened files. But this approach is true for every virtualization platform that runs Oracle databases, not just Xen virtualization.

Support considerations for running Oracle databases on Xen
So can you virtualize Oracle on any brand of Xen virtualization? From a technology perspective, the answer is yes. It doesn't matter if you run it on XenServer, SUSE Linux or Oracle VM.

But Oracle doesn’t support every virtualization platform. Obviously, Oracle prefers that you use Oracle VM, but the company also has qualified support for its databases running on VMware. And, as of now, XenServer is not an option.

This was first published in October 2011

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.