4. MariaDB Today
● A free fork of MySQL with
extra features
● Backward compatible
● Community developed,
Enterprise ready
5. About MariaDB & MariaDB Foundation
mariadb.org
● MariaDB Foundation is
the non-profit
organisation that works
to promote MariaDB
Server and its Community
● It is sustained by
corporate and individual
sponsorship, membership
and donations
6. About MariaDB.com
mariadb.com
● mariadb.com is the home
for the commercial
offering of MariaDB
● MariaDB Enterprise
includes support, tools
and services for MariaDB
● The domain and the
website is owned and
governed by SkySQL Ab
7. About SkySQL
skysql.com
● SkySQL Ab is the leading
provider for open source
databases, services and
solutions.
● It is the home for the
founders and the original
developers of the core of
MySQL
● It provides support and
services for MySQL and
derived databases
8. Where is MariaDB?
Distributions:
● RedHat Enterprise Linux, Debian, Ubuntu, Fedora, Mageia,
openSUSE, Gentoo, Slackware, Arch, ALTLinux, TurboLinux, Chakra
Project, Kdu, …and many others.
● FreeBSD, OpenBSD
● Mac OS X with MacPorts or Homebrew
From MariaDB.org
● sources, binaries in .tar.gz or .zip (Windows)
● Windows MSI installer
● MariaDB apt and yum repositories
In the cloud
● On Amazon, OpenStack public and private clouds
9. MariaDB Timeline
● MariaDB 5.1, GA February 2010
Table elimination, new storage engines, code
cleanup, better tests, pool of threads
10. MariaDB Timeline
● MariaDB 5.1, GA February 2010
● MariaDB 5.2, GA November 2010
Table elimination, new storage engines, code
cleanup, better tests, pool of threads
Virtual columns, extended user statistics,
segmented MyISAM keycache
11. MariaDB Timeline
● MariaDB 5.1, GA February 2010
● MariaDB 5.2, GA November 2010
● MariaDB 5.3, GA February 2012
Table elimination, new storage engines, code
cleanup, better tests, pool of threads
Virtual columns, extended user statistics,
segmented MyISAM keycache
Biggest changes to optimizer (faster
subqueries, joins, etc.), microsecond precision,
faster HANDLER, dynamic columns, better
replication (group commit, etc.), HandlerSocket
12. MariaDB Timeline
● MariaDB 5.1, GA February 2010
● MariaDB 5.2, GA November 2010
● MariaDB 5.3, GA February 2012
● MariaDB 5.5, GA April 2012
Table elimination, new storage engines, code
cleanup, better tests, pool of threads
Virtual columns, extended user statistics,
segmented MyISAM keycache
Biggest changes to optimizer (faster
subqueries, joins, etc.), microsecond precision,
faster HANDLER, dynamic columns, better
replication (group commit, etc.), HandlerSocket
More efficient threadpool, non-blocking
client library, new LIMIT ROWS
EXAMINED option, extended keys for
XtraDB/InnoDB, new SphinxSE,
dynamic replication settings, lots of
security fixes, new status variables, etc.
13. MariaDB Timeline
● MariaDB 5.1, GA February 2010
● MariaDB 5.2, GA November 2010
● MariaDB 5.3, GA February 2012
● MariaDB 5.5, GA April 2012
● MariaDB Galera Cluster, GA March 2013
Table elimination, new storage engines, code
cleanup, better tests, pool of threads
Virtual columns, extended user statistics,
segmented MyISAM keycache
Biggest changes to optimizer (faster
subqueries, joins, etc.), microsecond precision,
faster HANDLER, dynamic columns, better
replication (group commit, etc.), HandlerSocket
More efficient threadpool, non-blocking
client library, new LIMIT ROWS
EXAMINED option, extended keys for
XtraDB/InnoDB, new SphinxSE,
dynamic replication settings, lots of
security fixes, new status variables, etc.
Galera Synchronous Replication
14. MariaDB Timeline
● MariaDB 5.1, GA February 2010
● MariaDB 5.2, GA November 2010
● MariaDB 5.3, GA February 2012
● MariaDB 5.5, GA April 2012
● MariaDB Galera Cluster, GA March 2013
● MariaDB 10.0.10 (March 2014)
Table elimination, ew storage engines, code
cleanup, better tests, pool of threads
Virtual columns, extended user statistics,
segmented MyISAM keycache
Biggest changes to optimizer (faster
subqueries, joins, etc.), microsecond precision,
faster HANDLER, dynamic columns, better
replication (group commit, etc.), HandlerSocket
More efficient threadpool, non-blocking
client library, new LIMIT ROWS
EXAMINED option, extended keys for
XtraDB/InnoDB, new SphinxSE,
dynamic replication settings, lots of
security fixes, new status variables, etc.
Galera Synchronous Replication
15. MariaDB 10 in a nutshell
● MariaDB 5.5 features +
● MySQL 5.6 backported features - InnoDB/XtraDB,
PERFORMANCE_SCHEMA, online ALTER TABLE etc.
● Multi-source replication
● Global Transaction ID
● Parallel Slave Thread
● TokuDB, Spider, Connect, Cassandra storage engines
● SSD and Flash storage enhancements
● User roles
● More administration and instrumentation commands...
16. Optimizer Improvements
● Of 29 distinct enhancements noted, 28 are in
MariaDB 10. Just 1 only in MySQL 5.6.
● Enhancements include:
● Disk access optimizations.
● JOIN optimizations.
● Subquery optimizations.
● Optimized derived tables and views.
● Execution control.
● Optimizer control.
● EXPLAIN improvements.
17. Fusion-IO page compression
● Atomic writes gives a
performance increase of about
30%. By enabling fast checksum
for XtraDB it’s 50%
● By using page compression the
compression ratio is leading to
better performance and there
are less writes to disk.
● Multi-threaded flush provides
better throughput and
decreases operation latencies
delivering a performance boost
https://blog.mariadb.org/significant-performance-boost-with-new-mariadb-page-compression-on-fusionio
18. Group Commit
● binlog_commits
● Total number of
transactions committed to
the binary log
● binlog_group_commits
Total number of groups of
transactions committed to
the binary log
When sync_binlog=1 it is the
number of fsync()’s
20. Parallel Slave Thread Replication
● Sponsored by Google
● Transactions are applied in parallel if they have been executed in parallel on the
master.
● It works beyond the boundaries of MySQL 5.6 parallel slave
● Parallel threads apply to:
● Queries that are run on the master in one group commit.
● Queries that are from different domains.
● Queries from different masters
(when using multi-source
replication).
● slave_parallel_threads
● Number of parallel threads on
the slave node
● slave_parallel_max_queued
● Number of parallel threads on
the slave node
21. Multi-source Replication
● Data partitioned over many
masters can be pulled
together onto one slave for
analytical queries
● Many masters can replicate to
the same slave and a complete
backup can be done on the slave
● Newer hardware usually provides more
performance. Usually all hardware isn’t upgraded at
once and multi-source can be used for replicating
many masters to a powerful new slave.
● Up to 64 masters
23. MariaDB Galera Cluster
● Read & Write access to any
node
● Client can connect to any
node
● There can be several nodes
● Automatic node
provisioning
● Replication is synchronous Galera Replication
MariaDB MariaDB MariaDB
24. TokuDB
● Drop-in replacement for InnoDB/XtraDB
developed by Tokutek.
● Advanced indexing and
compression algorithms.
● Up to 20x performance gain
for inserts/updates.
● Up to 90% less disk storage.
● Online schema changes and online backup
features.
● Simplified administration
25. Spider
● Spider is a storage engine based on the
MySQL partitioning features, with built-in
sharding capabilities
● Tables of different MariaDB instances are
handled as if they are on the same instance
● It supports XA transactions and multiple
storage engines (InnoDB, MyISAM etc.)
● Developed by Kentoku Shiba,
available on Launchpad,
first introduced in 2008
and now available in
MariaDB 10
26. Connect
● Connect enables MariaDB to use external
data as they were standard tables in the
server
● Data is not loaded into MariaDB
● Integrates/access data directly in many non-
MariaDB formats
● Simplifies the ETL procedures in
Business Intelligence and
Business Analytics
● Simplifies the export/import of
data from/to MariaDB, to/from
other data sources
27. Even more innovative features
● Role-based access control
● SHOW EXPLAIN FOR thread
● Explain on slow query log
● Cassandra storage engine
● Virtual and dynamic columns
● HandlerSocket plugin
● Audit and PAM plugins
28. MariaDB 10.1
● Single distribution for clustered and non-clustered MariaDB
● 5.6, 5.7 and WebscaleSQL features
● Portable tablespaces
● Improved thread management
● Kerberos authentication support
● GIS improvements
● Windowing functions
● inner and outer database security and encryption
● More NoSQL enhancements
https://mariadb.atlassian.net/secure/ReleaseNote.jspa?projectId=10000&version=12200