On MariaDB Platform X5. Q&A with Shane Johnson
Shane Johnson is Senior Director of Product Marketing at MariaDB Corporation. Prior to MariaDB, he led product and technical marketing at Couchbase. In the past, he performed technical roles in development, architecture and evangelism at Red Hat and other companies. His background is in Java and distributed systems.
Q1. You have recently announced the general availability of MariaDB Platform X5. What is it?
MariaDB Platform X5 is the culmination of a multi-year effort to not only bring together transactions and analytics – which started with MariaDB Platform X3 – but to support both at any scale. MariaDB Platform X5 can now scale to millions of transactions per second thanks to the addition of distributed SQL via the Xpand smart engine. Also, the ColumnStore smart engine is fully integrated, making it easier than ever to take advantage of distributed, columnar data for interactive, ad hoc analytics on billions of rows.
Q2. New to MariaDB Platform X5 is the Xpand smart engine. How does it work?
Xpand adds distributed tables, indexes, queries and transactions to MariaDB Platform for massive scalability. It automatically splits tables and indexes into partitions, spreading them across all database instances to ensure optimal data and workload distribution at all times. It then uses distributed queries, transactions and consensus to read and write data with strong consistency – which is completely transparent to applications. Of course, not all tables have to be distributed with Xpand. A database can be replicated (InnoDB), columnar (ColumnStore) and distributed (Xpand), and they can all be queried with joins.
Q3. In this release, the role of HA orchestration was extended. What are the new features?
MariaDB MaxScale is a core component of MariaDB Platform. It sits between applications and database instances. From this unique position, it can load balance queries, perform automatic failover, block suspicious queries and mask personal/sensitive information so applications don’t have to worry about them. In order to provide complete HA, there must be at least two instances of MaxScale. In past releases, additional software was needed to help multiple MaxScale instances coordinate with each other – that is to say, only one can take on the responsibility of making changes to the underlying database instances (i.e., automatic failover). MariaDB Platform X5 introduces cooperative monitoring, enabling MaxScale instances to use exclusive locks in MariaDB Enterprise Server to coordinate.
Q4. Do you have a published benchmark to show the InnoDB improved performance?
We benchmarked the most recent version of MariaDB to see how it performs on commonly available cloud configurations. While it’s not InnoDB-specific, it does show how well MariaDB scales and performs with increasing load on the system compared to the latest version of MySQL – delivering higher throughput and lower latency with the same resources. You can read the full benchmark here.
Q5. What kind of ColumnStore improvements did you do?
The goal of MariaDB Platform X5 was to make ColumnStore easier to use. In past releases, it had its own post-installation and configuration scripts. We removed those. It also had its own cluster management scripts. We replaced those with a REST service used by MaxScale. Now, using ColumnStore is as easy as installing the ColumnStore package.
Q6. Can you please tell us how the Apache Kafka and Redis integrations work?
MaxScale can publish all database changes, schema and data to Apache Kafka topics. This is a critical feature as many enterprises use Kafka for data integration and streaming, and MariaDB Platform is the source of truth for transactional data. MaxScale captures database changes, converts them into JSON documents and publishes to Kafka.
The Redis integration is an extension of MaxScale’s query result caching feature – it speeds up repetitive queries with memory and reduces the workload on the database. In past releases, MaxScale was limited to its own local memory, and multiple instances would each have their own copy. Now, multiple MaxScale instances can share the same query results cache stored in Redis. This can not only provide MaxScale with much more memory, but also make the memory usage much more efficient.
Q7. What is the availability of MariaDB Platform X5?
It’s available today for all MariaDB customers and will be available in MariaDB SkySQL, our database-as-a-service (DBaaS) offering soon. You can get MariaDB Enterprise Server 10.5, a core component of MariaDB Platform X5, in SkySQL today.
Qx Anything else you wish to add?
The promise of MariaDB Platform was to deliver a complete database solution capable of handling any workload at any scale, and MariaDB Platform X5 delivers on that promise. This versatility comes from its unique architecture, allowing it to support analytics with columnar storage and/or massive scale with distributed SQL using smart engines. As a result, customers don’t need to worry about upgrading or changing databases when their business grows, they can simply turn on one or more of these smart engines to boost workloads.
Sponsored by MariaDB