MariaDB database server has some better features included by default compared with MySQL

Thu, Jan 31, 2013 at 2:10AM

After looking into MariaDB more tonight, I found that some of its included features are indeed very nice.

I read that Craigslist uses Sphinx search server for keyword searches and that you can integrate Sphinx with MySQL.   This makes it easier to maintain your data since Sphinx uses the same ids as your regular mysql tables.

The MySQL/MariaDB database integration also allows Sphinx to rebuild its indexes more quickly.

I was able to setup Sphinx and MariaDB tonight without having to do anything arcane to get them working.  

MySQL can use sphinx too, but it is not possible to add sphinx to MySQL without recompiling it or finding a copy that someone else compiled for you - it can be difficult to compile software since you often need dozens of other programs installed and to understand more about how it works.   MariaDB comes with this feature ready to go.

The people at Percona also develop and manage community enhancements to MySQL and particularly the Innodb table engine, which they release as Percona Server, but MariaDB also uses their features as well.   Mysql is not able to run the enhancements from Percona without having to be re-compiled.    MariaDB includes these Percona enhancements to innodb and makes them the default.   This is part of why people are finding MariaDB to be faster.   Percona also writes the most informative blog about MySQL performance, and I've probably read dozens of their articles in the past when trying to figure out ways to make MySQL faster.

Keyword search results are quite a bit different when you use a dedicated search server - they are more accurate and configurable.   MySQL is considered inferior for this task and can be up to 10 times slower then Sphinx for keyword searches.   However, MySQL is still great when you are using it for relational queries and simpler searches.

I plan on switching to MariaDB as soon as I can.

More resources:

Update on February 3rd: I was able to see that my application loads fine without any changes required when going from MySQL 5.6 RC to MariaDB 5.5.  I may be able to complete migration on the live server after using it on my test server for the next few days/weeks.

Bookmark & Share