SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
MariaDB 10:A MySQL
Replacement
Colin Charles,Team MariaDB, SkySQL Ab	

colin@mariadb.org | byte@bytebot.net	

http://mariadb.org/ 	

http://bytebot.net/blog/ | @bytebot on Twitter	

Hong Kong Open Source Conference 2014	

29 March 2014
Global Top 20 sites
1.Google	

2.Facebook	

3.YouTube	

4.Yahoo!	

5.Baidu	

6.Wikipedia	

7.QQ	

8.Taobao	

9.Twitter	

10.Live	

11.LinkedIn	

12.Sina	

13.Amazon	

14.hao123.com	

15.google.co.in	

16.blogspot	

17.weibo.com	

18.wordpress.com	

19.360.cn	

20.yandex.ru
MySQL? Percona
Server? MariaDB?
WebScaleSQL? Drizzle? MepSQL?
Agenda
• 4 years: major server releases (5.1, 5.2, 5.3,
5.5, 5.5+TokuDB, 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
Backed by MariaDB
Foundation
• Driver of the MariaDB project	

• Foundation not controlled by single entity/
person; has a Board	

• Ensure MariaDB is compatible with MySQL,
maintain mariadb.org, keep community voice	

• Major sponsors: SkySQL, Parallels,
Booking.com,Automattic, OpenQuery,
Percona,Webyog, 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
Where to get it
• Shipped as default in many Linux
distributions or as an optional package	

• 10.0 series under development/unstable
branches in some distributions	

• https://downloads.mariadb.org/	

• apt, yum repositories for the latest 10.0
releases + repository configuration tool
10.0.9
RC
Quick recap of
MariaDB 5.5
• Built on MariaDB 5.3 + MySQL 5.5	

• Non-blocking client library	

• LIMIT ROWS EXAMINED	

• Extended keys for XtraDB/InnoDB	

• New SphinxSE	

• New threadpool
Quick recap of
MariaDB 5.3
• Built on MySQL 5.1, with MariaDB 5.1+5.2	

• Storage engines (Aria, XtraDB, FederatedX, etc.), table
elimination, virtual columns, extended user statistics,
segmented MyISAM keycache, pool of threads,
optimizer features, microsecond precision, faster
HANDLER interface, dynamic columns, HandlerSocket,
group commit in the binary log, checksum for binary
log events, progress reporting for ALTER TABLE/
LOAD DATA INFILE, GIS precise operations, kill by
query ID (not just thread ID) or by USER
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.0.4 Alpha
7 Nov 2013 10.0.5 Beta
18 Nov 2013 10.0.6 Beta
27 Dec 2013 10.0.7 Beta
10 Feb 2014 10.0.8 RC
11 Mar 2014 10.0.9 RC
Backported features
• InnoDB (from MySQL 5.6.14)	

• PERFORMANCE_SCHEMA 	

• Online ALTER TABLE (10.0.4)	

• Upstream collation tables (MDEV-4928)	

• Privileges on temporary tables	

• GET DIAGNOSTICS	

• Optimizer	

• ORDER BY...LIMIT optimization (shows only few rows of
a result set)
Re-implemented from
MySQL 5.6
• Error messages (w/system error string +
meanings)	

• CURRENT_TIMESTAMP / NOW() as
DEFAULT for DATETIME columns	

• EXPLAIN for INSERT/UPDATE/DELETE	

• Temporal literals - TIME’12:05:00’
MariaDB 10 replication
• Global Transaction ID	

• have complex replication topologies; simple failover & slave promotion	

• doesn’t require restarts!	

• new slave provisioning: SET GLOBAL GTID_SLAVE_POS =
BINLOG_GTID_POS("masterbin.00045", 600); CHANGE MASTER TO
master_host="192.168.2.4", master_use_gtid=slave_pos; START
SLAVE;	

• turning on GTID for slaves: STOP SLAVE

CHANGE MASTER TO master_use_gtid=current_pos; START SLAVE;	

• change masters: STOP SLAVE

CHANGE MASTER TO master_host="10.2.3.5"; START SLAVE;	

• Crash-safe slaves - GTID position stored in InnoDB table
Only in MariaDB 10.0:
Multi-source replication
• Work from Taobao/Lixun Peng	

• Known to be in-use for production purposes
at Tumblr, FunPlus Game,Taobao, Flipkart	

• 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	

• Per-thread memory usage (Taobao)	

• INFORMATION_SCHEMA.PROCESSLIS
T has MEMORY_USAGE &
EXAMINED_ROWS now	

• SHOW STATUS has memory usage too
Only in MariaDB 10.0:
CassandraSE
• 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)
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");
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=”sphinx://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	

• MyISAM,Aria for SPATIAL & non-spatial indexes	

• Use Osmosis, you can load all OpenStreetMap data into
MariaDB now	

• https://mariadb.com/kb/en/gis-features-in-533/	

• https://mariadb.com/kb/en/openstreetmap-dataset/
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)	

• SHOW PLUGINS SONAME;
MariaDB 10.0.4
• SPIDER storage engine for database sharding
merged	

• Audit plugin	

• complete PERFORMANCE_SCHEMA	

• INFORMATION_SCHEMA with upstream
defaults too	

• Online ALTER for InnoDB and thread
information for in-place operations
MariaDB 10.0.5
• Parallel replication - https://mariadb.com/
kb/en/parallel-replication/	

• automatically detect independent
transactions, parallel within same table,
adapts to master load, and preserves
commit ordering
MariaDB 10.0.6
• Serious incompatibility and data corruption
of DATETIME and DATE types due to
get_innobase_type_from_mysql_type
refactor combined with InnoDB Online DDL	

• https://mariadb.atlassian.net/browse/
MDEV-5248	

• Fixed upgrades from MySQL 5.1 -> MariaDB	

• Parallel replication improvements
MariaDB 10.0.7
• Mostly bug fixes, to stabilise the code	

• XtraDB 5.6 merged (InnoDB still default)	

• OQGraph v3 - stores data on disk,
persistent, larger graph support	

• INFORMATION_SCHEMA.METADATA_L
OCK_INFO plugin to see active metadata
locks
MariaDB 10.0.8 (RC)
• Upgraded bundled PCRE library (GSoC)	

• SQL Roles (10.0.4) + improvements
(GSoC)	

• Upgraded InnoDB
MariaDB 10.0.9 (RC)
• InnoDB 5.6.15 (XtraDB
default; InnoDB plugin)	

• Extended keys
optimization on by
default	

• MASTER_GTID_WAIT(
) + @@last_gtid	

• TIME casted to
DATETIME, date is
CURRENT_DATE not
0000-00-00 - SQL
standards compliant	

• @@old_mode=ZER
O_DATE_TIME_CAS
T
TokuDB
• Opensource - separate MariaDB 5.5+TokuDB/
integrated in 10.0.5	

• Improved insert (10-20x faster) & query speed,
compression (up to 90% space reduction),
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
Roadmap
• MariaDB has already a superset of features in MySQL	

• MariaDB 10.0 series will be mostly compatible with
MySQL 5.6	

• see no EXPLAIN FORMAT=JSON, InnoDB memcached
plugin, etc.	

• 5.6 complete + 5.7 equivalent should be 10.1 (release aim:
end-2014, early-2015)	

• 100% OpenGIS compliance,ANALYZE TABLE as online
operation, IPv6 datatype, query logging, summary per
query, audit for specific users, etc. -- see jira
MariaDB 10 has MySQL
Enterprise features
• Threadpool	

• PAM authentication plugin	

• Audit plugin
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	

• 10.0.7 release as alpha, wsrep API v25,
Galera 25.3.2
MariaDB LGPL
Connectors
• C	

• Java	

• ODBC	

• Works with MariaDB, Percona Server,
MySQL	

• Credit goes to: old LGPL client library for
C, Drizzle driver for Java
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	

• 6-figure monthly downloads (more users from
mirrors + distributions)	

• Active mailing lists (stats on KB)	

• Google Summer of Code 2013 + 2014
MariaDB is gaining
popularity
• Wikipedia (English, German),Wikidata running
MariaDB 5.5	

• Google has public commitment to adapt, QA
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.
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 133
countries!
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
Books
• MariaDB Crash Course, Ben Forta
(September 2011)	

• Getting Started with MariaDB, Daniel
Bartholomew (October 2013)	

• MariaDB Cookbook (March 2014)
Resources
• bugs: mariadb.org/jira	

• low traffic announce mailing list: http://lists.askmonty.org/cgi-bin/
mailman/listinfo/announce	

• maria-discuss@lists.launchpad.net	

• maria-developers@lists.launchpad.net 	

• fb.com/MariaDB.dbms	

• twitter: @mariadb	

• google plus: +MariaDB 	

• #maria on irc.freenode.net	

• https://mariadb.com/kb/en/
Thanks/Q&A
Colin Charles, colin@mariadb.org | byte@bytebot.net 	

http://bytebot.net/blog/ | @bytebot	

slides: slideshare.net/bytebot/
planetmysql.org	

planetmariadb.org

Weitere ähnliche Inhalte

Was ist angesagt?

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 MeetupColin Charles
 
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 10: The Complete Tutorial
MariaDB 10: The Complete TutorialMariaDB 10: The Complete Tutorial
MariaDB 10: The Complete TutorialColin 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
 
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.0Colin Charles
 
The Complete MariaDB Server tutorial
The Complete MariaDB Server tutorialThe Complete MariaDB Server tutorial
The Complete MariaDB Server tutorialColin 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
 
My first moments with MongoDB
My first moments with MongoDBMy first moments with MongoDB
My first moments with MongoDBColin Charles
 
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016Colin Charles
 
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 - SCALE10xColin 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
 
Lessons from database failures
Lessons from database failuresLessons from database failures
Lessons from database failuresColin 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
 
Databases in the hosted cloud
Databases in the hosted cloudDatabases in the hosted cloud
Databases in the hosted cloudColin Charles
 
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)Colin Charles
 
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 2012Colin 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
 
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
 
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
 

Was ist angesagt? (20)

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
 
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
 
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
 
The Complete MariaDB Server tutorial
The Complete MariaDB Server tutorialThe Complete MariaDB Server tutorial
The Complete MariaDB Server tutorial
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB Server
 
My first moments with MongoDB
My first moments with MongoDBMy first moments with MongoDB
My first moments with MongoDB
 
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016
 
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
 
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
 
Lessons from database failures
Lessons from database failuresLessons from database failures
Lessons from database failures
 
MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016
 
Databases in the hosted cloud
Databases in the hosted cloudDatabases in the hosted cloud
Databases in the hosted cloud
 
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
 
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!
 
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
 
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
 

Ähnlich wie MariaDB 10: A Powerful MySQL Replacement

[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.
 
Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)kayokogoto
 
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
 
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 TutorialColin Charles
 
Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么YUCHENG HU
 
The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016Colin Charles
 
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
 
[B14] A MySQL Replacement by Colin Charles
[B14] A MySQL Replacement by Colin Charles[B14] A MySQL Replacement by Colin Charles
[B14] A MySQL Replacement by Colin CharlesInsight Technology, Inc.
 
MariaDB Server Compatibility with MySQL
MariaDB Server Compatibility with MySQLMariaDB Server Compatibility with MySQL
MariaDB Server Compatibility with MySQLColin Charles
 
MariaDB 初学者指南
MariaDB 初学者指南MariaDB 初学者指南
MariaDB 初学者指南YUCHENG HU
 
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016sys army
 
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 CharlesInsight Technology, Inc.
 
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
 
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
 
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
 
Best practices for MySQL High Availability
Best practices for MySQL High AvailabilityBest practices for MySQL High Availability
Best practices for MySQL High AvailabilityColin 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
 
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 FrankfurtMariaDB Corporation
 
OSDC 2017 | Lessons from database failures by Colin Charles
OSDC 2017 | Lessons from database failures by Colin CharlesOSDC 2017 | Lessons from database failures by Colin Charles
OSDC 2017 | Lessons from database failures by Colin CharlesNETWAYS
 
MySQL Ecosystem in 2020
MySQL Ecosystem in 2020MySQL Ecosystem in 2020
MySQL Ecosystem in 2020Alkin Tezuysal
 

Ähnlich wie MariaDB 10: A Powerful MySQL Replacement (20)

[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 ...
 
Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)
 
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+...
 
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
 
Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么
 
The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016
 
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
 
[B14] A MySQL Replacement by Colin Charles
[B14] A MySQL Replacement by Colin Charles[B14] A MySQL Replacement by Colin Charles
[B14] A MySQL Replacement by Colin Charles
 
MariaDB Server Compatibility with MySQL
MariaDB Server Compatibility with MySQLMariaDB Server Compatibility with MySQL
MariaDB Server Compatibility with MySQL
 
MariaDB 初学者指南
MariaDB 初学者指南MariaDB 初学者指南
MariaDB 初学者指南
 
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016
 
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
 
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
 
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
 
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...
 
Best practices for MySQL High Availability
Best practices for MySQL High AvailabilityBest practices for MySQL High Availability
Best practices for MySQL High Availability
 
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
 
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
 
OSDC 2017 | Lessons from database failures by Colin Charles
OSDC 2017 | Lessons from database failures by Colin CharlesOSDC 2017 | Lessons from database failures by Colin Charles
OSDC 2017 | Lessons from database failures by Colin Charles
 
MySQL Ecosystem in 2020
MySQL Ecosystem in 2020MySQL Ecosystem in 2020
MySQL Ecosystem in 2020
 

Mehr von Colin Charles

Databases in the hosted cloud
Databases in the hosted cloud Databases in the hosted cloud
Databases in the hosted cloud Colin Charles
 
Databases in the Hosted Cloud
Databases in the Hosted CloudDatabases in the Hosted Cloud
Databases in the Hosted CloudColin Charles
 
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Colin Charles
 
Capacity planning for your data stores
Capacity planning for your data storesCapacity planning for your data stores
Capacity planning for your data storesColin 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
 
Lessons from {distributed,remote,virtual} communities and companies
Lessons from {distributed,remote,virtual} communities and companiesLessons from {distributed,remote,virtual} communities and companies
Lessons from {distributed,remote,virtual} communities and companiesColin Charles
 
Forking Successfully - or is a branch better?
Forking Successfully - or is a branch better?Forking Successfully - or is a branch better?
Forking Successfully - or is a branch better?Colin 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
 
Lessons from database failures
Lessons from database failures Lessons from database failures
Lessons from database failures Colin Charles
 
Lessons from database failures
Lessons from database failuresLessons from database failures
Lessons from database failuresColin 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
 
Cool MariaDB Plugins
Cool MariaDB Plugins Cool MariaDB Plugins
Cool MariaDB Plugins Colin Charles
 

Mehr von Colin Charles (12)

Databases in the hosted cloud
Databases in the hosted cloud Databases in the hosted cloud
Databases in the hosted cloud
 
Databases in the Hosted Cloud
Databases in the Hosted CloudDatabases in the Hosted Cloud
Databases in the Hosted Cloud
 
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
 
Capacity planning for your data stores
Capacity planning for your data storesCapacity planning for your data stores
Capacity planning for your data stores
 
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
 
Lessons from {distributed,remote,virtual} communities and companies
Lessons from {distributed,remote,virtual} communities and companiesLessons from {distributed,remote,virtual} communities and companies
Lessons from {distributed,remote,virtual} communities and companies
 
Forking Successfully - or is a branch better?
Forking Successfully - or is a branch better?Forking Successfully - or is a branch better?
Forking Successfully - or is a branch better?
 
Securing your MySQL / MariaDB Server data
Securing your MySQL / MariaDB Server dataSecuring your MySQL / MariaDB Server data
Securing your MySQL / MariaDB Server data
 
Lessons from database failures
Lessons from database failures Lessons from database failures
Lessons from database failures
 
Lessons from database failures
Lessons from database failuresLessons from database failures
Lessons from database failures
 
Distributions from the view a package
Distributions from the view a packageDistributions from the view a package
Distributions from the view a package
 
Cool MariaDB Plugins
Cool MariaDB Plugins Cool MariaDB Plugins
Cool MariaDB Plugins
 

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 slidevu2urc
 
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 WorkerThousandEyes
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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.pdfEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
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.pptxHampshireHUG
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 

Kürzlich hochgeladen (20)

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
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
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
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 

MariaDB 10: A Powerful MySQL Replacement

  • 1. MariaDB 10:A MySQL Replacement Colin Charles,Team MariaDB, SkySQL Ab colin@mariadb.org | byte@bytebot.net http://mariadb.org/ http://bytebot.net/blog/ | @bytebot on Twitter Hong Kong Open Source Conference 2014 29 March 2014
  • 2. Global Top 20 sites 1.Google 2.Facebook 3.YouTube 4.Yahoo! 5.Baidu 6.Wikipedia 7.QQ 8.Taobao 9.Twitter 10.Live 11.LinkedIn 12.Sina 13.Amazon 14.hao123.com 15.google.co.in 16.blogspot 17.weibo.com 18.wordpress.com 19.360.cn 20.yandex.ru
  • 4. Agenda • 4 years: major server releases (5.1, 5.2, 5.3, 5.5, 5.5+TokuDB, Galera Cluster) and 10.0 series • Delving into history of previous releases • MariaDB 10.0 • Client libraries, Galera Cluster • Roadmap
  • 5. What is MariaDB? • Community developed branch of MySQL • Feature enhanced • Fully compatible & feature complete with MySQL
  • 6. Backed by MariaDB Foundation • Driver of the MariaDB project • Foundation not controlled by single entity/ person; has a Board • Ensure MariaDB is compatible with MySQL, maintain mariadb.org, keep community voice • Major sponsors: SkySQL, Parallels, Booking.com,Automattic, OpenQuery, Percona,Webyog, more!
  • 7. 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
  • 8.
  • 9. 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
  • 10. MariaDB 10.0 in a nutshell • Built on MariaDB 5.5 • Backported features from MySQL 5.6 • Multiple new features
  • 11. Where to get it • Shipped as default in many Linux distributions or as an optional package • 10.0 series under development/unstable branches in some distributions • https://downloads.mariadb.org/ • apt, yum repositories for the latest 10.0 releases + repository configuration tool 10.0.9 RC
  • 12. Quick recap of MariaDB 5.5 • Built on MariaDB 5.3 + MySQL 5.5 • Non-blocking client library • LIMIT ROWS EXAMINED • Extended keys for XtraDB/InnoDB • New SphinxSE • New threadpool
  • 13. Quick recap of MariaDB 5.3 • Built on MySQL 5.1, with MariaDB 5.1+5.2 • Storage engines (Aria, XtraDB, FederatedX, etc.), table elimination, virtual columns, extended user statistics, segmented MyISAM keycache, pool of threads, optimizer features, microsecond precision, faster HANDLER interface, dynamic columns, HandlerSocket, group commit in the binary log, checksum for binary log events, progress reporting for ALTER TABLE/ LOAD DATA INFILE, GIS precise operations, kill by query ID (not just thread ID) or by USER
  • 14. 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.0.4 Alpha 7 Nov 2013 10.0.5 Beta 18 Nov 2013 10.0.6 Beta 27 Dec 2013 10.0.7 Beta 10 Feb 2014 10.0.8 RC 11 Mar 2014 10.0.9 RC
  • 15. Backported features • InnoDB (from MySQL 5.6.14) • PERFORMANCE_SCHEMA • Online ALTER TABLE (10.0.4) • Upstream collation tables (MDEV-4928) • Privileges on temporary tables • GET DIAGNOSTICS • Optimizer • ORDER BY...LIMIT optimization (shows only few rows of a result set)
  • 16. Re-implemented from MySQL 5.6 • Error messages (w/system error string + meanings) • CURRENT_TIMESTAMP / NOW() as DEFAULT for DATETIME columns • EXPLAIN for INSERT/UPDATE/DELETE • Temporal literals - TIME’12:05:00’
  • 17. MariaDB 10 replication • Global Transaction ID • have complex replication topologies; simple failover & slave promotion • doesn’t require restarts! • new slave provisioning: SET GLOBAL GTID_SLAVE_POS = BINLOG_GTID_POS("masterbin.00045", 600); CHANGE MASTER TO master_host="192.168.2.4", master_use_gtid=slave_pos; START SLAVE; • turning on GTID for slaves: STOP SLAVE
 CHANGE MASTER TO master_use_gtid=current_pos; START SLAVE; • change masters: STOP SLAVE
 CHANGE MASTER TO master_host="10.2.3.5"; START SLAVE; • Crash-safe slaves - GTID position stored in InnoDB table
  • 18. Only in MariaDB 10.0: Multi-source replication • Work from Taobao/Lixun Peng • Known to be in-use for production purposes at Tumblr, FunPlus Game,Taobao, Flipkart • Many users partition data across many masters... now you can replicate many masters to a single slave • Great for analytical queries, complete backups, etc.
  • 19. Only in MariaDB 10.0 • SHOW EXPLAIN for <thread_id> gets the query plan for a running statement • Per-thread memory usage (Taobao) • INFORMATION_SCHEMA.PROCESSLIS T has MEMORY_USAGE & EXAMINED_ROWS now • SHOW STATUS has memory usage too
  • 20. Only in MariaDB 10.0: CassandraSE • 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)
  • 21. 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)
  • 22. 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");
  • 23. 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
  • 25. 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)
  • 26. SphinxSE • CREATE TABLE t1 (..) ENGINE=SPHINX CONNECTION=”sphinx://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
  • 27. GIS support! • MySQL has OpenGIS SFS (Simple feature access, SQL access method) • Now, SQL with full geometry types • ST_ prefix • MyISAM,Aria for SPATIAL & non-spatial indexes • Use Osmosis, you can load all OpenStreetMap data into MariaDB now • https://mariadb.com/kb/en/gis-features-in-533/ • https://mariadb.com/kb/en/openstreetmap-dataset/
  • 28. 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) • SHOW PLUGINS SONAME;
  • 29. MariaDB 10.0.4 • SPIDER storage engine for database sharding merged • Audit plugin • complete PERFORMANCE_SCHEMA • INFORMATION_SCHEMA with upstream defaults too • Online ALTER for InnoDB and thread information for in-place operations
  • 30. MariaDB 10.0.5 • Parallel replication - https://mariadb.com/ kb/en/parallel-replication/ • automatically detect independent transactions, parallel within same table, adapts to master load, and preserves commit ordering
  • 31. MariaDB 10.0.6 • Serious incompatibility and data corruption of DATETIME and DATE types due to get_innobase_type_from_mysql_type refactor combined with InnoDB Online DDL • https://mariadb.atlassian.net/browse/ MDEV-5248 • Fixed upgrades from MySQL 5.1 -> MariaDB • Parallel replication improvements
  • 32. MariaDB 10.0.7 • Mostly bug fixes, to stabilise the code • XtraDB 5.6 merged (InnoDB still default) • OQGraph v3 - stores data on disk, persistent, larger graph support • INFORMATION_SCHEMA.METADATA_L OCK_INFO plugin to see active metadata locks
  • 33. MariaDB 10.0.8 (RC) • Upgraded bundled PCRE library (GSoC) • SQL Roles (10.0.4) + improvements (GSoC) • Upgraded InnoDB
  • 34. MariaDB 10.0.9 (RC) • InnoDB 5.6.15 (XtraDB default; InnoDB plugin) • Extended keys optimization on by default • MASTER_GTID_WAIT( ) + @@last_gtid • TIME casted to DATETIME, date is CURRENT_DATE not 0000-00-00 - SQL standards compliant • @@old_mode=ZER O_DATE_TIME_CAS T
  • 35. TokuDB • Opensource - separate MariaDB 5.5+TokuDB/ integrated in 10.0.5 • Improved insert (10-20x faster) & query speed, compression (up to 90% space reduction), replication performance and online schema flexibility • Uses Fractal Tree Indexes instead of B-Tree • Tests & builds of TokuDB on multiple platforms (think greater distribution)
  • 36. 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
  • 37. Roadmap • MariaDB has already a superset of features in MySQL • MariaDB 10.0 series will be mostly compatible with MySQL 5.6 • see no EXPLAIN FORMAT=JSON, InnoDB memcached plugin, etc. • 5.6 complete + 5.7 equivalent should be 10.1 (release aim: end-2014, early-2015) • 100% OpenGIS compliance,ANALYZE TABLE as online operation, IPv6 datatype, query logging, summary per query, audit for specific users, etc. -- see jira
  • 38. MariaDB 10 has MySQL Enterprise features • Threadpool • PAM authentication plugin • Audit plugin
  • 39. 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 • 10.0.7 release as alpha, wsrep API v25, Galera 25.3.2
  • 40. MariaDB LGPL Connectors • C • Java • ODBC • Works with MariaDB, Percona Server, MySQL • Credit goes to: old LGPL client library for C, Drizzle driver for Java
  • 41. 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 :-)
  • 42. 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...)
  • 43. 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 • 6-figure monthly downloads (more users from mirrors + distributions) • Active mailing lists (stats on KB) • Google Summer of Code 2013 + 2014
  • 44. MariaDB is gaining popularity • Wikipedia (English, German),Wikidata running MariaDB 5.5 • Google has public commitment to adapt, QA 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.
  • 45. 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.
  • 46. User stats plugin • Disabled by default, consider enabling it to show use! http://mariadb.org/feedback_plugin/ data from over 133 countries!
  • 47. 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
  • 48. Books • MariaDB Crash Course, Ben Forta (September 2011) • Getting Started with MariaDB, Daniel Bartholomew (October 2013) • MariaDB Cookbook (March 2014)
  • 49. Resources • bugs: mariadb.org/jira • low traffic announce mailing list: http://lists.askmonty.org/cgi-bin/ mailman/listinfo/announce • maria-discuss@lists.launchpad.net • maria-developers@lists.launchpad.net • fb.com/MariaDB.dbms • twitter: @mariadb • google plus: +MariaDB • #maria on irc.freenode.net • https://mariadb.com/kb/en/
  • 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