MariaDB 10 and Beyond

711
-1

Published on

MariaDB 10 and Beyond - the Future of Open Source Databases by Ivan Zoratti.

Presented 24.6.2014 at the MariaDB Roadshow in Maarssen, Utrecht, The Netherlands.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
711
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
11
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

MariaDB 10 and Beyond

  1. 1. MariaDB 10 and beyond The Future of Open Source Databases MariaDB Roadshow - Maarssen Ivan Zoratti V1406.01
  2. 2. Who is Ivan ?
  3. 3. MariaDB Today ● A free fork of MySQL with extra features ● Backward compatible ● Community developed, Enterprise ready
  4. 4. 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
  5. 5. MariaDB Timeline ● MariaDB 5.1, GA February 2010 Table elimination, new storage engines, code cleanup, better tests, pool of threads
  6. 6. 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
  7. 7. 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
  8. 8. 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.
  9. 9. 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
  10. 10. 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
  11. 11. 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...
  12. 12. 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.
  13. 13. 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
  14. 14. 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
  15. 15. Global Transaction ID
  16. 16. 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
  17. 17. 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
  18. 18. MariaDB in the MySQL World
  19. 19. 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
  20. 20. 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
  21. 21. 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
  22. 22. 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
  23. 23. 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
  24. 24. 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
  25. 25. Beyond MariaDB
  26. 26. Beyond MariaDB Business Continuity
  27. 27. Beyond MariaDB Business Continuity Unlimited Scalability
  28. 28. Beyond MariaDB Business Continuity Unlimited Scalability Systems Integration
  29. 29. Beyond MariaDB Business Continuity Unlimited Scalability Systems Integration Systems Orchestration
  30. 30. MaxScale ● A database-centric proxy, generic in nature ● Highly scalable ● Lightweight with small footprint ● Minimum possible latency ● Highly available ● Extendible ● Integrated with systems security ● Compatible with any version of MySQL/MariaDB servers and applications (4.1+)
  31. 31. Thank You! “The future is already here — it's just not very evenly distributed.” William F. Gibson
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×