Databases in the cloud - all you need to know
RDBMS or NoSQL, IaaS or PaaS? Putting a database in the cloud is not always a simple process
Putting your database in the cloud isn’t just about moving database structures and datasets. The company CIO needs to assess what kind of database he or she needs in the cloud. And to do this, CIOs need to know what databases will work in the cloud as this will have implications for the organisation’s applications and workloads as well as what the IT organisation needs to do to keep the whole thing going.
When architecting your cloud, it is important to know where any databases are going to fit in within the infrastructure. It's also important to know whether you use the opportunity to move to new database architectures or just simply migrate your legacy one to the cloud. This could have a bearing on its subsequent operation.
Fitting it in the cloud
Sandor Klein, EMEA sales director at Postgres database company EnterpriseDB says it is important to know how a traditional database will work in the cloud, which will be different from a cloud-native database. There is a fundamental distinction between your existing database (which happens to have been moved to the cloud) and a ‘cloud database’ that was designed to realise all of the promised benefits of cloud technology – like horizontal and vertical scalability and elasticity, ease-of-use, backup, low cost and infinite resources, he says.
“For many database vendors, the cloud has become simply another delivery channel for the standard datacenter version of their products,” says Klein. “A true cloud database should have the flexibility to take advantage of additional resources, such as server, power and network capacity, and release them as needed in response to fluctuations in demand for processing power.”
He says that this should happen automatically, without requiring database administrators (DBAs) to intervene in emergencies or constantly monitor activity. “A database merely ‘in the cloud’ still requires human intervention to add resources and to release them,” he says.
Another important consideration is that the cloud isn’t a “fix-all” solution to database management, according to Chris Patterson, cloud and hosting services product manager at managed cloud provider NaviSite. “One of the main limitations of putting databases in the cloud is it isn’t yet suitable for hosting very large databases. A physical infrastructure is still the best for mass scale,” he says.
Cloud Pro Newsletter
Stay up to date with the latest news and analysis from the world of cloud computing with our twice-weekly newsletter
He adds that companies who do want to put databases in the cloud must think ‘wide not tall’. “Rather than adding ‘vertically’ to one central database they need to grow ‘horizontally’ and link multiple smaller databases built in the cloud. This way they can control costs and also cover multiple geographic locations,” he says.
A database on IaaS or PaaS
When executing your organisation’s database strategy it is important to consider whether this will be an IaaS or PaaS implementation. A decision between IaaS and PaaS will generally depend on the type of database and the expertise in the business, according to Joe Gardiner, product head at cloud hosting firm CatN
“IaaS is becoming more and more commoditised so it can appear an inexpensive option. However, the expertise required to configure a scalable and resilient environment on IaaS for a production database are not to be underestimated and are rarely cheap,” says Gardiner.
Gardiner adds that PaaS can be a good option due to its plug and play nature and automatic scalability, but there are very few PaaS providers capable of providing an environment for a critical e-commerce database.
“PaaS works well for MongoDB, MySQL and Redis but there is work to be done in the traditionally Enterprise database space.”
Looking beyond open source and proprietary
Generally speaking, open source databases are more commonly-supported on cloud services. Licensed or closed source databases normally have specific hosting providers focusing on that single technology, according to Gardiner.
“Choosing a database solution is best done when considering the role it will perform - Redis for example is particularly good for storing and manipulating very large data sets,” he says. “The benefits of open source have been written about exhaustively, but in particular if you are looking to reduce licensing costs then it is an obvious choice.”
But should organisations base a choice to implement a database on the cloud just on whether or not they are open source? Klein thinks not.
“It’s about whether the vendor or the development community acknowledges the benefits and possibilities of the cloud and the needs of cloud customers and then adapts their offerings for those environment,” says Klein.
He adds that recent history shows that traditional, proprietary vendors have been slow to adapt their products to the cloud. “Many of their business processes, for example, don’t migrate well to the cloud usage model and they risk losing revenue,” he says.
Getting your database to scale in the cloud
Robin Schumacher, vice president of Products at DataStax says organisations need to implement a database that scales well regardless of environment. “If it can’t scale on-premise, moving to the cloud won’t bring any special magic to make that happen,” he says.
Schumacher adds that organisations must also make sure that the database in question scales both reads and writes. “A lot of legacy databases use master-slave architectures with replication to try and scale read operations, but the master is still a write bottleneck,” he says. “By contrast, a masterless architecture like Cassandra delivers linear scaling capabilities for both reads and writes, allowing any node in a cluster to be written to and read from.”
Gardiner says how you scale your database depends on whether you have implemented it on IaaS or PaaS.
“When using an IaaS cloud it is important to make the database intelligent enough to spin up additional instances as load increases - of course they need to be shut down when not needed to keep costs under control,” he says, Making this automatic is vital to ensure no service disruption, as demand increases, and that no human intervention is required.
With PaaS it may be necessary to automate instance creation, however some next generation PaaS providers now offer platforms that scale automatically with no interaction required from the customer. “PaaS is no longer just a managed application environment; more granular infrastructure control is also now being offered as an integrated managed service,” he says.
Gardiner adds that with a database implemented in the cloud it is “incredibly important” to implement event-based monitoring. “This can be used to alert engineers of issues, but more importantly a second layer of intelligence for adjusting infrastructure using the cloud service API as required.”
The set-up and customisation process in implementing a cloud database should provide, upfront, a range of parameters that guide how the database should respond to spikes in demand, says Klein. “These parameters may include thresholds that determine on an application-by-application basis how and when to respond to unpredictable demands for additional compute resources and storage,” he adds.
Moving forward
Once the foundation has been set with a database that can exploit all the capabilities supplied by the cloud, an organisation may then want to be able to extend how they use the data they store in the cloud. But will the future be relational or NoSQL?
Schumacher says he is seeing many companies migrating from relational databases to NoSQL databases to lay the proper foundation in the cloud.
“To help smooth this transition, it is important for NoSQL database providers to give developers the tools they need for an easy migration. On the developer side, individuals will start thinking differently about their data models, as they break free from a relational mindset,” he says.
But Patterson says there will always be a place for the likes of Oracle and Microsoft. “They are recognising a shift and are adapting. There is a place for both types of databases and I predict that in 10 years they will both still be around,” he says.
Rene Millman is a freelance writer and broadcaster who covers cybersecurity, AI, IoT, and the cloud. He also works as a contributing analyst at GigaOm and has previously worked as an analyst for Gartner covering the infrastructure market. He has made numerous television appearances to give his views and expertise on technology trends and companies that affect and shape our lives. You can follow Rene Millman on Twitter.