Open source databases enjoy great popularity and are widely used, especially for the implementation of operational use cases. They are inexpensive to license and easy to obtain, already part of an operating system or increasingly used via the cloud.
At the end of March 2020, MariaDB launched the database service SkySQL. SkySQL offers all the functionality of the MariaDB platform and can be obtained from all major cloud providers. It can be operated cloud-agnostically, which is an interesting option for those who do not want to tie themselves too closely to a single cloud provider. We have taken this new release as an opportunity to get to know MariaDB.
MariaDB is a well-known open source database. The community edition of the database can be obtained from the MariaDB Foundation. Compared to MariaDB Foundation, MariaDB Corporation (the commercial division) offers support and additional features and aims to make the database “enterprise ready”.
These additional functions are also open source but, according to MariaDB, they are usually reserved exclusively for paying customers for the first two years. The community edition of MariaDB is available completely free of charge. Since March 2020, MariaDB with SkySQL is now also a player in the database-as-a-service league.
MariaDB has its origins in MySQL and was founded as an independent company in 2012. Today, the company has about 300 employees worldwide and earns its money mainly from support and subscriptions. MariaDB Corporation is both a software and service provider. Its services are wide-ranging, spanning technical maintenance, database administration and training to designing and implementing database landscapes and providing enterprise architects as a dedicated resource.
MariaDB is often used in its free open source variant in relational database mode for operational use cases. Customers often come from the Oracle world or from using other proprietary databases and migrate to MariaDB. The main reasons for migrating to MariaDB, analogous to the reasons for open source in general, are to be found in cost savings, avoidance of vendor lock-in and in the development power provided by the community. Many of the use cases are not even known.
Due to the simple, non-binding purchase from the cloud or via download, the database is quickly installed (but also quickly uninstalled again) and widely distributed. Companies that want to use MariaDB strategically as a database get the necessary support, quality assurance and additional functions through their subscription.
Brief overview: MariaDB, the database
The database itself can do much more than “operational”. MariaDB is a “multi-purpose” database that can support in several scenarios. It offers special engines for different operational and analytical workloads and allows the parallel use of different engines in a cluster:
- the relational engine for read/write access;
- a wide-column engine for use cases in which large amounts of structured – but also unstructured – data can be read/written;
- a document store, to support the analysis of unstructured data; and
- the Column Store Engine, which is query optimized for analysis.
MariaDB can be operated in a massively parallel architecture (MPP). Each node in the architecture can have a different engine. The data in the different engines can also be queried in combination. MaxScale is an essential component for setting up the cluster architecture. It is a kind of intelligent proxy server and sits between the database servers and the client.
Through MaxScale, client applications, for example, can talk to the database servers like a database. MaxScale accepts queries, analyzes them and forwards them to the appropriate nodes. It also enables simple horizontal scaling of the cluster.
Along with PostgreSQL and MySQL, MariaDB is one of the well-known relational open source databases. MariaDB follows the development that many database vendors are following and offers a data storage platform with multiple engines that can be used to implement different application scenarios. Open source databases have been well received, but so far we see little spread of these databases as a central platform, for example, for data warehousing or as data lake.
Instead, we are observing their use in the operational environment or as a database for the implementation of special applications with small to very large amounts of data. In terms of performance, open source databases have evolved and offer real alternatives depending on the application scenario. One good step has been the opening of MariaDB towards the cloud.
The big hyperscalers such as Amazon, Google and Microsoft offer enough choice of database services. But the concept of being able to build the architecture independently of the cloud platform is appealing.