Exploring OpenStack's Trove DBaaS

Cloud Service

Considerations for Performance

When you deal with a DBaaS for the first time, you often forget an important criterion: performance. Good performance is often an essential ingredient for success: Most web applications, for example, are totally dependent on the database working reliably and quickly in the background. However, a user who focuses the optimization effort exclusively on bandwidth and throughput will come up short: It is usually latency that is critical for a database running in the cloud.

The reasons for this emphasis on latency will quickly become clear if you take a look at typical clouds up close: Almost all projects, including OpenStack, prefer scalable object storage. Solutions like GlusterFS or Ceph are used. All distributed storage solutions use classic Ethernet for exchanging data between the individual disks of the installation. However, the solution has a significantly higher inherent latency than when accessing a local disk.

Because all data stores also work synchronously, the application running on them gets all this latency. So if a VM is on a Ceph volume, write operations on the local VM storage take much longer than on bare metal. Anyone who moves an application from bare metal to the cloud will face significantly higher latencies.

Backups and Snapshots

The maintenance procedures for a database running within a virtual machine are different from those of a classic DB setup. Backups and snapshots are a good example: Trove has its own functions for these operations. Ultimately, the terms backup and snapshot mean the same thing in Trove. The guest agent does not get involved with backups. Instead, Trove saves a snapshot of the volume belonging to the DBaaS instance using the internal snapshot function of the OpenStack VM service Nova and the Volume service Cinder. Both full and incremental backups are possible.

An object store, for example Swift, serves as a location for storing the snapshots. In its own metadata database, Trove remembers where it stored the snapshot. The status of all snapshots can be restored in this way later, and customers are oblivious to what's happening under the hood: They just need to use the backup and restore functions of the Trove API from the command line or in a web interface.

Commercial Solution from Tesora

The American company Tesora [4] is heavily involved with developing Trove in OpenStack. The company describes itself as an enterprise provider of DBaaS with OpenStack, and it is represented on the market with its own product. The software called Tesora Enterprise upgrades many features in Trove that, according to the manufacturer, admins sorely miss. These value-added features include support for more databases: In addition to the databases included with Trove, the Tesora variant offers support for Oracle and several flavors of MySQL, such as Percona XtraDB or MariaDB.

Tesora also comes with its own dashboard plugin for DBaaS, with which it is possible to change more parameters than with the original from OpenStack (Figure 5). Ready guest images aim to make it easier for you to maintain Trove during operations, because it is no longer necessary for the cloud provider to remake the images. The Enterprise version of Tesora even contains ready guest images for commercial databases. In terms of security, the Tesora product offers several methods that are missing in Trove for toughening up the database. The manufacturer claims that clustering – particularly for MySQL – is easier to implement in Tesora than in Trove from OpenStack.

Figure 5: Tesora beefs up the GUI for its OpenStack solution and even provides optional around-the-clock support.

Tesora also offers help support for its Trove product, including a 24/7 model. This support is probably the most important argument in favor of Tesora for companies running critical applications with DBaaS databases. OpenStack providers only offer support for Trove within the framework of a normal support package from a team that might not specialize in Trove applications.

The company's website might not mention the price of the Tesora Enterprise edition, but interested parties have the opportunity to get the product as a trial version and test it for 60 days. Anyone who doesn't want to splash any money on Tesora still has access to the product's Community edition; however, keep in mind that the Community edition doesn't include any commercial components, and support is missing completely.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy ADMIN Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus