Getting Started with Xeround is Easy!

MySQL Cloud - Start Now!

 

MySQL on the Cloud: Do-It-Yourself or Database-as-a-Service?

Being a free open source database with a vibrant ecosystem, MySQL is one of the most widely used databases today. If you’re a developer, a DBA or an IT manager – chances are your organization already has several existing applications running on MySQL, and that you have several new projects planned where MySQL would be the most natural choice. As more and more applications are being migrated to the cloud, MySQL cloud deployments have come to rule the virtualized infrastructure as well.

There are two main routes for deploying MySQL in the cloud:

  1. The “Do-it-Yourself” approach – setting up your cloud instance on your chosen cloud service provider and then installing and configuring a MySQL database on it.
  2. Subscribing to a full-fledged Database-as-a-Service (DBaaS) – meaning you get your MySQL as a service on the cloud, where you only need to connect your application to it and it works.

Maintaining scalability and high availability of your MySQL database is challenging even in your physical data center, and even more so in the cloud. The “stateless” and dynamic nature of the cloud poses unique challenges for the “stateful” database tier – which is the most sensitive and critical part of the application, and the hardest to scale.

Databases in the cloud are inherently different than traditional installs. When choosing the “Do-it-Yourself” approach, the developer must monitor the DB and manually ensure reliable service and elasticity. When choosing a DBaaS solution that was designed specifically for the cloud, the developer is spared much of the hassles of the tedious ongoing DB management tasks and operations, as those are automatically handled by the service itself.

In this section we explain the ins and outs of each of these options (Do-it-Yourself vs. DBaaS), and how they work on two major cloud providers – Amazon EC2 and Rackspace, as well as on the Heroku and Engine Yard’s Orchestra cloud platforms.

MySQL on EC2

MySQL cloud – Amazon

Running MySQL on the Amazon Cloud

Here is how each of the basic options work on Amazon’s cloud offering:

Deployment Option Pros Cons
Do-it-Yourself:

You can rent a machine instance on Amazon EC2 and install MySQL on it. You’ll pay for the compute capacity and the bandwidth, and you’ll have full responsibility to configure, update and maintain the MySQL cloud deployments. If you need to scale beyond a single machine, you’ll need to configure a MySQL cluster on your own, which is pretty complex as is, but even more so on the cloud.
  • Very simple for small applications – if your DB can be hosted along with your application (say on an EC2 Micro-instance) and you can make do with one DB instance.
  • In most cases it can be cheaper than a database-as-a-service, because you’re only paying for the machine instance and MySQL is free.
  • Can be highly complex to scale beyond a single machine
  • Not highly available – Amazon does not guarantee uptime for machine instances. You’ll need to set up replication and failover handling on your own
  • Software updates and maintenance is on you.

Full Comparison Table:

  • See our EC2 MySQL comparison table for a full comparison between “Do-it-Yourself” on Amazon EC2 and Xeround’s cloud database offering.
Database-as-a-Service:

If you want MySQL as a service on the Amazon cloud, your options are Amazon’s Relational Database Service (RDS), and Xeround’s Cloud Database. Both will give you a MySQL database out of the box, with no need to install or configure anything. You can connect to the database from on-cloud and off-cloud applications.
  • Very simple – period.
  • Fast deployment, no special skills required
  • Highly scalable (subject to the limitations of the service you choose)
  • Highly available (subject to the limitations of the service you choose)
  • More expensive than a plain machine instance – you pay for the application hosting – computing power, bandwidth, data transferred, and additionally for the database service itself
  • Scalability might be limited by the specific implementation of MySQL on EC2
  • You might be at risk of downtime – read the fine print

Full Comparison Table:

  • See the Amazon RDS comparison table to see how RDS goes head-to-head with Xeround on issues like as scalability, availability, clustering and cost.
  • See the RDS performance benchmark to learn how RDS compares to Xeround in throughput and latency as the number of concurrent users grows.

MySQL on Rackspace


MySQL cloud – Rackspace

Running MySQL on the RackSpace Cloud

  • Do it Yourself – you can rent a machine instance on Rackspace Cloud and install MySQL on it. Like on Amazon EC2, you’ll pay for the instance and the bandwidth, and you’ll need to install, configure, update and maintain your MySQL database yourself. If you need to grow beyond a single machine, you’ll run into the complexity of MySQL clustering (and load balancing between the replicase).
  • Managed MySQL Installation – RackSpace offers a solution for managing your MySQL installation on the cloud, “on a time and materials basis”. For an additional fee, their experts can set up the MySQL cluster and manage it on your behalf.
  • Database as a Service – unlike Amazon EC2, Rackspace does not provide its own DBaaS solution. Xeround’s cloud database fully supports Rackspace and is the only elastic cloud DB for MySQL applications hosted on the Rackspace Cloud. See our Rackspace MySQL section for more details.

MySQL on Heroku

MySQL cloud – Heroku

Running MySQL with Your Heroku application

  • Do it Yourself – at the risk of repeating ourselves, just like with Amazon and RackSpace, you can create your Ruby application on the Heroku platofrm, then independently install and configure your MySQL database on Amazon EC2 East (where your Heroku app is also deployed), and connect your DB to your Heroku app.
  • Database-as-a-Service – Using Heroku add-ons you can hook up your Heroku application to Xeround’s Cloud Database (a similar Add-on also exists for Amazon RDS). Xeround is the only horizontally scalable MySQL DB available on the Heroku platform – allowing you to automatically scale out/in and maintain always-on availability. To read more about Xeround’s Heroku support visit our Heroku MySQL section.

GETTING STARTED WITH XEROUND CLOUD DATABASE IS EASY!
MySQL cloud – start free trial

Follow Us:

  • News & Recent Blog Posts
  • May 15, 2012 - New Add-Ons Available: Get Your Xeround Cloud Database on..
  • May 15, 2012 - Xeround Adds AppHarbor and PHP Fog Integration to its Cloud..
  • May 13, 2012 - Podcast: Database In The Cloud – Which Option Is Best?
  • May 10, 2012 - Xeround Announces Availability of Popular Cloud Database on..

Developed by: CodeArt