Building on the cloud-native storage support from its X4 Enterprise platform, MariaDB is now going live with SkySQL, it's managed cloud Database-as-a-Service (DBaaS). Coming into the market several years after AWS and Azure introduced their own MariaDB cloud services, the company is differentiating SkySQL as a combined transaction and analytics platform.
And MariaDB is charting a different path to market with SkySQL; while it ultimately plans to run on all three major public clouds, it is debuting with Google Cloud Platform (GCP). That's a reflection of GCP's open source data platform partnership program, for which MariaDB will be joining. This was one of the announcements that was originally planned for Google Cloud NEXT, which was supposed to run next week, but has been indefinitely postponed because of the coronavirus. But MariaDB is still proceeding ahead full bore with the new service.
As an open source database, MariaDB is facing familiar challenges of differentiating with major cloud providers that already have well-established competing services of the same platform – in this case Amazon RDS for MariaDB and Azure Database for MariaDB. And the strategy echoes that of players like MongoDB, Redis, and Elasticsearch: namely, offer more current versions and more deluxe (or different) features.
So it starts with platform version: out of the gate, SkySQL will be a single dot release (10.4 vs 10.3 for AWS and Azure) ahead, and is promising to get to the next 10.5 release as soon as the open source project community declares it production-stable. Clearly, feature differences relating to release version will be constantly moving targets; for now, it means that, for instance, 10.4's addition of application time periods in 10.4 that supplement the temporal tables capability introduced in 10.3.
There are other more foundational differences that fit the deluxe theme. As noted above, there is the paired analytics and transactional support, courtesy of the column store that only comes with MariaDB Enterprise, and the plug-in architecture that makes it more of a real-time component that came with the X4 version back in January. That includes the smart transactions feature, which selectively routes queries to row or column stores based on heuristics. There is MaxScale, a proxy that abstracts high availability, scalability, and security from the underlying database, allowing more operational simplicity. The enterprise version also allows more indexes, up to 128 per table. And, although not a differentiator yet, MariaDB promises that SkySQL will support multi-master distributed transaction processing "soon."
There are a couple of key elements to SkySQL: the X4 platform and the cloud-native, Kubernetes-based architecture. Big on Data bro Andrew Brust provided the lowdown on X4 back in January. X4 marked the culmination of a year-long journey that MariaDB underwent to unify its platform, as we outlined almost exactly a year ago. The finished product converged transactions and analytics, so instead of relying on change-data-capture to feed the analytics engine, the storage engines are now plug-ins to a common platform where ingested data is persisted concurrently in the row and column stores.
But another key to SkySQL is the cloud-native architecture based on a full implementation of Kubernetes that will ultimately allow more flexibility for scaling up or down. It's the type of advantage that DBaaS services coming late to the game can also benefit from starting with more advanced technology baselines.
For MariaDB SkySQL, starting with Kubernetes and microservices out of the gate enables them to take advantage of building an elastic and more secure control plane without having to invent it, and it also potentially makes the service more extensible to third party solutions. That could make a difference down the road, given the trend of data warehousing managed services expanding their footprint as one-stop shops for related processes in cleansing, integrating, and transforming data, and providing self-service analytics. That's where Microsoft, Oracle, and SAP are setting the tone. This would provide a golden opportunity for MariaDB to expand its partnership with Google Cloud, bundling Kubernetes, Cloud Functions, or the portfolio of analytics and AI services.
At the infrastructure level, cloud-native also means SkySQL embraces separation of compute from storage, with row-based transactional row tables on block storage while the column store sits on S3-compatble cloud object storage. For now, SkySQL will require at least one active engine, but in the future, it will be fully elastic, meaning that compute could be turned off.
If follows a modular architecture that leverages ServiceNow for configuration and management of workflows, a separate server for based on open source Grafana dashboard and Prometheus log event monitoring as the operational management console, and then the database, run in a Kubernetes cluster. So, for instance, when there is the need to ramp compute up or down. MaxScale manages the request, which is then executed through an orchestrated workflow in Kubernetes.
For MariaDB the company, this is not the first stab at a cloud service. The original offering, MariaDB Managed Service, was a white-glove service akin to traditional hosted services that was not suited for serving a larger customer base. SkySQL is designed more on a self-service model, but is also designed for greater scale. It supports failover across multiple availability zones, self-healing, load balancing for reads, and encryption of data on the wire and at rest.
As noted above, SkySQL initially rolls out on the Google Cloud, with AWS and Azure to come later at dates to be specified.