In the big data world the relational database -- where data is stored in a traditional row and column table format -- tends to get second billing to the newer, shinier unstructured data stores like NoSQL and open source solutions like Apache Hadoop and Hive.
This shouldn't be the case in the cloud though, as vendors like Amazon Web Services (AWS), Microsoft and Google are looking to help businesses shift their traditional relational databases using their elastic cloud storage and compute capabilities.
As is the general trend, enterprise customers are increasingly comfortable with cloud adoption, specifically the public cloud with the big three providers.
Security and compliance concerns which would have put large, regulated customers off in the past are starting to move core systems and data into the cloud, and that includes relational databases.
Tony Baer, principal analyst at Ovum says that moving a transactional database is probably the last thing an organisation wants to migrate as part of an overarching cloud strategy, but it will have to happen at some stage.
"Not all organisations will be ready to go all cloud. The other thing you will start to see is the importance of multi-cloud as I don't think large organisations will want to be solely dependent on a single cloud provider," he said.
The advantages of using a relational database in the cloud is that it is a familiar, and popular format - especially for data analytics - while also accelerating the business by leveraging the cloud to bring down cost and increase speed and scalability. This allows businesses to get the most out of existing licenses with, say, Oracle, while also advancing a cloud strategy.
As cloud storage is cheap, organisations willing to move their database to the cloud can take advantage of multiple replication for backups, six at minimum with most providers, to get much improved failover. And if you don't think this is important just talk to
Then there is the advantage of not having to manage and administer your own database as the cloud providers offer database-as-a-service (DaaS).
Here are 12 of the best relational databases options to be run in the cloud:
1. AWS Aurora
Aurora is Amazon Web Service's (AWS) own relational database, which is built to be used in the cloud. It is architected for high performance and concurrent users, and is highly durable, with six copies for multiple failover procedures.
Speaking at the AWS Summit in London in June 2017, Amazon CTO Werner Vogels said that the database is the “fastest growing service” AWS has ever released. This proves that “old world databases are customer unfriendly”, according to Vogels. Aurora customers include Netflix, Expedia and Finra.
2. AWS RDS
AWS also offers its
relational database service (RDS) for running a relational database, or porting your existing database, onto its elastic cloud storage, be it either Aurora or popular commercial engines like Oracle Database and Microsoft SQL Server, or the open source PostgreSQL, MySQL or MariaDB.
RDS is database-as-a-service, freeing up IT teams from non-value add administrative tasks as there is no need to host the database on-premise. It is also scalable, faster and cheaper because it is hosted on AWS' commoditised cloud storage. The trade off comes in the form of control, as AWS manages the underlying database.
AWS claims to have shifted 28,000 databases to either Aurora or RDS through the Database Migration Service (DMS) service to date.
3. Snowflake Computing
© Snowflake Computing
The newest vendor of cloud-native relational databases is
Snowflake Computing from San Mateo, California. The Snowflake CEO says he set up the company because simply porting an existing SQL database into the cloud isn't sufficient.
Snowflake is a new entrant to the relational database market with its “purpose-built data warehouse for the cloud”. It is actually built on AWS S3 and EC2 but claims to set itself apart with its unique architecture, which allows for fast access even with high numbers of concurrent users.
Read next: What is Snowflake Computing and who are its customers?
“It has been a slog to get the skills that make it work and to implement and maintain these data solutions,” he said. “They are like wild animals that need to be tamed on a daily basis and you never know when that lion will bite your hand off.”
Instead, Snowflake is “built from scratch. A solution designed to work in the cloud and take advantage of that effectively infinite resource”, Muglia said.
4. Oracle Database Cloud Service
Larry Ellison build Oracle on the back of its relational database technology and it now offers its flagship Oracle Database in the cloud, although preferably their cloud not AWS, Azure or Google.
Oracle Database Cloud Service includes elastic database services for application development, test and production deployment. The service delivers an easy to use web console user interface and RESTful API to provision and administer an Oracle Database on Oracle's own Compute Cloud.
The advantages of Oracle come in the form of familiarity but with added speed, elasticity, security, durability and lower maintenance requirements. Customers can hand over management to Oracle or control the underlying database themselves with some added automation options. It also allows existing customers to push forward with a cloud strategy despite being locked in to a long contract with the vendor.
Oracle has also embraced a more modern, cloud-y architecture in its latest release,
introducing sharding for organisations running on a microservices architecture.
5. Microsoft SQL Server
The beloved open source project by Monty Widenius, David Axmark and Allan Larsson
MySQL is the leader in the relational database space according to research firm G2 Crowd.
Now owned by Oracle following its acquisition of Sun Microsystems, MySQL is still an open source software and can be run on all the major cloud provider's infrastructure, from AWS to Google and Azure.
MariaDB was created by some of the original developers of MySQL following the Oracle acquisition. The beauty of MariaDB is that it is functionally similar to a MySQL or Oracle relational database, so users get the advantage of having a familiar feeling technology but without the lock in and lack of transparency you get with the legacy vendor. It is built to be highly resilient to server failure and can be run as-a-service.
Shane Johnson, senior director of product marketing at Maria DB told Computerworld UK that its customers see hybrid cloud as the priority at this time, "so some data on premise, some in the cloud, sometimes in both.
They want flexibility here, so having database-as-a-service across their data centre and public cloud infrastructure in transparent way" he said.
MariaDB is infrastructure agnostic, so customers can choose where they deploy the database, be that on premise, hybrid cloud, public cloud or multi-cloud. It is built to be easily portable, to avoid vendor lock in.
PostgreSQL is a popular open source object-relational database system which can be run on AWS public cloud through the RDS service, as well as Azure and Google Cloud. PostgreSQL is enterprise class, with high performance and fault tolerance, and is fully ACID compliant.
9. SAP HANA
SAP's HANA data store is a different architecture to your classic relational database and runs in-memory, meaning data is stored in columns instead of rows, which allows for faster, nearer to real-time analytics and compute. HANA supports industry standards like structured query language (SQL) and multi-dimensional eXpressions (MDX).
SAP Cloud Platform HANAservice provides in-memory and relational data persistence to apps which can be run on any of the big three public cloud providers or SAP's own cloud platforms, S/4HANA & S/4HANA Cloud. In addition to managing and providing access to the HANA databases, SAP offers persistence services for better backup, recovery and load balancing.
Data warehouse specialists Teradata offers a range of relational database services, including its own managed cloud offering called
Marc Clark, director of cloud strategy and evangelist at Teradata told Computerworld UK that its customers tend to be on premise, and the appetite tends to lean more towards hybrid cloud deployments.
"Our customers mostly have the opportunity to deploy Teradata where they want to, so we built our own cloud using our own hardware," he said. "Many customers want cloud-like deployment and over the last few years have deployed on AWS and Azure. So customers get to pick where they want to consume." Clark says that it isn't available on Google Cloud yet as customers simply haven't been asking for it.
Clark admits that the Teradata functionality remains the same wether run on premise, on Intellicloud or public cloud. He recognises that this may need to change though, and the company is rearchitecting to be more cloud-friendly -- by separating compute and storage -- for its 16.0 release.
11. Google Cloud SQL
Google has a range of cloud-based data solutions (Bigtable, Cloud Spanner, Cloud Datastore), including
Cloud SQL, where companies can run an MySQL of PostgreSQL (currently in beta) relational database on the Google Cloud Platform.
© Enterprise DB
Marc Linster, SVP of products at EnterpriseDB told Computerworld UK that its large customers are still reluctant to move significant production systems to the public cloud, with the current appetite being for private or hybrid cloud. EnterpriseDB specialises in helping large customers break up their monolithic databases into something more agile and suited to microservices. "So a shift in mindset as well as infrastructure," as Linster said.
"We focus on allowing customers to do the hybrid cloud and choose their cloud mechanism, as they wish to avoid the lock in that would happen if you commit entirely to one public cloud provider," he said. "Where we see interest is to use your database-as-a-service play on AWS or OpenStack without losing control or having the concerns about security."