SlideShare uma empresa Scribd logo
1 de 50
Baixar para ler offline
MariaDB 10 and the
MariaDB Foundation
Colin Charles,Team MariaDB, SkySQL Ab
colin@mariadb.org / byte@bytebot.net
http://www.skysql.com/ | http://mariadb.org/
http://bytebot.net/blog/ | @bytebot on Twitter
MariaDB/MySQL Community Event,Tokyo, Japan
9 October 2013
whoami
• Chief Evangelist, MariaDB at SkySQL Ab
• Formerly Monty Program Ab (merged with
SkySQL Ab)
• Formerly MySQL AB/Sun Microsystems
• Using/developing/hacking on MySQL since 2000
• Previously on FESCO for The Fedora Project,
and hacked on OpenOffice.org code
(2000-2005)
Agenda
• 44 months: major server releases (5.1, 5.2,
5.3, 5.5, Galera Cluster) and 10.0 series
• Delving into history of previous releases
• MariaDB 10.0
• Client libraries, Galera Cluster
• Roadmap
What is MariaDB?
• Community developed branch of MySQL
• Feature enhanced
• Fully compatible & feature complete with
MySQL
Ownership
• MySQL (database) owned by MySQL AB
(company) -> Sun -> Oracle
• Monty Program SkySQL is a major sponsor
of MariaDB
• MariaDB governed by MariaDB Foundation
• maria-captains contains community like
Sphinxsearch, LinkedIn,Taobao, Facebook,
Percona, Codership, & more
Aims of MariaDB
• Compatible, drop-in replacement to
MySQL
• data on disk & on the wire the same
• same file names, sockets, port
• Stable (bug-free) releases with no
regressions
• GPLv2
Why MariaDB 10.0?
• The 5.5 merge took about a year (!)
• In MariaDB 5.5, we have over 1.5 million lines
of extra code ~61MB diff
• MySQL 5.6 refactored with huge losses in
commit history
• We’re not a patch set against MySQL
• MariaDB clearly does not depend on MySQL
for future development
MariaDB 10.0 in a
nutshell
• Built on MariaDB 5.5
• Backported features from MySQL 5.6
• Multiple new features
First, let’s start with
some history
• MariaDB 5.1 (MySQL 5.1 base)
• Table elimination, new storage engines,
code cleanup, more test cases, pool of
threads
• MariaDB 5.2 (MariaDB 5.1 base)
• Virtual columns, extended user statistics,
segmented MyISAM keycache
History II
• MariaDB 5.3 (MariaDB 5.2 base)
• Biggest changes to optimizer (faster subqueries, joins,
etc.)
• Microsecond precision
• Faster HANDLER (HANDLER READ 50% faster w/
530,000 qps), dynamic columns, HandlerSocket
• Better replication (group commit, checksum for binlog
events, consistent snapshot between engines, etc.)
• Progress reporting for ALTER TABLE/LOAD DATA
INFILE
MariaDB 5.5 (MariaDB
5.3 + MySQL 5.5)
• Opensource, more efficient threadpool
• Non-blocking client library
• New LIMIT ROWS EXAMINED option
• Extended keys for XtraDB/InnoDB
• New SphinxSE
• Lots of security fixes, new status variables,
etc.
MariaDB 10.0
Date Version Status
12 Nov
2012
10.0.0 Alpha
6 Feb
2013
10.0.1 Alpha
24 Apr
2013
10.0.2 Alpha
11 June
2013
10.0.3 Alpha
16 Aug
2013
10.04 Alpha
Backported features
• InnoDB including TRANSACTION READ ONLY (merge from 5.6)
• PERFORMANCE_SCHEMA
• Online ALTER TABLE (in-progress)
• Optimizer
• ORDER BY...LIMIT optimization (shows only few rows of a result set)
• Re-implemented:
• Error messages (w/system error string)
• CURRENT_TIMESTAMP / NOW() as DEFAULT for DATETIME columns
• Global Transaction ID (10.0.2 - MDEV-26)
• Parallel replication (in progress)
• New (optimizer)
• EXISTS-TO-IN optimization
Only in MariaDB 10.0:
Multi-source replication
• Work from Taobao
• Many users partition data across many
masters... now you can replicate many
masters to a single slave
• Great for analytical queries, complete
backups, etc.
Only in MariaDB 10.0
• SHOW EXPLAIN for <thread_id> gets the query
plan for a running statement
• Faster ALTER TABLE with unique keys for Aria &
MyISAM
• Per-thread memory usage (Taobao)
• INFORMATION_SCHEMA.PROCESSLIST has
MEMORY_USAGE & EXAMINED_ROWS now
• SHOW STATUS has memory usage too
Only in MariaDB 10.0:
CassandraSE, LevelDB support
• MariaDB as a “data platform”
• Integration with NoSQL/Big Data DB,Apache
Cassandra cluster, seen as a storage engine to
MariaDB
• Combine (join) data between Cassandra & MariaDB
& Oracle (via CONNECT)
• Write to Cassandra from SQL (SELECT, INSERT,
UPDATE, DELETE)
• LevelDB (in-progress)
Only in MariaDB 10.0: Engine
independent persistent statistics
• InnoDB has persistent statistics in MySQL
5.6; we have an engine-independent version
• These statistics aren’t limited by the SE
API, and are used by query optimizer to
choose best execution plan for each
statement
• Statistics collected for non-indexed
columns too (unlike InnoDB’s)
Dynamic columns
• Allows you to create virtual columns with dynamic content for each
row in table
• Basically a blob with handling functions (GET, CREATE,ADD,
DELETE, EXISTS, LIST, JSON)
• Store different attributes for each item (like a web store). Hard to do
relationally
• In MariaDB 10: name support (instead of referring to columns by
numbers, name it), convert all dynamic column content to JSON
array, interface with Cassandra
• https://kb.askmonty.org/en/dynamic-columns/
• INSERT INTO tbl SET
dyncol_blob=COLUMN_CREATE("column_name", "value");
Segmented MyISAM
keycache
• Solves major read bottlenecks for MyISAM
• MyISAM usage with many readers
Batched Key Access
(BKA) speedups
select max(l_extendedprice) from orders, lineitem where
o_orderdate between $DATE1 and $DATE2 and
l_orderkey=o_orderkey
Subqueries materialise
• Semi-join optimization, materialization for
non-correlated IN queries, subquery cache
• Goodbye rewriting as JOINs or separate
queries
Group commit in the
binary log
• sync_binlog=1,
innodb_flush_log_at_trx_commit=1
• https://www.facebook.com/note.php?
note_id=10150261692455933
• http://kb.askmonty.org/en/group-
commit-for-the-binary-log
Threadpool 5.5 vs 5.1
PAM Authentication
• Authentication using /etc/shadow
• Authentication using LDAP, SSH pass phrases, password
expiration, username mapping, logging every login
attempt, etc.
• INSTALL PLUGIN pam SONAME
‘auth_pam.so’;
• CREATE USER foo@host IDENTIFIED via pam
• Remember to configure PAM (/etc/pam.d or /etc/
pam.conf)
SphinxSE
• CREATE TABLE t1 (..)
ENGINE=SPHINX
CONNECTION=”sphin
x://localhost:9312/test”;
• Engine connects to
Sphinx searchd
• Let indexing, searching,
sorting, filtering be
performed by Sphinx
• instead of WHERE,
ORDER BY, LIMIT
• Sphinx is optimized/
fast for these tasks
• Most of the Sphinx API
is exposed to engine
• JOIN search table with
other MySQL tables
GIS support!
• MySQL has OpenGIS SFS (Simple feature
access, SQL access method)
• Now, SQL with full geometry types
• ST_ prefix
• http://kb.askmonty.org/en/gis-features-
in-533
MariaDB 10.0.2
• Support for atomic writes on FusionIO
DirectFS
• Optimizer collects & can use histogram-
based statistics for non-indexed columns
• Better table discovery, so FederatedX has
assisted discovery, Sequence engine
(creates ascending/descending sequences,
useful in joins)
MariaDB 10.0.4
• SPIDER storage engine for vertical
partitioning merged
• Audit plugin
• Host cache PERFORMANCE_SCHEMA
• Online ALTER for InnoDB and thread
information for in-place operations
Roadmap
• MariaDB is already a superset of features in MySQL
• Merge is in 2 steps
• 10.0.x
• 10.1.x
• Plan is to have all important features of MySQL 5.6
by the time MariaDB 10.1.x is released as stable
• For all practical purposes MariaDB 10.1.x will be
a drop in replacement to MySQL 5.6
LGPL Client Libraries
• LGPL client libraries for C & Java
• Works with MariaDB/MySQL/Percona
Server
• Developed by Monty Program Ab &
SkySQL Ab, released as LGPL 29 Nov 2012
• ODBC is in the works, sponsors are
welcome!
MariaDB Galera
Cluster
• MariaDB Galera Cluster is made for today’s
cloud based environments. It is fully read-
write scalable, comes with synchronous
replication, allows multi-master topologies,
and guarantees no lag or lost transactions.
• Currently 5.5-based, we see this as
important for 10.0 as well (merge has
already started to happen with WSREP API
24)
TokuDB
• It’s now opensource - separate MariaDB
5.5+TokuDB
• Improved insert & query speed,
compression, replication performance and
online schema flexibility
• Uses Fractal Tree Indexes instead of B-Tree
• Tests & builds of TokuDB on multiple
platforms (think greater distribution)
CONNECT Storage
Engine
• Made by Olivier Bertrand
• Read, write & update files in different storage formats:
• .DBF (dBASE format)
• .CSV
• .INI
• XML
• ODBC
• Possible to join data from CassandraSE, XtraDB and an
ODBC data source like Oracle
Benchmarks
• “Lies, damned lies, and statistics” - Mark Twain
• http://blog.mariadb.org/sysbench-oltp-
mysql-5-6-vs-mariadb-10-0/
• http://dimitrik.free.fr/blog/archives/2013/02/
mysql-performance-mysql-56-vs-mysql-55-
vs-mariadb-55.html
• Yes, we’ve gotten Oracle to notice
MariaDB :-)
Continued
commitments
• Security
• Since about a year now, we’re the go-to people for security - good
track record
• We don’t like regressions
• http://www.skysql.com/blogs/hartmut/nasty-innodb-regression-
mysql-5525
• http://www.skysql.com/blogs/kolbe/heads-no-more-query-cache-
partitioned-tables-mysql-5523
• We care about backward compatibility & introduce features carefully
• XtraDB innodb_adaptive_checkpoint=none|reflex|estimate|
keep_average (no more reflex...)
Community
involvement
• Many features since MariaDB 5.2 have come from
the community or are sponsored features (5.3, 5.5)
• Knowledgebase has 3,000+ articles in English
• Yearly downloads of half a million* (more users
from mirrors + distributions)
• Active mailing lists (stats on KB)
• Google Summer of Code 2013
• MariaDB User Groups
MariaDB is gaining
popularity
• Wikipedia (English, German),Wikidata running
MariaDB 5.5
• Google has public commitment to move to MariaDB
10
• Fedora, OpenSUSE shipping MariaDB as a default
• Slackware, Chakra Linux,ArchLinux have followed suit
• Many success stories at KB: Limelight Networks,
Nimbuzz, Paybox, FictionPress, OLX, SlashGear,Web
of Trust, SpamExperts, Cougarboard, etc.
MariaDB deployed
“MariaDB had these same bugs that we ran into with
MySQL. However the big difference was that when we
reported these bugs, they were quickly resolved within 48
hours!” -- Dreas van Donselaar, Chief Technology
Officer, SpamExperts
B.V. after migrating over 300 servers from MySQL 5.0
to MariaDB 5.1.
“Migrating from MySQL 5.1 to MariaDB 5.2 was as simple
as removing MySQL RPMs and installing the MariaDB
packages, then running mysql_upgrade.” - Panayot
Belchev, proprietor, Host Bulgaria on providing
MariaDB to over 7,000 of their web hosting customers.
“We made the switch on Saturday --
and we’re seeing benefits already -- our
daily optimization time is down from
24 minutes to just 4 minutes” -- Ali
Watters, CEO, travelblog.org
happy users: pap.fr, Paybox Services, OLX,
Jelastic, Web of Trust,Wikipedia, Craigslist, etc.
“@nginxorg & @mariadb
have helped me save
$12000/year in
infrastructure cost. I love it!
Do more with less!” -
Ewdison Then, CEO,
Slashgear
We upgraded the support.mozilla.org
databases from Percona 5.1 to MariaDB 5.5.
One of the engineers and I had a
conversation where he mentioned that “one
of our worst performing views on SUMO is
doing waaaayyy better with the upgraded
databases”, that it “seems more stable” and
that “I stopped receiving ‘MySQL went away
or disconnected emails’ which came in once
in a while.” - Sheeri Cabral, Mozilla IT
MariaDB Foundation
• Foundation is driver of MariaDB project
• Custodian of code, guardian of community
• Foundation can never be controlled by
single entity or person
• Designed to be self-sustaining
MariaDB Foundation
Goals
• Increase adoption of MariaDB
• Ensure sustainable high-quality efforts to build,
test and distribute MariaDB
• Ensure that community patches are reviewed and
adopted
• Guarantee a community voice
• Keep MariaDB compatible with MySQL
• Maintain mariadb.org
MariaDB Foundation
People
• More founders & sponsors are welcome
• Michael Widenius, CTO: monty@mariadb.org
• Andrew Katz, Legal Counsel:
andrew@mariadb.org
• Simon Phipps, CEO: simon@mariadb.org
• Jeremy Zawodny (Craigslist), Mike Milinkovich
(Eclipse Foundation) on Board
Coming up next
• Column level encryption via MyDiamo
from Penta Security
• New optimizations for Fusion-IO
• You can shape the roadmap
Well supported
• Everyone supports MariaDB from a
support standpoint with the exception of
Oracle
• SkySQL, Percona, etc.
• Jelastic has it as PaaS too
• We support all GA releases for 5 years for
security, etc.
User stats plugin
• Disabled by default, consider enabling it to
show use! http://mariadb.org/feedback_plugin/
data from over 113
countries!
Compatibility with
MySQL
• No NDB Cluster
• XtraDB enabled as default up to 5.5,
InnoDB in 10.0 (for now)
• Optimizer: no worse than current plan
FAQ
• Can I replicate from MySQL 5.6 to MariaDB 10.x?
• Yes
• Can I replicate from MariaDB 10.x to MariaDB
5.5?
• Yes
• Can I replicate from MariaDB 10.x to MySQL
5.5/5.6?
• No
FAQ on tools
• SELECTVERSION() returns 10.0.1-
MariaDB
• Version string in handshake packet will be
5.5.30-mysql-10.0.2-MariaDB
(mysql#68187, MDEV-4088)
• Tools should start recognising MariaDB for
additional feature-set (mytop, HeidiSQL,
etc.)
Conclusion
• We’ve spent a lot of time adding features,
some in parallel, some ahead
• MariaDB is binary compatible with MySQL
• Open bugs system, test suite, discussion
lists
• Opensource, feature rich, no commercial
extensions
Resources
• bugs: mariadb.org/jira
• maria-discuss@lists.launchpad.net
• maria-developers@lists.launchpad.net
• fb.com/MariaDB.dbms
• twitter: @mariadb
• google plus: +MariaDB
• #maria on irc.freenode.net
• http://kb.askmonty.org/
Thanks/Q&A
Colin Charles, colin@mariadb.org | byte@bytebot.net
http://bytebot.net/blog/ | @bytebot
slides: slideshare.net/bytebot/
planetmysql.org
planetmariadb.org

Mais conteúdo relacionado

Mais procurados

My first moments with MongoDB
My first moments with MongoDBMy first moments with MongoDB
My first moments with MongoDBColin Charles
 
Databases in the hosted cloud
Databases in the hosted cloud Databases in the hosted cloud
Databases in the hosted cloud Colin Charles
 
What is MariaDB Server 10.3?
What is MariaDB Server 10.3?What is MariaDB Server 10.3?
What is MariaDB Server 10.3?Colin Charles
 
Meet MariaDB Server 10.1 London MySQL meetup December 2015
Meet MariaDB Server 10.1 London MySQL meetup December 2015Meet MariaDB Server 10.1 London MySQL meetup December 2015
Meet MariaDB Server 10.1 London MySQL meetup December 2015Colin Charles
 
Lessons from database failures
Lessons from database failures Lessons from database failures
Lessons from database failures Colin Charles
 
MariaDB 10: A MySQL Replacement - HKOSC
MariaDB 10: A MySQL Replacement - HKOSC MariaDB 10: A MySQL Replacement - HKOSC
MariaDB 10: A MySQL Replacement - HKOSC Colin Charles
 
Best practices for MySQL/MariaDB Server/Percona Server High Availability
Best practices for MySQL/MariaDB Server/Percona Server High AvailabilityBest practices for MySQL/MariaDB Server/Percona Server High Availability
Best practices for MySQL/MariaDB Server/Percona Server High AvailabilityColin Charles
 
Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016Colin Charles
 
MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016Colin Charles
 
MariaDB - a MySQL Replacement #SELF2014
MariaDB - a MySQL Replacement #SELF2014MariaDB - a MySQL Replacement #SELF2014
MariaDB - a MySQL Replacement #SELF2014Colin Charles
 
Distributions from the view a package
Distributions from the view a packageDistributions from the view a package
Distributions from the view a packageColin Charles
 
Meet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web SummitMeet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web SummitColin Charles
 
Lessons from database failures
Lessons from database failuresLessons from database failures
Lessons from database failuresColin Charles
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerColin Charles
 
Securing your MySQL / MariaDB Server data
Securing your MySQL / MariaDB Server dataSecuring your MySQL / MariaDB Server data
Securing your MySQL / MariaDB Server dataColin Charles
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleColin Charles
 
Databases in the hosted cloud
Databases in the hosted cloudDatabases in the hosted cloud
Databases in the hosted cloudColin Charles
 
MariaDB Server Compatibility with MySQL
MariaDB Server Compatibility with MySQLMariaDB Server Compatibility with MySQL
MariaDB Server Compatibility with MySQLColin Charles
 
MariaDB 10 and what's new with the project
MariaDB 10 and what's new with the projectMariaDB 10 and what's new with the project
MariaDB 10 and what's new with the projectColin Charles
 

Mais procurados (20)

My first moments with MongoDB
My first moments with MongoDBMy first moments with MongoDB
My first moments with MongoDB
 
Databases in the hosted cloud
Databases in the hosted cloud Databases in the hosted cloud
Databases in the hosted cloud
 
What is MariaDB Server 10.3?
What is MariaDB Server 10.3?What is MariaDB Server 10.3?
What is MariaDB Server 10.3?
 
Meet MariaDB Server 10.1 London MySQL meetup December 2015
Meet MariaDB Server 10.1 London MySQL meetup December 2015Meet MariaDB Server 10.1 London MySQL meetup December 2015
Meet MariaDB Server 10.1 London MySQL meetup December 2015
 
Lessons from database failures
Lessons from database failures Lessons from database failures
Lessons from database failures
 
MariaDB 10: A MySQL Replacement - HKOSC
MariaDB 10: A MySQL Replacement - HKOSC MariaDB 10: A MySQL Replacement - HKOSC
MariaDB 10: A MySQL Replacement - HKOSC
 
Best practices for MySQL/MariaDB Server/Percona Server High Availability
Best practices for MySQL/MariaDB Server/Percona Server High AvailabilityBest practices for MySQL/MariaDB Server/Percona Server High Availability
Best practices for MySQL/MariaDB Server/Percona Server High Availability
 
Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016
 
MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016
 
MariaDB - a MySQL Replacement #SELF2014
MariaDB - a MySQL Replacement #SELF2014MariaDB - a MySQL Replacement #SELF2014
MariaDB - a MySQL Replacement #SELF2014
 
Distributions from the view a package
Distributions from the view a packageDistributions from the view a package
Distributions from the view a package
 
Meet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web SummitMeet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web Summit
 
Lessons from database failures
Lessons from database failuresLessons from database failures
Lessons from database failures
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB Server
 
Securing your MySQL / MariaDB Server data
Securing your MySQL / MariaDB Server dataSecuring your MySQL / MariaDB Server data
Securing your MySQL / MariaDB Server data
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
 
Databases in the hosted cloud
Databases in the hosted cloudDatabases in the hosted cloud
Databases in the hosted cloud
 
Why MariaDB?
Why MariaDB?Why MariaDB?
Why MariaDB?
 
MariaDB Server Compatibility with MySQL
MariaDB Server Compatibility with MySQLMariaDB Server Compatibility with MySQL
MariaDB Server Compatibility with MySQL
 
MariaDB 10 and what's new with the project
MariaDB 10 and what's new with the projectMariaDB 10 and what's new with the project
MariaDB 10 and what's new with the project
 

Semelhante a Maria db 10 and the mariadb foundation(colin)

The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016Colin Charles
 
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale  by ...[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale  by ...
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...Insight Technology, Inc.
 
MariaDB 初学者指南
MariaDB 初学者指南MariaDB 初学者指南
MariaDB 初学者指南YUCHENG HU
 
Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么YUCHENG HU
 
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdfMySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdfAlkin Tezuysal
 
MariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB - Fast, Easy & Strong - Get Started TutorialMariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB - Fast, Easy & Strong - Get Started Tutorialphamhphuc
 
MariaDB 10: The Complete Tutorial
MariaDB 10: The Complete TutorialMariaDB 10: The Complete Tutorial
MariaDB 10: The Complete TutorialColin Charles
 
The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it! The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it! Colin Charles
 
A beginners guide to MariaDB
A beginners guide to MariaDBA beginners guide to MariaDB
A beginners guide to MariaDBColin Charles
 
The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015Colin Charles
 
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...NETWAYS
 
NOSQL Meets Relational - The MySQL Ecosystem Gains More Flexibility
NOSQL Meets Relational - The MySQL Ecosystem Gains More FlexibilityNOSQL Meets Relational - The MySQL Ecosystem Gains More Flexibility
NOSQL Meets Relational - The MySQL Ecosystem Gains More FlexibilityIvan Zoratti
 
MySQL Ecosystem in 2020
MySQL Ecosystem in 2020MySQL Ecosystem in 2020
MySQL Ecosystem in 2020Alkin Tezuysal
 
MySQL in the Hosted Cloud - Percona Live 2015
MySQL in the Hosted Cloud - Percona Live 2015MySQL in the Hosted Cloud - Percona Live 2015
MySQL in the Hosted Cloud - Percona Live 2015Colin Charles
 
My sql crashcourse_intro_kdl
My sql crashcourse_intro_kdlMy sql crashcourse_intro_kdl
My sql crashcourse_intro_kdlsqlhjalp
 
MySQL in the Hosted Cloud
MySQL in the Hosted CloudMySQL in the Hosted Cloud
MySQL in the Hosted CloudColin Charles
 
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Codership Oy - Creators of Galera Cluster
 
MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)Colin Charles
 
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014MariaDB Corporation
 

Semelhante a Maria db 10 and the mariadb foundation(colin) (20)

The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016
 
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale  by ...[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale  by ...
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
 
MariaDB 初学者指南
MariaDB 初学者指南MariaDB 初学者指南
MariaDB 初学者指南
 
Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么
 
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdfMySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
 
MariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB - Fast, Easy & Strong - Get Started TutorialMariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB - Fast, Easy & Strong - Get Started Tutorial
 
MariaDB 10: The Complete Tutorial
MariaDB 10: The Complete TutorialMariaDB 10: The Complete Tutorial
MariaDB 10: The Complete Tutorial
 
The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it! The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it!
 
A beginners guide to MariaDB
A beginners guide to MariaDBA beginners guide to MariaDB
A beginners guide to MariaDB
 
The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015
 
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
 
NOSQL Meets Relational - The MySQL Ecosystem Gains More Flexibility
NOSQL Meets Relational - The MySQL Ecosystem Gains More FlexibilityNOSQL Meets Relational - The MySQL Ecosystem Gains More Flexibility
NOSQL Meets Relational - The MySQL Ecosystem Gains More Flexibility
 
MySQL in the Cloud
MySQL in the CloudMySQL in the Cloud
MySQL in the Cloud
 
MySQL Ecosystem in 2020
MySQL Ecosystem in 2020MySQL Ecosystem in 2020
MySQL Ecosystem in 2020
 
MySQL in the Hosted Cloud - Percona Live 2015
MySQL in the Hosted Cloud - Percona Live 2015MySQL in the Hosted Cloud - Percona Live 2015
MySQL in the Hosted Cloud - Percona Live 2015
 
My sql crashcourse_intro_kdl
My sql crashcourse_intro_kdlMy sql crashcourse_intro_kdl
My sql crashcourse_intro_kdl
 
MySQL in the Hosted Cloud
MySQL in the Hosted CloudMySQL in the Hosted Cloud
MySQL in the Hosted Cloud
 
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
 
MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)
 
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
 

Último

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 

Último (20)

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 

Maria db 10 and the mariadb foundation(colin)

  • 1. MariaDB 10 and the MariaDB Foundation Colin Charles,Team MariaDB, SkySQL Ab colin@mariadb.org / byte@bytebot.net http://www.skysql.com/ | http://mariadb.org/ http://bytebot.net/blog/ | @bytebot on Twitter MariaDB/MySQL Community Event,Tokyo, Japan 9 October 2013
  • 2. whoami • Chief Evangelist, MariaDB at SkySQL Ab • Formerly Monty Program Ab (merged with SkySQL Ab) • Formerly MySQL AB/Sun Microsystems • Using/developing/hacking on MySQL since 2000 • Previously on FESCO for The Fedora Project, and hacked on OpenOffice.org code (2000-2005)
  • 3. Agenda • 44 months: major server releases (5.1, 5.2, 5.3, 5.5, Galera Cluster) and 10.0 series • Delving into history of previous releases • MariaDB 10.0 • Client libraries, Galera Cluster • Roadmap
  • 4. What is MariaDB? • Community developed branch of MySQL • Feature enhanced • Fully compatible & feature complete with MySQL
  • 5. Ownership • MySQL (database) owned by MySQL AB (company) -> Sun -> Oracle • Monty Program SkySQL is a major sponsor of MariaDB • MariaDB governed by MariaDB Foundation • maria-captains contains community like Sphinxsearch, LinkedIn,Taobao, Facebook, Percona, Codership, & more
  • 6. Aims of MariaDB • Compatible, drop-in replacement to MySQL • data on disk & on the wire the same • same file names, sockets, port • Stable (bug-free) releases with no regressions • GPLv2
  • 7. Why MariaDB 10.0? • The 5.5 merge took about a year (!) • In MariaDB 5.5, we have over 1.5 million lines of extra code ~61MB diff • MySQL 5.6 refactored with huge losses in commit history • We’re not a patch set against MySQL • MariaDB clearly does not depend on MySQL for future development
  • 8. MariaDB 10.0 in a nutshell • Built on MariaDB 5.5 • Backported features from MySQL 5.6 • Multiple new features
  • 9. First, let’s start with some history • MariaDB 5.1 (MySQL 5.1 base) • Table elimination, new storage engines, code cleanup, more test cases, pool of threads • MariaDB 5.2 (MariaDB 5.1 base) • Virtual columns, extended user statistics, segmented MyISAM keycache
  • 10. History II • MariaDB 5.3 (MariaDB 5.2 base) • Biggest changes to optimizer (faster subqueries, joins, etc.) • Microsecond precision • Faster HANDLER (HANDLER READ 50% faster w/ 530,000 qps), dynamic columns, HandlerSocket • Better replication (group commit, checksum for binlog events, consistent snapshot between engines, etc.) • Progress reporting for ALTER TABLE/LOAD DATA INFILE
  • 11. MariaDB 5.5 (MariaDB 5.3 + MySQL 5.5) • Opensource, more efficient threadpool • Non-blocking client library • New LIMIT ROWS EXAMINED option • Extended keys for XtraDB/InnoDB • New SphinxSE • Lots of security fixes, new status variables, etc.
  • 12. MariaDB 10.0 Date Version Status 12 Nov 2012 10.0.0 Alpha 6 Feb 2013 10.0.1 Alpha 24 Apr 2013 10.0.2 Alpha 11 June 2013 10.0.3 Alpha 16 Aug 2013 10.04 Alpha
  • 13. Backported features • InnoDB including TRANSACTION READ ONLY (merge from 5.6) • PERFORMANCE_SCHEMA • Online ALTER TABLE (in-progress) • Optimizer • ORDER BY...LIMIT optimization (shows only few rows of a result set) • Re-implemented: • Error messages (w/system error string) • CURRENT_TIMESTAMP / NOW() as DEFAULT for DATETIME columns • Global Transaction ID (10.0.2 - MDEV-26) • Parallel replication (in progress) • New (optimizer) • EXISTS-TO-IN optimization
  • 14. Only in MariaDB 10.0: Multi-source replication • Work from Taobao • Many users partition data across many masters... now you can replicate many masters to a single slave • Great for analytical queries, complete backups, etc.
  • 15. Only in MariaDB 10.0 • SHOW EXPLAIN for <thread_id> gets the query plan for a running statement • Faster ALTER TABLE with unique keys for Aria & MyISAM • Per-thread memory usage (Taobao) • INFORMATION_SCHEMA.PROCESSLIST has MEMORY_USAGE & EXAMINED_ROWS now • SHOW STATUS has memory usage too
  • 16. Only in MariaDB 10.0: CassandraSE, LevelDB support • MariaDB as a “data platform” • Integration with NoSQL/Big Data DB,Apache Cassandra cluster, seen as a storage engine to MariaDB • Combine (join) data between Cassandra & MariaDB & Oracle (via CONNECT) • Write to Cassandra from SQL (SELECT, INSERT, UPDATE, DELETE) • LevelDB (in-progress)
  • 17. Only in MariaDB 10.0: Engine independent persistent statistics • InnoDB has persistent statistics in MySQL 5.6; we have an engine-independent version • These statistics aren’t limited by the SE API, and are used by query optimizer to choose best execution plan for each statement • Statistics collected for non-indexed columns too (unlike InnoDB’s)
  • 18. Dynamic columns • Allows you to create virtual columns with dynamic content for each row in table • Basically a blob with handling functions (GET, CREATE,ADD, DELETE, EXISTS, LIST, JSON) • Store different attributes for each item (like a web store). Hard to do relationally • In MariaDB 10: name support (instead of referring to columns by numbers, name it), convert all dynamic column content to JSON array, interface with Cassandra • https://kb.askmonty.org/en/dynamic-columns/ • INSERT INTO tbl SET dyncol_blob=COLUMN_CREATE("column_name", "value");
  • 19. Segmented MyISAM keycache • Solves major read bottlenecks for MyISAM • MyISAM usage with many readers
  • 20. Batched Key Access (BKA) speedups select max(l_extendedprice) from orders, lineitem where o_orderdate between $DATE1 and $DATE2 and l_orderkey=o_orderkey
  • 21. Subqueries materialise • Semi-join optimization, materialization for non-correlated IN queries, subquery cache • Goodbye rewriting as JOINs or separate queries
  • 22. Group commit in the binary log • sync_binlog=1, innodb_flush_log_at_trx_commit=1 • https://www.facebook.com/note.php? note_id=10150261692455933 • http://kb.askmonty.org/en/group- commit-for-the-binary-log
  • 24. PAM Authentication • Authentication using /etc/shadow • Authentication using LDAP, SSH pass phrases, password expiration, username mapping, logging every login attempt, etc. • INSTALL PLUGIN pam SONAME ‘auth_pam.so’; • CREATE USER foo@host IDENTIFIED via pam • Remember to configure PAM (/etc/pam.d or /etc/ pam.conf)
  • 25. SphinxSE • CREATE TABLE t1 (..) ENGINE=SPHINX CONNECTION=”sphin x://localhost:9312/test”; • Engine connects to Sphinx searchd • Let indexing, searching, sorting, filtering be performed by Sphinx • instead of WHERE, ORDER BY, LIMIT • Sphinx is optimized/ fast for these tasks • Most of the Sphinx API is exposed to engine • JOIN search table with other MySQL tables
  • 26. GIS support! • MySQL has OpenGIS SFS (Simple feature access, SQL access method) • Now, SQL with full geometry types • ST_ prefix • http://kb.askmonty.org/en/gis-features- in-533
  • 27. MariaDB 10.0.2 • Support for atomic writes on FusionIO DirectFS • Optimizer collects & can use histogram- based statistics for non-indexed columns • Better table discovery, so FederatedX has assisted discovery, Sequence engine (creates ascending/descending sequences, useful in joins)
  • 28. MariaDB 10.0.4 • SPIDER storage engine for vertical partitioning merged • Audit plugin • Host cache PERFORMANCE_SCHEMA • Online ALTER for InnoDB and thread information for in-place operations
  • 29. Roadmap • MariaDB is already a superset of features in MySQL • Merge is in 2 steps • 10.0.x • 10.1.x • Plan is to have all important features of MySQL 5.6 by the time MariaDB 10.1.x is released as stable • For all practical purposes MariaDB 10.1.x will be a drop in replacement to MySQL 5.6
  • 30. LGPL Client Libraries • LGPL client libraries for C & Java • Works with MariaDB/MySQL/Percona Server • Developed by Monty Program Ab & SkySQL Ab, released as LGPL 29 Nov 2012 • ODBC is in the works, sponsors are welcome!
  • 31. MariaDB Galera Cluster • MariaDB Galera Cluster is made for today’s cloud based environments. It is fully read- write scalable, comes with synchronous replication, allows multi-master topologies, and guarantees no lag or lost transactions. • Currently 5.5-based, we see this as important for 10.0 as well (merge has already started to happen with WSREP API 24)
  • 32. TokuDB • It’s now opensource - separate MariaDB 5.5+TokuDB • Improved insert & query speed, compression, replication performance and online schema flexibility • Uses Fractal Tree Indexes instead of B-Tree • Tests & builds of TokuDB on multiple platforms (think greater distribution)
  • 33. CONNECT Storage Engine • Made by Olivier Bertrand • Read, write & update files in different storage formats: • .DBF (dBASE format) • .CSV • .INI • XML • ODBC • Possible to join data from CassandraSE, XtraDB and an ODBC data source like Oracle
  • 34. Benchmarks • “Lies, damned lies, and statistics” - Mark Twain • http://blog.mariadb.org/sysbench-oltp- mysql-5-6-vs-mariadb-10-0/ • http://dimitrik.free.fr/blog/archives/2013/02/ mysql-performance-mysql-56-vs-mysql-55- vs-mariadb-55.html • Yes, we’ve gotten Oracle to notice MariaDB :-)
  • 35. Continued commitments • Security • Since about a year now, we’re the go-to people for security - good track record • We don’t like regressions • http://www.skysql.com/blogs/hartmut/nasty-innodb-regression- mysql-5525 • http://www.skysql.com/blogs/kolbe/heads-no-more-query-cache- partitioned-tables-mysql-5523 • We care about backward compatibility & introduce features carefully • XtraDB innodb_adaptive_checkpoint=none|reflex|estimate| keep_average (no more reflex...)
  • 36. Community involvement • Many features since MariaDB 5.2 have come from the community or are sponsored features (5.3, 5.5) • Knowledgebase has 3,000+ articles in English • Yearly downloads of half a million* (more users from mirrors + distributions) • Active mailing lists (stats on KB) • Google Summer of Code 2013 • MariaDB User Groups
  • 37. MariaDB is gaining popularity • Wikipedia (English, German),Wikidata running MariaDB 5.5 • Google has public commitment to move to MariaDB 10 • Fedora, OpenSUSE shipping MariaDB as a default • Slackware, Chakra Linux,ArchLinux have followed suit • Many success stories at KB: Limelight Networks, Nimbuzz, Paybox, FictionPress, OLX, SlashGear,Web of Trust, SpamExperts, Cougarboard, etc.
  • 38. MariaDB deployed “MariaDB had these same bugs that we ran into with MySQL. However the big difference was that when we reported these bugs, they were quickly resolved within 48 hours!” -- Dreas van Donselaar, Chief Technology Officer, SpamExperts B.V. after migrating over 300 servers from MySQL 5.0 to MariaDB 5.1. “Migrating from MySQL 5.1 to MariaDB 5.2 was as simple as removing MySQL RPMs and installing the MariaDB packages, then running mysql_upgrade.” - Panayot Belchev, proprietor, Host Bulgaria on providing MariaDB to over 7,000 of their web hosting customers. “We made the switch on Saturday -- and we’re seeing benefits already -- our daily optimization time is down from 24 minutes to just 4 minutes” -- Ali Watters, CEO, travelblog.org happy users: pap.fr, Paybox Services, OLX, Jelastic, Web of Trust,Wikipedia, Craigslist, etc. “@nginxorg & @mariadb have helped me save $12000/year in infrastructure cost. I love it! Do more with less!” - Ewdison Then, CEO, Slashgear We upgraded the support.mozilla.org databases from Percona 5.1 to MariaDB 5.5. One of the engineers and I had a conversation where he mentioned that “one of our worst performing views on SUMO is doing waaaayyy better with the upgraded databases”, that it “seems more stable” and that “I stopped receiving ‘MySQL went away or disconnected emails’ which came in once in a while.” - Sheeri Cabral, Mozilla IT
  • 39. MariaDB Foundation • Foundation is driver of MariaDB project • Custodian of code, guardian of community • Foundation can never be controlled by single entity or person • Designed to be self-sustaining
  • 40. MariaDB Foundation Goals • Increase adoption of MariaDB • Ensure sustainable high-quality efforts to build, test and distribute MariaDB • Ensure that community patches are reviewed and adopted • Guarantee a community voice • Keep MariaDB compatible with MySQL • Maintain mariadb.org
  • 41. MariaDB Foundation People • More founders & sponsors are welcome • Michael Widenius, CTO: monty@mariadb.org • Andrew Katz, Legal Counsel: andrew@mariadb.org • Simon Phipps, CEO: simon@mariadb.org • Jeremy Zawodny (Craigslist), Mike Milinkovich (Eclipse Foundation) on Board
  • 42. Coming up next • Column level encryption via MyDiamo from Penta Security • New optimizations for Fusion-IO • You can shape the roadmap
  • 43. Well supported • Everyone supports MariaDB from a support standpoint with the exception of Oracle • SkySQL, Percona, etc. • Jelastic has it as PaaS too • We support all GA releases for 5 years for security, etc.
  • 44. User stats plugin • Disabled by default, consider enabling it to show use! http://mariadb.org/feedback_plugin/ data from over 113 countries!
  • 45. Compatibility with MySQL • No NDB Cluster • XtraDB enabled as default up to 5.5, InnoDB in 10.0 (for now) • Optimizer: no worse than current plan
  • 46. FAQ • Can I replicate from MySQL 5.6 to MariaDB 10.x? • Yes • Can I replicate from MariaDB 10.x to MariaDB 5.5? • Yes • Can I replicate from MariaDB 10.x to MySQL 5.5/5.6? • No
  • 47. FAQ on tools • SELECTVERSION() returns 10.0.1- MariaDB • Version string in handshake packet will be 5.5.30-mysql-10.0.2-MariaDB (mysql#68187, MDEV-4088) • Tools should start recognising MariaDB for additional feature-set (mytop, HeidiSQL, etc.)
  • 48. Conclusion • We’ve spent a lot of time adding features, some in parallel, some ahead • MariaDB is binary compatible with MySQL • Open bugs system, test suite, discussion lists • Opensource, feature rich, no commercial extensions
  • 49. Resources • bugs: mariadb.org/jira • maria-discuss@lists.launchpad.net • maria-developers@lists.launchpad.net • fb.com/MariaDB.dbms • twitter: @mariadb • google plus: +MariaDB • #maria on irc.freenode.net • http://kb.askmonty.org/
  • 50. Thanks/Q&A Colin Charles, colin@mariadb.org | byte@bytebot.net http://bytebot.net/blog/ | @bytebot slides: slideshare.net/bytebot/ planetmysql.org planetmariadb.org