SlideShare ist ein Scribd-Unternehmen logo
1 von 48
Reasons to switch to MariaDB 10.0

MariaDB 10.0

Paris, December 17, 2013
Michael “Monty” Widenius
Entrepreneur, MariaDB hacker
monty@mariadb.org
http://mariadb.org/
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Questions addressed in talk
This talk is aimed for people considering to move to MariaDB 10.0 from MySQL
5.5 or MariaDB 5.5.
The talk aims to address these points:
1) Why MariaDB
2) What is MariaDB
3) Features of the different MariaDB releases
4) Some benchmarks
5) The role and impact of the MariaDB foundation
6) Reasons to switch to MariaDB

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Maria

Why Maria...
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Why MariaDB was created

“Save the People, Save the Product”
To keep the MySQL talent together
● To ensure that a free version of MySQL always exists
● To get one community developed and maintained branch
● Work with other MySQL forks/branches to share knowhow and
code
●

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB Foundation Overview

The Foundation is the new driver of the MariaDB project
Custodian of the code, Guardian of the community
Foundation can never to be controlled by a single entity or person

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB Foundation Goals
That MariaDB be actively developed in the community and to:
● 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.
The MariaDB foundation now employes:
● Management team: CEO, CTO, lawyer
● 3 full time MariaDB developers (including the CTO)
● 1 documentation writer
● 1 Debian package maintainer
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB Foundation members
Many of the MariaDB 10.0 features has been developed together
with the MariaDB foundation!
The foundation are very grateful to it's 2012 members, who have
made MariaDB 10.0 possible:
Booking.com
● SkySQL
● Parallels
●

Additional sponsors can be found on mariadb.org
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB Foundation

More members and sponsors are welcome!
If you care about the future of the MySQL ecosystem,
please contact us and
and ask how you can get involved!
Simon Phipps, CEO, simon@mariadb.org
Michael Widenius, CTO, monty@mariadb.org

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB server is a branch of MySQL
User level (data, API, replication..) compatible with MySQL
● Drop in replacement
● More plugins, more features, faster, better code quality.
● GPL-only server license.
● LGPL C and Java connectors.
● More open development
● Source in public repository on launchpad
● Active external contributors
● All development plans public on mariadb.com, anyone can add
to it or be part of the development of them
●

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB server releases
MariaDB 5.1 was released as stable in February 2010
● MariaDB 5.2 was released as stable in November 2010
● MariaDB 5.3 was released as stable in April 2012
● MariaDB 5.5 was released as stable in April 2012
● MariaDB 10.0 was released as alpha in November 2012
● First beta (feature complete) released November 7, 2013
● We where mainly waiting for the last critical feature, Parallel
replication, to be done. (One known bug left)
●

●

MariaDB-Galera (multi-master) was released as stable (GA) in
February 2013 after a lot of testing.
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Feedback plugin
●
●

●

●

●
●

●

All recent MariaDB versions has the feedback plugin
Enable by adding “plugin-load=feedback.so” and "enable-feedback” to the
[mysqld] section in my.cnf.
Feedback plugin will automatically send a report (basicly SHOW
STATUS)a few minutes after a startup and once a week
This information is used to decide what features should be
developed/expanded upon
For more information see https://mariadb.com/kb/en/feedback-plugin/
For statistics see
http://mariadb.org/feedback_plugin/
In November 2014 some 4000 people has it enabled
--enable-feedback

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Feedback plugin
Some statistics

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Major new features in MariaDB
New Storage engines
●

SphinxSE: Text search within MariaDB (5.2)
●

●

Aria: Replacement of MyISAM; Can be run in non transactional or crash safe
mode (5.2)
●

●
●
●

●

●

Used for internal temporary tables instead of MyISAM to speed up results.

Cassandra: Allows you to read and update tables stored in Cassandra (10.0.1)
Connect: Can read and update a lot of different formats (including ODBC). (10.0.2)
TokuDB: High speed insert/select storage engine using Fractal Tree ® indexing.
(5.5.33 and 10.0.5)
Spider: Storage engine with built in sharding. (10.0.4)
Storage-engine-specific CREATE TABLE options
●

●

Built-in Sphinx client that talks to searchd, run search queries, and obtain search results.

Makes life easier for SE vendors

Engine independent statistics

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Major new features in MariaDB
New Replication features
●
●
●

Multi source replication (10.0)
Global transaction ID for replication
Parallel replication

MariaDB is also working closely with the Galera team to provide reliable multi-master
replication.

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Galera multi-master replication
Benefits:
High up time, no data loss
Performance and scalability
read & write

read & write

read & write

MariaDB

MariaDB

MariaDB

Galera Replication

www.codersip.com
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.

Read & write access to any node
Client can connect to any node
Each node have identical data
Add nodes on the fly
Replication is synchronous
Major new features in MariaDB
New functionality
●

●

●

●
●
●
●
●
●
●

Virtual columns
● Columns that are an expression and are calculated on retrieval.
Dynamic columns (5.3)
● Allows one to 'have a different set of columns per row'
Full microsecond support. This includes TIMESTAMP, TIME DATETIME types,
NOW() and all CAST and TIME related functions, replication. (5.3)
Pluggable Authentication (5.2)
Audit Plugin (10.0.6)
DELETE … RETURNING (10.0)
Roles (group grant's)
Much better GIS support (We can now run all Open Street Map queries)
SHUTDOWN statement (10.0)
Killing query by query id (not only thread id). (10.0)

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Major new features in MariaDB
Making life easier
●

●

●

●
●
●
●
●

Extended User Statistics (5.2)
● Client, User, Index and Table statistics.
More status variables (Handler_tmp_read/update, per thread memory
used etc..)
● https://mariadb.com/kb/en/server-status-variables/
Progress report (with PUSH method) for ALTER TABLE, LOAD DATA
INFILE, REPAIR, OPTIMIZE & ANALYZE (5.3)
SHOW EXPLAIN (see what other thread is doing) (10.0)
EXPLAIN in slow query log (10.0)
GET DIAGNOSTICS (from MySQL 5.6)
Better performance schema (from MySQL 5.6)
Windows installer that includes Windows GUI-tool (HeidiSQL)

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Major new features in MariaDB
Speed improvements
●

●
●
●
●

●

●
●
●

Group commit between binary log and storage engines (5.3 & 10.0)
● FASTER and safer replication (see separate slide)
Fast 'copying to temp table' phase (speeds up GROUP BY) (5.2)
Segmented MyISAM key cache (see separate slide) (5.2)
Aria for internal temporary tables (store temp. results in memory). (5.1)
50 % Faster HANDLER commands; HANDLER READ now also work with prepared
statements (5.3)
Thread Pool (5.5) ; Similar to what you get with MySQL enterprise!
● Allows you to limit the number of worker threads at machines peek performance.
● More fair scheduler; Less query time distribution
● If too many queries, machine can run at 1% of peek performance
Online ALTER TABLE for InnoDB and TokuDB (10.0); From MySQL 5.6
Faster ALTER TABLE with UNIQUE index (10.0)
Faster connect of new clients (10.0)

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Major new features in MariaDB
Better optimizer
Faster subqueries
● Back porting and extending subquery optimization from MySQL 6.0
● No materialization for many kinds of subqueries or VIEW's in the FROM clause.
SELECT * from (SELECT ....)
● Caching of subquery results
In applicable cases, you can get 10x – 100x speedups.
● Faster joins (of big tables) thanks to
● Multi-Read-Range (MRR) access (better than in MySQL 5.6)
● Batch key access (BKA)
● Index condition pushdown
● Classic Hash joins
● Table elimination (5.1)
● Histogram based statistics for non indexed columns (10.0)
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB 10.0
Features from MySQL 5.6
Features back ported from MySQL 5.6:
● All InnoDB changes
● Performance schema changes
● Read only transaction (significant InnoDB optimization)
● Online ALTER TABLE
Features from MySQL 5.6 that are reimplemented:
● Better error message (with system error string)
● NOW() as default value for datetime
● Global transaction ID for replication
● Parallel replication

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MyISAM Segmented key cache

●
●
●

●

Blue line is without segmented key cache.
Solves one of the major read bottlenecks for MyISAM
We see up to 250% performance gain depending on the amount of concurrent
users.
Fix applies to all MyISAM usage with many readers!

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Group commit, verified

Source: Marc Callaghan's facebook blog for a server with 400 microsecond fsync latency
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Benchmark of new group commit
Comparison with MySQL 5.6

●
●
●

MySQL 5.6 also removes checkpoint-per-commit
More complex thread scheduling, less grouping of commits
Does not remove stall on LOCK_log, less grouping of commits

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
New thread pool for 5.5

8000
7000

OLTP (ro) Throughput, tps

6000
5000
pool-of-threads
thread-per-connection

4000
3000
2000
1000
0
8

16

32

64

128

256

Concurrent Clients

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.

512

1024

2048

4096
Benefits of MariaDB 10
GTID (Global transaction id)
Global transaction ID allows you to easily promote a slave as a new master.
●
●

●
●

●

Much simpler and more robust design than what is in MySQL 5.6
GTID can be enabled or disabled independently and online for masters or
slaves
● In MySQL 5.6 one has to shut down all servers at once and enable
GTID mode globally on both masters and slaves
Slaves using GTID do not have to have binary logging enabled.
Supports multiple replication domains (independent binlog streams)
● Queries in different domains can be run in parallel on the slave.
Supports multi-source replication

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Benefits of MariaDB 10
Parallel replication
Multi-source replication from different masters executed in parallel
● Queries from different domains are executed in parallel
● Queries that are run in parallel on the master are run in parallel on
the slave (based on group commit).
● Transactions modifying the same table can be updated in
parallel on the slave!
● Supports both statement based and row based replication.
●

Conclusion:
● For the first time in MySQL/MariaDB history, the slave will be as
fast as the master!
(By MySQL is a registered trademarkdomains, you could make the slave even faster than the master...)
Notice: using dynamic of Sun Microsystems, Inc.
MariaDB and NoSQL
The main reasons for using NoSQL are:
● Handling of unstructured data (not everything is table and fixed number of
columns)
● Faster replication (usually with 'unconventional' shortcuts)
●

●

●
●

The same way MySQL with it's storage engine interface can handle both
transactional and datawarehousing , we are extending MariaDB to be a bridge
between SQL and NoSQL.
50 % Faster HANDLER commands in MariaDB 5.3; HANDLER READ now also
work with prepared statements.
HandlerSocket compiled in (Direct access to InnoDB)
Dynamic columns (each row can have different set of columns)

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
SQL doesn't solve all common problems
The (web) store problem:
All items needs: ID, Type, Price, Country, Manufacturer)
A T-Shirt has the following additional properties:
Size, color...
A computer has the following additional properties:
CPU, MHz, memory, Watt...
There is no easy way to store many different types into a relational
database!
(It will not work by having one table/types as joins becomes impossible to
manage).
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Dynamic columns in MariaDB 5.3
With dynamic columns all extra columns are stored in one or
many packed blobs, maintained by the database.
● You can instantly add more columns, remove or query them for a
row.
● You can access columns in the server or retrieve the full blob to
the client and manipulate it there.
● You can use virtual columns to create indexes on some values.
● True indexes for dynamic columns is planned for later.
● Implemented trough functions to enable use by ODBC etc.
● First implementation uses an integer to access columns.
● In MariaDB 10.0 columns can be accessed by name.
●

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Dynamic columns in MariaDB 5.3
●

Simple set of functions (available in server and client):
● COLUMN_CREATE(column_nr, value,[column_nr,....])
● COLUMN_ADD(blob,column_nr, value, [column_nr,...])
● COLUMN_DELETE(blob, column_nr, column_nr...);
● COLUMN_EXISTS(blob, column_nr);
● COLUMN_LIST(blob, column_nr);
● COLUMN_GET(blob, column_nr, type);

As a proof of concept we have in MariaDB 10.0 created storage engines for
Cassandra and LevelDB where we use dynamic columns as a bridge.
We are working on doing the same with MongoDB.
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Optimizations comparison
Feature
Index Condition Pushdown (ICP)
Disk-sweep Multi-range read (DS-MRR)
DS-MRR with Key-ordered retrieval
Index_merge / Sort_intersection
Cost-based choice of range vs. index_merge
ORDER BY ... LIMIT <small_limit>

Use extended (hidden) primary keys for
innodb/xtradb
Batched key access (BKA)
Block hash join
User-set memory limits on join buffers
Apply early outer table ON conditions
Null-rejecting trademark of Sun Microsystems, Inc. early for NULLs
Notice: MySQL is a registered conditions tested

MariaDB 5.3 MySQL 5.5 MySQL 5.6

Yes
Yes
Yes
Yes
Yes
(In 10.0)
5.5

Yes
Yes

Yes
Yes
Yes
Yes

Yes

Yes
Optimizations comparison
Feature

Subquery: In-to-exists
Subquery: Semi-join
Subquery: Materialization
Subquery: NULL-aware Materialization
Subquery: Cost choice of materialization vs.
in-to-exists
Subquery: Cache
Subquery: Fast explain with subqueries
Delayed materialization of derived tables /
materialized views

Instant EXPLAIN for derived tables
Derived Table with Keys optimization
Fields of merge-able views and derived
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.

MariaDB 5.3
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes

MySQL 5.5
Yes

MySQL 5.6
Yes
Yes
Yes

Yes
Yes
Yes
Optimizations comparison
Feature

MariaDB
5.3/5.5

LIMIT ROWS EXAMINED rows_limit
Systematic control of all optimizer strategies
Explain for DELETE, INSERT, REPLACE,
and UPDATE
EXPLAIN in JSON format
More detailed and consistent EXPLAIN for
subqueries

5.5
Yes

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.

MySQL
5.5

MySQL
5.6
Partial
Yes
Yes

Yes
Why MariaDB 10.0
●

●

●

MariaDB 5.5 already have most (+ a lot more) of the optimizer features of
MySQL 5.6
MariaDB 5.5 is already a superset of MySQL 5.5. MySQL 5.6 has only a fraction
of the MariaDB 5.5 new features.
A full merge of MySQL 5.6 into MariaDB 5.6 is a one year project as a lot of the
code has to be completely rewritten.
Features and usable code are removed, either intentionally or by mistake
● New code is way to complex (you can do same thing much simpler)
● Lots of new introduced bugs we have to get rid of.
● It's clear that some of the new MySQL programmers doesn't understand the current code
(see Kristian Nielsen's blog)
● A lot of the new code is re-factoring we don't want to have.
●

●

→ Better to do the merge in 2 steps into 10.0, and10.1
MariaDB 10.1 will have all important features of MySQL 5.6

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Moving to MariaDB 10.0
MariaDB 10.0 beta should be binary compatible with MySQL 5.6 on:
● Data on disk
● Communication on the wire (ie, all MySQL connectors and applications
following the MySQL specifications should work with MariaDB)
● Configure options (needs to be verified before gamma)
● SQL Syntax
Some configure options or optimizations may not be in MariaDB 10.0, but
these should only affect performance. Some things will be faster, other
things a bit slower in MariaDB than in MySQL.
We aim to have full compatibility for all important things that MySQL 5.6
supports in MariaDB 10.1.

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
What are planned for MariaDB 10.x ?
This list of proposed features is still work in progress, and depends on the
community and customers.
● GIS
● OpenGIS compliance (largely done). MariaDB can already work with
OpenGIS data!
● Deeper integration of GIS with optimizer
● More online operations
● Analyze table
● Compatibility & usability
● IPv6 type
● Query logging and summary per query
● Audit for specific users
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
What is planned for MariaDB 10.x ?
Replication
● Extend group commit to have on sync per group commit
● ALTER TABLE's can be applied in parallel
● Statistics and monitoring
● Better EXPLAIN
● Persistent table statistics
● Log all SQL errors
● Progress indicator for SELECT
●

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
What is planned for MariaDB 10.x ?
●

●

●

Optimizer
● Implement UNION ALL without usage of a temporary table
● Grace HASH join and Sort merge join (Need sponsors)
Performance
● Better multi CPU performance above 16 cores
● More scalable query cache under higher concurrency
● Faster VIEW (don't open & parse view for every query)
Easy of use
● VARCHAR and BLOB support for memory tables
● Table functions

For full list, see
● https://mariadb.com/kb/en/what-is-mariadb-100/
● https://mariadb.com/kb/en/plans-for-10x
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
New LGPL client libraries
LGPL client libraries for C and Java
● C is based on the LGPL library from MySQL 3.23
● API compatible with latest MySQL client libraries.
● Java is based on the drizzle driver.
● LGPL ODBC driver is under development.
● Works with MariaDB, Percona server, MySQL and drizzle
● Developed by Monty Program Ab and SkySQL.
● Announced and released 2012-10-29
●

You can download these from https://downloads.mariadb.org/
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB and TokuDB
TokudB is now a native plugin for MariaDB.
This means that the official MariaDB binary is able to dynamically load the TokuDB storage
engine directly (no patches needed for MariaDB) for all platforms that TokuDB support..
TokuDB is added to the MariaDB buildbot test suite to ensure that the combination is
properly tested on all supported platforms.
Note that the TokuDB version for MariaDB 5.5 does not have all online features that the
original TokuDB version from www.tokutek.com as we didn't want to do big changes in 5.5.
The online features is in 10.0.
About TokuDB
- TokuDB uses Fractal Tree® indexing to improve insert and query speed, compression,
replication performance, and online schema flexibility.
- TokuDB is created by Tokutek Inc. See www.tokutek.com for details.
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Connect storage engine
MariaDB 10.0.2 includes the Connect storage engine by Olivier Bertrand.
You can read, write and update files in a lot of different storage formats:
● Various fixed and dynamic text formats
● .DBF (dBASE format)
● .CSV
● .INI
● .XML
● ODBC ; Table extracted from an application accessible with ODBC
●

With MariaDB and CONNECT you can for example join data in INNODB,
PostgreSQL, ORACLE and Cassandra in the same query!

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Free MariaDB/MySQL/SQL99
documentation at mariadb.com/kb

The knowledgebase allows you to:
● Find answers to your problems
● Ask questions and get answers from others
● Add your own documentation or help with translations

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
There are a lot of others involved
Most features in MariaDB 5.2 were contributed by the community!
● Many of the advanced features in MariaDB 5.3 are sponsored features
● In the mariadb.com knowledge base (free MariaDB and MySQL documentation) we
have now 3000 (mostly English) articles
Statistics from the past month (December 2013):
● Added/Changed Articles: 208
● On Freenode #maria, 550 people wrote 10173 lines
● Launchpad Activity:
● 25 active branches
● 395 commits
● Hundreds of thousands of downloads of MariaDB. Probably >> 1M users
● Companies converting hundreds of machines to MariaDB in a few days
● See http://mariadb.com/kb/en/mariadb-case-studies
● Google has employed people to work on MariaDB.
●

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB popularity is increasing
In December 2012
● Wikipedia announced they are moving to MariaDB.
● In January-March 2013
● DB at Mozilla blogged they have moved to MariaDB
● Fedora voted 7-0 to make MariaDB the default MySQL database on Fedora.
● OpenSuse 12.3 now includes MariaDB as default.
● Slackware, Chakra Linux and Arch Linux have announced that MariaDB is default.
● In April 2013
● Google is basing their new SQL offerings on MariaDB
● FusionIO is showing benchmarks with MariaDB.
● June 2013
● RedHat will include MariaDB in RedHat Enterprise.
● November 2013
● MariaDB is in the Debian ftp queue to be included into Debian
● December 2013
● RedHat Enterprise Linux 7 Beta has MariaDB as default
Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
●
Predicted MySQL usage

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
MariaDB 10.0 was made possible thanks to
●

●

●

●

●

Oracle
● Updated InnoDB, Updated Performance schema, online alter table
SkySQL
● Global Transaction Id, Parallel replication, Engine independent statistics, DELETE
RETURNING, Cassandra engine, GIS support, QA
MariaDB Foundation
● Merge of MySQL 5.6, reviews of community patches, builds, speed optimizations,
new character sets
The MariaDB Community
● CONNECT ENGINE by Olivier Bertrand
● Spider by Kentoku Shiba
● Multi-source replication, by Lixun Peng @ taobao
Google, through Google summer of code
● Roles by Vicențiu Ciorbaru
● Move to new regexp library (PRCE) by Sudheera Palihakkara

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Reasons to switch to MariaDB today
●

●

●

●

MariaDB has 30 man years of more development than MySQL (and the gap will
continue growing).
MariaDB is maintained by the people that originally created MySQL and has the
best knowledge of the MySQL code.
MariaDB is binary compatible (data and API) with MySQL, so its trivial to replace
MySQL with MariaDB (minutes).
Reasons to switch to MariaDB
Open source development: Anyone can be part of the development at all stages. Developer
meetings are public!
● Less risk as MariaDB will not remove features like MySQL is doing (thread pool, storage
engines, older OS)
● More features, including critical ones like microsecond, better statistics, dynamic columns
and TokuDB, Cassandra and the Connect storage engines.
● Faster queries thanks to XtraDB (InnoDB plugin fork from Percona), TokuDB, a much better
optimizer, better replication and better code.
●

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
Questions ?
For questions later, use the public MariaDB email list at
maria-discuss@lists.launchpad.net or #maria on Freenode.
For questions regarding the MariaDB foundation:
monty@mariadb.org

Notice: MySQL is a registered trademark of Sun Microsystems, Inc.

Weitere ähnliche Inhalte

Was ist angesagt?

Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)
Ontico
 

Was ist angesagt? (20)

Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0
 
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.1   what's new and what's coming in 10.2 - Tokyo MariaDB MeetupMariaDB 10.1   what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
 
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 10: The Complete Tutorial
MariaDB 10: The Complete TutorialMariaDB 10: The Complete Tutorial
MariaDB 10: The Complete Tutorial
 
What is MariaDB Server 10.3?
What is MariaDB Server 10.3?What is MariaDB Server 10.3?
What is MariaDB Server 10.3?
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB Server
 
MariaDB: The New M In LAMP - SCALE10x
MariaDB: The New M In LAMP - SCALE10xMariaDB: The New M In LAMP - SCALE10x
MariaDB: The New M In LAMP - SCALE10x
 
The Complete MariaDB Server tutorial
The Complete MariaDB Server tutorialThe Complete MariaDB Server tutorial
The Complete MariaDB Server tutorial
 
Maria db vs mysql
Maria db vs mysqlMaria db vs mysql
Maria db vs mysql
 
Databases in the hosted cloud
Databases in the hosted cloud Databases in the hosted cloud
Databases in the hosted cloud
 
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
 
My first moments with MongoDB
My first moments with MongoDBMy first moments with MongoDB
My first moments with MongoDB
 
Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)
 
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016
 
MariaDB 5.5 and what comes next - Percona Live NYC 2012
MariaDB 5.5 and what comes next - Percona Live NYC 2012MariaDB 5.5 and what comes next - Percona Live NYC 2012
MariaDB 5.5 and what comes next - Percona Live NYC 2012
 
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!
 
Databases in the hosted cloud
Databases in the hosted cloudDatabases in the hosted cloud
Databases in the hosted cloud
 
Lessons from database failures
Lessons from database failuresLessons from database failures
Lessons from database failures
 
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
 
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
 

Ähnlich wie MariaDB 10.0 - SkySQL Paris Meetup

A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin CharlesA26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
Insight Technology, Inc.
 
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterWebseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
MariaDB Corporation
 

Ähnlich wie MariaDB 10.0 - SkySQL Paris Meetup (20)

MariaDB 10.2 & MariaDB 10.1 by Michael Monty Widenius at Database Camp 2016 @ UN
MariaDB 10.2 & MariaDB 10.1 by Michael Monty Widenius at Database Camp 2016 @ UNMariaDB 10.2 & MariaDB 10.1 by Michael Monty Widenius at Database Camp 2016 @ UN
MariaDB 10.2 & MariaDB 10.1 by Michael Monty Widenius at Database Camp 2016 @ UN
 
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
 
MariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin Frankfurt
MariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin FrankfurtMariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin Frankfurt
MariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin Frankfurt
 
MariaDB 10 and Beyond
MariaDB 10 and BeyondMariaDB 10 and Beyond
MariaDB 10 and Beyond
 
Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09
 
The New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and MoreThe New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and More
 
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin CharlesA26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
 
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterWebseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
 
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014 F...
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014 F...MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014 F...
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014 F...
 
Webinar - Key Reasons to Upgrade to MySQL 8.0 or MariaDB 10.11
Webinar - Key Reasons to Upgrade to MySQL 8.0 or MariaDB 10.11Webinar - Key Reasons to Upgrade to MySQL 8.0 or MariaDB 10.11
Webinar - Key Reasons to Upgrade to MySQL 8.0 or MariaDB 10.11
 
SkySQL MariaDB 云数据组件
SkySQL MariaDB 云数据组件SkySQL MariaDB 云数据组件
SkySQL MariaDB 云数据组件
 
InnoDB Cluster Experience (MySQL User Camp)
InnoDB Cluster Experience (MySQL User Camp)InnoDB Cluster Experience (MySQL User Camp)
InnoDB Cluster Experience (MySQL User Camp)
 
MySQL Scalability and Reliability for Replicated Environment
MySQL Scalability and Reliability for Replicated EnvironmentMySQL Scalability and Reliability for Replicated Environment
MySQL Scalability and Reliability for Replicated Environment
 
MySQL Scalability and Reliability for Replicated Environment
MySQL Scalability and Reliability for Replicated EnvironmentMySQL Scalability and Reliability for Replicated Environment
MySQL Scalability and Reliability for Replicated Environment
 
Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么
 
Customer Experience: InnoDB Cluster Implementation by PR Karthik
Customer Experience: InnoDB Cluster Implementation by PR KarthikCustomer Experience: InnoDB Cluster Implementation by PR Karthik
Customer Experience: InnoDB Cluster Implementation by PR Karthik
 
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 The community developed branch of MySQL" by Monty Michael Widenius @...
"MariaDB The community developed branch of MySQL" by Monty Michael Widenius @..."MariaDB The community developed branch of MySQL" by Monty Michael Widenius @...
"MariaDB The community developed branch of MySQL" by Monty Michael Widenius @...
 
Maria DBMS
Maria DBMSMaria DBMS
Maria DBMS
 
Best practices for MySQL High Availability Tutorial
Best practices for MySQL High Availability TutorialBest practices for MySQL High Availability Tutorial
Best practices for MySQL High Availability Tutorial
 

Mehr von MariaDB Corporation

Mehr von MariaDB Corporation (20)

High Performance Drupal with MariaDB
High Performance Drupal with MariaDBHigh Performance Drupal with MariaDB
High Performance Drupal with MariaDB
 
MaxScale - The Pluggable Router
MaxScale - The Pluggable RouterMaxScale - The Pluggable Router
MaxScale - The Pluggable Router
 
Skalierbarkeit mit MariaDB und MaxScale - MariaDB Roadshow Summer 2014 Hambur...
Skalierbarkeit mit MariaDB und MaxScale - MariaDB Roadshow Summer 2014 Hambur...Skalierbarkeit mit MariaDB und MaxScale - MariaDB Roadshow Summer 2014 Hambur...
Skalierbarkeit mit MariaDB und MaxScale - MariaDB Roadshow Summer 2014 Hambur...
 
Hochverfügbarkeit mit MariaDB Enterprise - MariaDB Roadshow Summer 2014 Hambu...
Hochverfügbarkeit mit MariaDB Enterprise - MariaDB Roadshow Summer 2014 Hambu...Hochverfügbarkeit mit MariaDB Enterprise - MariaDB Roadshow Summer 2014 Hambu...
Hochverfügbarkeit mit MariaDB Enterprise - MariaDB Roadshow Summer 2014 Hambu...
 
Automatisierung & Verwaltung von Datenbank - Clustern mit Severalnines - Mari...
Automatisierung & Verwaltung von Datenbank - Clustern mit Severalnines - Mari...Automatisierung & Verwaltung von Datenbank - Clustern mit Severalnines - Mari...
Automatisierung & Verwaltung von Datenbank - Clustern mit Severalnines - Mari...
 
MaxScale - The Pluggibale Router MariaDB Roadshow 2014 Paris
MaxScale - The Pluggibale Router MariaDB Roadshow 2014 ParisMaxScale - The Pluggibale Router MariaDB Roadshow 2014 Paris
MaxScale - The Pluggibale Router MariaDB Roadshow 2014 Paris
 
High Availability with MariaDB Enterprise
High Availability with MariaDB EnterpriseHigh Availability with MariaDB Enterprise
High Availability with MariaDB Enterprise
 
Galaxy Big Data with MariaDB
Galaxy Big Data with MariaDBGalaxy Big Data with MariaDB
Galaxy Big Data with MariaDB
 
Automatisation et Gestion de Cluster de Bases de Données MariaDB Roadshow
Automatisation et Gestion de Cluster de Bases de Données MariaDB RoadshowAutomatisation et Gestion de Cluster de Bases de Données MariaDB Roadshow
Automatisation et Gestion de Cluster de Bases de Données MariaDB Roadshow
 
Automation and Management of Database Clusters MariaDB Roadshow 2014
Automation and Management of Database Clusters MariaDB Roadshow 2014Automation and Management of Database Clusters MariaDB Roadshow 2014
Automation and Management of Database Clusters MariaDB Roadshow 2014
 
Automation and Management of Database Clusters
Automation and Management of Database ClustersAutomation and Management of Database Clusters
Automation and Management of Database Clusters
 
The New MariaDB Offering - MariaDB 10, MaxScale and more
The New MariaDB Offering - MariaDB 10, MaxScale and moreThe New MariaDB Offering - MariaDB 10, MaxScale and more
The New MariaDB Offering - MariaDB 10, MaxScale and more
 
MaxScale - The Pluggable Router
MaxScale - The Pluggable RouterMaxScale - The Pluggable Router
MaxScale - The Pluggable Router
 
High Availability with MariaDB Enterprise
High Availability with MariaDB EnterpriseHigh Availability with MariaDB Enterprise
High Availability with MariaDB Enterprise
 
MaxScale - the pluggable router
MaxScale - the pluggable routerMaxScale - the pluggable router
MaxScale - the pluggable router
 
CCM Escape Case Study - SkySQL Paris Meetup 17.12.2013
CCM Escape Case Study - SkySQL Paris Meetup 17.12.2013CCM Escape Case Study - SkySQL Paris Meetup 17.12.2013
CCM Escape Case Study - SkySQL Paris Meetup 17.12.2013
 
Galera cluster - SkySQL Paris Meetup 17.12.2013
Galera cluster - SkySQL Paris Meetup 17.12.2013Galera cluster - SkySQL Paris Meetup 17.12.2013
Galera cluster - SkySQL Paris Meetup 17.12.2013
 
MariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly AvailableMariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly Available
 
High Availability with Galera Cluster - SkySQL Road Show 2013 in Berlin
High Availability with Galera Cluster - SkySQL Road Show 2013 in BerlinHigh Availability with Galera Cluster - SkySQL Road Show 2013 in Berlin
High Availability with Galera Cluster - SkySQL Road Show 2013 in Berlin
 
MySQL & MariaDB - Innovation happens here - London Roadshow 2013
MySQL & MariaDB - Innovation happens here - London Roadshow 2013MySQL & MariaDB - Innovation happens here - London Roadshow 2013
MySQL & MariaDB - Innovation happens here - London Roadshow 2013
 

Kürzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Kürzlich hochgeladen (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

MariaDB 10.0 - SkySQL Paris Meetup

  • 1. Reasons to switch to MariaDB 10.0 MariaDB 10.0 Paris, December 17, 2013 Michael “Monty” Widenius Entrepreneur, MariaDB hacker monty@mariadb.org http://mariadb.org/ Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 2. Questions addressed in talk This talk is aimed for people considering to move to MariaDB 10.0 from MySQL 5.5 or MariaDB 5.5. The talk aims to address these points: 1) Why MariaDB 2) What is MariaDB 3) Features of the different MariaDB releases 4) Some benchmarks 5) The role and impact of the MariaDB foundation 6) Reasons to switch to MariaDB Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 3. Maria Why Maria... Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 4. Why MariaDB was created “Save the People, Save the Product” To keep the MySQL talent together ● To ensure that a free version of MySQL always exists ● To get one community developed and maintained branch ● Work with other MySQL forks/branches to share knowhow and code ● Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 5. MariaDB Foundation Overview The Foundation is the new driver of the MariaDB project Custodian of the code, Guardian of the community Foundation can never to be controlled by a single entity or person Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 6. MariaDB Foundation Goals That MariaDB be actively developed in the community and to: ● 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. The MariaDB foundation now employes: ● Management team: CEO, CTO, lawyer ● 3 full time MariaDB developers (including the CTO) ● 1 documentation writer ● 1 Debian package maintainer Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 7. MariaDB Foundation members Many of the MariaDB 10.0 features has been developed together with the MariaDB foundation! The foundation are very grateful to it's 2012 members, who have made MariaDB 10.0 possible: Booking.com ● SkySQL ● Parallels ● Additional sponsors can be found on mariadb.org Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 8. MariaDB Foundation More members and sponsors are welcome! If you care about the future of the MySQL ecosystem, please contact us and and ask how you can get involved! Simon Phipps, CEO, simon@mariadb.org Michael Widenius, CTO, monty@mariadb.org Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 9. MariaDB server is a branch of MySQL User level (data, API, replication..) compatible with MySQL ● Drop in replacement ● More plugins, more features, faster, better code quality. ● GPL-only server license. ● LGPL C and Java connectors. ● More open development ● Source in public repository on launchpad ● Active external contributors ● All development plans public on mariadb.com, anyone can add to it or be part of the development of them ● Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 10. MariaDB server releases MariaDB 5.1 was released as stable in February 2010 ● MariaDB 5.2 was released as stable in November 2010 ● MariaDB 5.3 was released as stable in April 2012 ● MariaDB 5.5 was released as stable in April 2012 ● MariaDB 10.0 was released as alpha in November 2012 ● First beta (feature complete) released November 7, 2013 ● We where mainly waiting for the last critical feature, Parallel replication, to be done. (One known bug left) ● ● MariaDB-Galera (multi-master) was released as stable (GA) in February 2013 after a lot of testing. Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 11. Feedback plugin ● ● ● ● ● ● ● All recent MariaDB versions has the feedback plugin Enable by adding “plugin-load=feedback.so” and "enable-feedback” to the [mysqld] section in my.cnf. Feedback plugin will automatically send a report (basicly SHOW STATUS)a few minutes after a startup and once a week This information is used to decide what features should be developed/expanded upon For more information see https://mariadb.com/kb/en/feedback-plugin/ For statistics see http://mariadb.org/feedback_plugin/ In November 2014 some 4000 people has it enabled --enable-feedback Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 12. Feedback plugin Some statistics Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 13. Major new features in MariaDB New Storage engines ● SphinxSE: Text search within MariaDB (5.2) ● ● Aria: Replacement of MyISAM; Can be run in non transactional or crash safe mode (5.2) ● ● ● ● ● ● Used for internal temporary tables instead of MyISAM to speed up results. Cassandra: Allows you to read and update tables stored in Cassandra (10.0.1) Connect: Can read and update a lot of different formats (including ODBC). (10.0.2) TokuDB: High speed insert/select storage engine using Fractal Tree ® indexing. (5.5.33 and 10.0.5) Spider: Storage engine with built in sharding. (10.0.4) Storage-engine-specific CREATE TABLE options ● ● Built-in Sphinx client that talks to searchd, run search queries, and obtain search results. Makes life easier for SE vendors Engine independent statistics Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 14. Major new features in MariaDB New Replication features ● ● ● Multi source replication (10.0) Global transaction ID for replication Parallel replication MariaDB is also working closely with the Galera team to provide reliable multi-master replication. Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 15. Galera multi-master replication Benefits: High up time, no data loss Performance and scalability read & write read & write read & write MariaDB MariaDB MariaDB Galera Replication www.codersip.com Notice: MySQL is a registered trademark of Sun Microsystems, Inc. Read & write access to any node Client can connect to any node Each node have identical data Add nodes on the fly Replication is synchronous
  • 16. Major new features in MariaDB New functionality ● ● ● ● ● ● ● ● ● ● Virtual columns ● Columns that are an expression and are calculated on retrieval. Dynamic columns (5.3) ● Allows one to 'have a different set of columns per row' Full microsecond support. This includes TIMESTAMP, TIME DATETIME types, NOW() and all CAST and TIME related functions, replication. (5.3) Pluggable Authentication (5.2) Audit Plugin (10.0.6) DELETE … RETURNING (10.0) Roles (group grant's) Much better GIS support (We can now run all Open Street Map queries) SHUTDOWN statement (10.0) Killing query by query id (not only thread id). (10.0) Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 17. Major new features in MariaDB Making life easier ● ● ● ● ● ● ● ● Extended User Statistics (5.2) ● Client, User, Index and Table statistics. More status variables (Handler_tmp_read/update, per thread memory used etc..) ● https://mariadb.com/kb/en/server-status-variables/ Progress report (with PUSH method) for ALTER TABLE, LOAD DATA INFILE, REPAIR, OPTIMIZE & ANALYZE (5.3) SHOW EXPLAIN (see what other thread is doing) (10.0) EXPLAIN in slow query log (10.0) GET DIAGNOSTICS (from MySQL 5.6) Better performance schema (from MySQL 5.6) Windows installer that includes Windows GUI-tool (HeidiSQL) Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 18. Major new features in MariaDB Speed improvements ● ● ● ● ● ● ● ● ● Group commit between binary log and storage engines (5.3 & 10.0) ● FASTER and safer replication (see separate slide) Fast 'copying to temp table' phase (speeds up GROUP BY) (5.2) Segmented MyISAM key cache (see separate slide) (5.2) Aria for internal temporary tables (store temp. results in memory). (5.1) 50 % Faster HANDLER commands; HANDLER READ now also work with prepared statements (5.3) Thread Pool (5.5) ; Similar to what you get with MySQL enterprise! ● Allows you to limit the number of worker threads at machines peek performance. ● More fair scheduler; Less query time distribution ● If too many queries, machine can run at 1% of peek performance Online ALTER TABLE for InnoDB and TokuDB (10.0); From MySQL 5.6 Faster ALTER TABLE with UNIQUE index (10.0) Faster connect of new clients (10.0) Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 19. Major new features in MariaDB Better optimizer Faster subqueries ● Back porting and extending subquery optimization from MySQL 6.0 ● No materialization for many kinds of subqueries or VIEW's in the FROM clause. SELECT * from (SELECT ....) ● Caching of subquery results In applicable cases, you can get 10x – 100x speedups. ● Faster joins (of big tables) thanks to ● Multi-Read-Range (MRR) access (better than in MySQL 5.6) ● Batch key access (BKA) ● Index condition pushdown ● Classic Hash joins ● Table elimination (5.1) ● Histogram based statistics for non indexed columns (10.0) Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 20. MariaDB 10.0 Features from MySQL 5.6 Features back ported from MySQL 5.6: ● All InnoDB changes ● Performance schema changes ● Read only transaction (significant InnoDB optimization) ● Online ALTER TABLE Features from MySQL 5.6 that are reimplemented: ● Better error message (with system error string) ● NOW() as default value for datetime ● Global transaction ID for replication ● Parallel replication Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 21. MyISAM Segmented key cache ● ● ● ● Blue line is without segmented key cache. Solves one of the major read bottlenecks for MyISAM We see up to 250% performance gain depending on the amount of concurrent users. Fix applies to all MyISAM usage with many readers! Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 22. Group commit, verified Source: Marc Callaghan's facebook blog for a server with 400 microsecond fsync latency Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 23. Benchmark of new group commit Comparison with MySQL 5.6 ● ● ● MySQL 5.6 also removes checkpoint-per-commit More complex thread scheduling, less grouping of commits Does not remove stall on LOCK_log, less grouping of commits Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 24. New thread pool for 5.5 8000 7000 OLTP (ro) Throughput, tps 6000 5000 pool-of-threads thread-per-connection 4000 3000 2000 1000 0 8 16 32 64 128 256 Concurrent Clients Notice: MySQL is a registered trademark of Sun Microsystems, Inc. 512 1024 2048 4096
  • 25. Benefits of MariaDB 10 GTID (Global transaction id) Global transaction ID allows you to easily promote a slave as a new master. ● ● ● ● ● Much simpler and more robust design than what is in MySQL 5.6 GTID can be enabled or disabled independently and online for masters or slaves ● In MySQL 5.6 one has to shut down all servers at once and enable GTID mode globally on both masters and slaves Slaves using GTID do not have to have binary logging enabled. Supports multiple replication domains (independent binlog streams) ● Queries in different domains can be run in parallel on the slave. Supports multi-source replication Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 26. Benefits of MariaDB 10 Parallel replication Multi-source replication from different masters executed in parallel ● Queries from different domains are executed in parallel ● Queries that are run in parallel on the master are run in parallel on the slave (based on group commit). ● Transactions modifying the same table can be updated in parallel on the slave! ● Supports both statement based and row based replication. ● Conclusion: ● For the first time in MySQL/MariaDB history, the slave will be as fast as the master! (By MySQL is a registered trademarkdomains, you could make the slave even faster than the master...) Notice: using dynamic of Sun Microsystems, Inc.
  • 27. MariaDB and NoSQL The main reasons for using NoSQL are: ● Handling of unstructured data (not everything is table and fixed number of columns) ● Faster replication (usually with 'unconventional' shortcuts) ● ● ● ● The same way MySQL with it's storage engine interface can handle both transactional and datawarehousing , we are extending MariaDB to be a bridge between SQL and NoSQL. 50 % Faster HANDLER commands in MariaDB 5.3; HANDLER READ now also work with prepared statements. HandlerSocket compiled in (Direct access to InnoDB) Dynamic columns (each row can have different set of columns) Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 28. SQL doesn't solve all common problems The (web) store problem: All items needs: ID, Type, Price, Country, Manufacturer) A T-Shirt has the following additional properties: Size, color... A computer has the following additional properties: CPU, MHz, memory, Watt... There is no easy way to store many different types into a relational database! (It will not work by having one table/types as joins becomes impossible to manage). Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 29. Dynamic columns in MariaDB 5.3 With dynamic columns all extra columns are stored in one or many packed blobs, maintained by the database. ● You can instantly add more columns, remove or query them for a row. ● You can access columns in the server or retrieve the full blob to the client and manipulate it there. ● You can use virtual columns to create indexes on some values. ● True indexes for dynamic columns is planned for later. ● Implemented trough functions to enable use by ODBC etc. ● First implementation uses an integer to access columns. ● In MariaDB 10.0 columns can be accessed by name. ● Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 30. Dynamic columns in MariaDB 5.3 ● Simple set of functions (available in server and client): ● COLUMN_CREATE(column_nr, value,[column_nr,....]) ● COLUMN_ADD(blob,column_nr, value, [column_nr,...]) ● COLUMN_DELETE(blob, column_nr, column_nr...); ● COLUMN_EXISTS(blob, column_nr); ● COLUMN_LIST(blob, column_nr); ● COLUMN_GET(blob, column_nr, type); As a proof of concept we have in MariaDB 10.0 created storage engines for Cassandra and LevelDB where we use dynamic columns as a bridge. We are working on doing the same with MongoDB. Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 31. Optimizations comparison Feature Index Condition Pushdown (ICP) Disk-sweep Multi-range read (DS-MRR) DS-MRR with Key-ordered retrieval Index_merge / Sort_intersection Cost-based choice of range vs. index_merge ORDER BY ... LIMIT <small_limit> Use extended (hidden) primary keys for innodb/xtradb Batched key access (BKA) Block hash join User-set memory limits on join buffers Apply early outer table ON conditions Null-rejecting trademark of Sun Microsystems, Inc. early for NULLs Notice: MySQL is a registered conditions tested MariaDB 5.3 MySQL 5.5 MySQL 5.6 Yes Yes Yes Yes Yes (In 10.0) 5.5 Yes Yes Yes Yes Yes Yes Yes Yes
  • 32. Optimizations comparison Feature Subquery: In-to-exists Subquery: Semi-join Subquery: Materialization Subquery: NULL-aware Materialization Subquery: Cost choice of materialization vs. in-to-exists Subquery: Cache Subquery: Fast explain with subqueries Delayed materialization of derived tables / materialized views Instant EXPLAIN for derived tables Derived Table with Keys optimization Fields of merge-able views and derived Notice: MySQL is a registered trademark of Sun Microsystems, Inc. MariaDB 5.3 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes MySQL 5.5 Yes MySQL 5.6 Yes Yes Yes Yes Yes Yes
  • 33. Optimizations comparison Feature MariaDB 5.3/5.5 LIMIT ROWS EXAMINED rows_limit Systematic control of all optimizer strategies Explain for DELETE, INSERT, REPLACE, and UPDATE EXPLAIN in JSON format More detailed and consistent EXPLAIN for subqueries 5.5 Yes Notice: MySQL is a registered trademark of Sun Microsystems, Inc. MySQL 5.5 MySQL 5.6 Partial Yes Yes Yes
  • 34. Why MariaDB 10.0 ● ● ● MariaDB 5.5 already have most (+ a lot more) of the optimizer features of MySQL 5.6 MariaDB 5.5 is already a superset of MySQL 5.5. MySQL 5.6 has only a fraction of the MariaDB 5.5 new features. A full merge of MySQL 5.6 into MariaDB 5.6 is a one year project as a lot of the code has to be completely rewritten. Features and usable code are removed, either intentionally or by mistake ● New code is way to complex (you can do same thing much simpler) ● Lots of new introduced bugs we have to get rid of. ● It's clear that some of the new MySQL programmers doesn't understand the current code (see Kristian Nielsen's blog) ● A lot of the new code is re-factoring we don't want to have. ● ● → Better to do the merge in 2 steps into 10.0, and10.1 MariaDB 10.1 will have all important features of MySQL 5.6 Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 35. Moving to MariaDB 10.0 MariaDB 10.0 beta should be binary compatible with MySQL 5.6 on: ● Data on disk ● Communication on the wire (ie, all MySQL connectors and applications following the MySQL specifications should work with MariaDB) ● Configure options (needs to be verified before gamma) ● SQL Syntax Some configure options or optimizations may not be in MariaDB 10.0, but these should only affect performance. Some things will be faster, other things a bit slower in MariaDB than in MySQL. We aim to have full compatibility for all important things that MySQL 5.6 supports in MariaDB 10.1. Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 36. What are planned for MariaDB 10.x ? This list of proposed features is still work in progress, and depends on the community and customers. ● GIS ● OpenGIS compliance (largely done). MariaDB can already work with OpenGIS data! ● Deeper integration of GIS with optimizer ● More online operations ● Analyze table ● Compatibility & usability ● IPv6 type ● Query logging and summary per query ● Audit for specific users Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 37. What is planned for MariaDB 10.x ? Replication ● Extend group commit to have on sync per group commit ● ALTER TABLE's can be applied in parallel ● Statistics and monitoring ● Better EXPLAIN ● Persistent table statistics ● Log all SQL errors ● Progress indicator for SELECT ● Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 38. What is planned for MariaDB 10.x ? ● ● ● Optimizer ● Implement UNION ALL without usage of a temporary table ● Grace HASH join and Sort merge join (Need sponsors) Performance ● Better multi CPU performance above 16 cores ● More scalable query cache under higher concurrency ● Faster VIEW (don't open & parse view for every query) Easy of use ● VARCHAR and BLOB support for memory tables ● Table functions For full list, see ● https://mariadb.com/kb/en/what-is-mariadb-100/ ● https://mariadb.com/kb/en/plans-for-10x Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 39. New LGPL client libraries LGPL client libraries for C and Java ● C is based on the LGPL library from MySQL 3.23 ● API compatible with latest MySQL client libraries. ● Java is based on the drizzle driver. ● LGPL ODBC driver is under development. ● Works with MariaDB, Percona server, MySQL and drizzle ● Developed by Monty Program Ab and SkySQL. ● Announced and released 2012-10-29 ● You can download these from https://downloads.mariadb.org/ Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 40. MariaDB and TokuDB TokudB is now a native plugin for MariaDB. This means that the official MariaDB binary is able to dynamically load the TokuDB storage engine directly (no patches needed for MariaDB) for all platforms that TokuDB support.. TokuDB is added to the MariaDB buildbot test suite to ensure that the combination is properly tested on all supported platforms. Note that the TokuDB version for MariaDB 5.5 does not have all online features that the original TokuDB version from www.tokutek.com as we didn't want to do big changes in 5.5. The online features is in 10.0. About TokuDB - TokuDB uses Fractal Tree® indexing to improve insert and query speed, compression, replication performance, and online schema flexibility. - TokuDB is created by Tokutek Inc. See www.tokutek.com for details. Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 41. Connect storage engine MariaDB 10.0.2 includes the Connect storage engine by Olivier Bertrand. You can read, write and update files in a lot of different storage formats: ● Various fixed and dynamic text formats ● .DBF (dBASE format) ● .CSV ● .INI ● .XML ● ODBC ; Table extracted from an application accessible with ODBC ● With MariaDB and CONNECT you can for example join data in INNODB, PostgreSQL, ORACLE and Cassandra in the same query! Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 42. Free MariaDB/MySQL/SQL99 documentation at mariadb.com/kb The knowledgebase allows you to: ● Find answers to your problems ● Ask questions and get answers from others ● Add your own documentation or help with translations Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 43. There are a lot of others involved Most features in MariaDB 5.2 were contributed by the community! ● Many of the advanced features in MariaDB 5.3 are sponsored features ● In the mariadb.com knowledge base (free MariaDB and MySQL documentation) we have now 3000 (mostly English) articles Statistics from the past month (December 2013): ● Added/Changed Articles: 208 ● On Freenode #maria, 550 people wrote 10173 lines ● Launchpad Activity: ● 25 active branches ● 395 commits ● Hundreds of thousands of downloads of MariaDB. Probably >> 1M users ● Companies converting hundreds of machines to MariaDB in a few days ● See http://mariadb.com/kb/en/mariadb-case-studies ● Google has employed people to work on MariaDB. ● Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 44. MariaDB popularity is increasing In December 2012 ● Wikipedia announced they are moving to MariaDB. ● In January-March 2013 ● DB at Mozilla blogged they have moved to MariaDB ● Fedora voted 7-0 to make MariaDB the default MySQL database on Fedora. ● OpenSuse 12.3 now includes MariaDB as default. ● Slackware, Chakra Linux and Arch Linux have announced that MariaDB is default. ● In April 2013 ● Google is basing their new SQL offerings on MariaDB ● FusionIO is showing benchmarks with MariaDB. ● June 2013 ● RedHat will include MariaDB in RedHat Enterprise. ● November 2013 ● MariaDB is in the Debian ftp queue to be included into Debian ● December 2013 ● RedHat Enterprise Linux 7 Beta has MariaDB as default Notice: MySQL is a registered trademark of Sun Microsystems, Inc. ●
  • 45. Predicted MySQL usage Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 46. MariaDB 10.0 was made possible thanks to ● ● ● ● ● Oracle ● Updated InnoDB, Updated Performance schema, online alter table SkySQL ● Global Transaction Id, Parallel replication, Engine independent statistics, DELETE RETURNING, Cassandra engine, GIS support, QA MariaDB Foundation ● Merge of MySQL 5.6, reviews of community patches, builds, speed optimizations, new character sets The MariaDB Community ● CONNECT ENGINE by Olivier Bertrand ● Spider by Kentoku Shiba ● Multi-source replication, by Lixun Peng @ taobao Google, through Google summer of code ● Roles by Vicențiu Ciorbaru ● Move to new regexp library (PRCE) by Sudheera Palihakkara Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 47. Reasons to switch to MariaDB today ● ● ● ● MariaDB has 30 man years of more development than MySQL (and the gap will continue growing). MariaDB is maintained by the people that originally created MySQL and has the best knowledge of the MySQL code. MariaDB is binary compatible (data and API) with MySQL, so its trivial to replace MySQL with MariaDB (minutes). Reasons to switch to MariaDB Open source development: Anyone can be part of the development at all stages. Developer meetings are public! ● Less risk as MariaDB will not remove features like MySQL is doing (thread pool, storage engines, older OS) ● More features, including critical ones like microsecond, better statistics, dynamic columns and TokuDB, Cassandra and the Connect storage engines. ● Faster queries thanks to XtraDB (InnoDB plugin fork from Percona), TokuDB, a much better optimizer, better replication and better code. ● Notice: MySQL is a registered trademark of Sun Microsystems, Inc.
  • 48. Questions ? For questions later, use the public MariaDB email list at maria-discuss@lists.launchpad.net or #maria on Freenode. For questions regarding the MariaDB foundation: monty@mariadb.org Notice: MySQL is a registered trademark of Sun Microsystems, Inc.