MariaDB and MaxScale
I chatted with the MariaDB folks on Tuesday. Let me start by noting:
- MariaDB, the product, is a MySQL fork.
- MariaDB, product and company alike, are essentially a reaction to Oracle’s acquisition of MySQL. A lot of the key players are previously from MySQL.
- MariaDB, the company, is the former SkySQL …
- … which acquired or is the surviving entity of a merger with The Monty Program, which originated MariaDB. According to Wikipedia, something called the MariaDB Foundation is also in the mix.
- I get the impression SkySQL mainly provided services around MySQL, especially remote DBA.
- It appears that a lot of MariaDB’s technical differentiation going forward is planned to be in a companion product called MaxScale, which was released into Version 1.0 general availability earlier this year.
The numbers around MariaDB are a little vague. I was given the figure that there were ~500 customers total, but I couldn’t figure out what they were customers for. Remote DBA services? MariaDB support subscriptions? Something else? I presume there are some customers in each category, but I don’t know the mix. Other notes on MariaDB the company are:
- ~80 people in ~15 countries.
- 20-25 engineers, which hopefully doesn’t count a few field support people.
- “Tiny” headquarters in Helsinki.
- Business leadership growing in the US and especially the SF area.
MariaDB, the company, also has an OEM business. Part of their pitch is licensing for connectors — specifically LGPL — that hopefully gets around some of the legal headaches for MySQL engine suppliers.
MaxScale is a proxy, which starts out by intercepting and parsing MariaDB queries.
- As you might guess, MaxScale has a sharding story.
- All MaxScale sharding is transparent.
- Right now MaxScale sharding is “schema-based”, which I interpret to mean as different tables potentially being on different servers.
- Planned to come soon is “key-based” sharding, which I interpret to mean as the kind of sharding that lets you scale a table across multiple servers without the application needing to know that is happening.
- I didn’t ask about join performance when tables are key-sharded.
- MaxScale includes a firewall.
- MaxScale has 5 “well-defined” APIs, which were described as:
- Authentication.
- Protocol.
- Monitoring.
- Routing.
- Filtering/logging.
- I think MaxScale’s development schedule is “asynchronous” from that of the MariaDB product.
- Further, MaxScale has a “plug-in” architecture that is said to make it easy to extend.
- One plug-in on the roadmap is replication into Hadoop-based tables. (I think “into” is correct.)
I had trouble figuring out the differences between MariaDB’s free and enterprise editions. Specifically, I thought I heard that there were no feature differences, but I also thought I heard examples of feature differences. Further, there are third-party products included, but plans to replace some of those with in-house developed products in the future.
A few more notes:
- MariaDB’s optimizer is rewritten vs. MySQL.
- Like other vendors before it, MariaDB has gotten bored with its old version numbering scheme and jumped to 10.0.
- One of the storage engines MariaDB ships is TokuDB. Surprisingly, TokuDB’s most appreciated benefit seems to be compression, not performance.
- As an example of significant outside code contributions, MariaDB cites Google contributing whole-database encryption into what will be MariaDB 10.1.
- Online schema change is on the roadmap.
- There’s ~$20 million of venture capital in the backstory.
- Engineering is mainly in Germany, Eastern Europe, and the US.
- MariaDB Power8 performance is reportedly great (2X Intel Sandy Bridge or a little better). Power8 sales are mainly in Europe.
Comments
One Response to “MariaDB and MaxScale”
Leave a Reply
Interesting post Curt.
Wonder why does world need another sharing mysql db product when companies like Clustrix already exist? Would be interesting to know the differences.