Relational databases tend not to scale very well, either inside or outside the cloud. Developers can’t be sure how big those applications will grow, or how many people will end up accessing them.
Many a cloud-application developer will end up performing an unnatural act known as “sharding” to either get the database to scale or deploy more databases. In either case, the cost of managing the overall environment increases in direct proportion to the complexity of the environment.
To get around this issue, cloud developers have increasingly turned to databases not based on relational architectures. Some of those database architectures support SQL, but just as many promote a NoSQL agenda using platforms such as Hadoop, CouchDB, MongoDB or proprietary object-oriented databases. Because of a shortage of expertise with these platforms, many organizations opt to invoke these databases as a service in the cloud, rather than deploying and managing the databases on their own.
There are multiple instances of database services, with four of the better-known ones offered by Amazon, Xeround, IBM and Database.com, a unit of Salesforce.com. Xeround, for example, just announced that a free version of its database for MySQL applications is now available on the Rackspace cloud computing platform, in addition to existing support for Amazon, Joyent, Heroku and Hewlett-Packard amongst others.
Another lesser-known players making a move in this same space is Cloudant, which offers a database service, based on a NoSQL CouchDB platform, that currently supports over 7,000 users worldwide. According to Cloudant founder and chief scientist Mike Miller, what makes the Cloudant approach different is its distributed implementation of a CouchDB architecture that now spans multiple data centers across the globe. “That allows us to distribute data as close the edge as possible in order to make sure latency stays low,” he said.
One Cloudant customer is Meteor Solutions, a provider of an online analytics service that helps companies identify which content on their Websites most successfully drives additional sales and new customer acquisitions. According to Meteor Solutions CEO Ben Straley, the service was originally built on top of an open-source PostgreSQL database that, while providing the benefits of a low-cost platform on which to launch the service, did not scale all that well. “Now we can handle larger data sets,” he said, “and the transition of Cloudant was relatively painless.”
The database-as-a-service phenomenon is not confined to NoSQL databases. Clustrix, for example, has developed a SQL database that runs on a parallel processing engine. That database is now available as a service on the Rackspace cloud. According to Clustrix CTO Sergei Tsarev, the company’s parallel processing engine allows Clustrix to address petabytes of data without having to completely rewrite their SQL applications.
But as interest in NoSQL approaches continues to grow, the easiest way to gain experience with the technology is to access those databases via a cloud-computing platform that eliminates the need to acquire a lot of dedicated infrastructure.
Not everyone sees the need to rely on databases delivered as service when deploying a NoSQL database in the cloud. For example, Alteryx, a provider of analytics software, is building out a cloud service based on its software—and rather than rely on a database service, Alteryx president and chief operating officer George Mathew said it was more cost-effective to use the open-source NoSQL MongoDB database and deploy it on an Amazon cloud platform themselves.
“It was just something we could clearly just do ourselves,” he said. “Plus we wanted to make sure we had control of the data.”
But there’s also a shortage of talent when it comes to any type of NoSQL database. Holding onto IT professionals with the right skills is often a challenge. As a result, many organizations will need to rely on a database service—at least until the amount of NoSQL database expertise increases.
That’s not to say that managing a NoSQL database is anywhere near as complex as traditional relational databases that require an expensive database administrator. But it does mean that, in the absence of any NoSQL expertise, a database service provider is likely the surest, safest bet for the average enterprise IT organization.