© 2017 Percona1
ALKIN TEZUYSAL
The MySQL Ecosystem in 2018
Where can you be part of it?
Sr. Technical Manager , @ask_dba
Softtech Lunch and Learn
Thu Feb 8, 2018
© 2017 Percona2
Who am I?
• Alkin Tezuysal
▪ Sr. Technical Manager, Percona
• Global Operations – Managed Services
▪ 20+ years of IT experience in RDBMS domain
▪ Enterprise background
▪ Speaker, mentor and coach
▪ Outdoor enthusiast
© 2017 Percona3
About This Presentation
Overview of
Existing Solutions
and History
Discuss what we
use at Percona
Show what
specific things to
look at
© 2017 Percona4
Agenda
 MySQL as Open Source Database.
Past , now and future of MySQL.
 Use Cases of MySQL.
Edge Cases of MySQL.
 War Stories ,real life examples.
 Scalability , HA and Proxy Wars.
 Percona Server and its open source product arsenal.
 Percona Services & Support.
© 2017 Percona5
Inception of MySQL
• Written by Michael Videnius (Monty) in 1995
• In 15 June 2001, NuSphere sued MySQL AB,
• In October 2005, Oracle Corporation acquired Innobase
• In February 2006, Oracle Corporation acquired Sleepycat Software
• In January 2008, Sun Microsystems bought MySQL
• In April 2009, Oracle Corporation entered into an agreement to
purchase Sun Microsystems
© 2017 Percona6
MySQL Versions
Ref:https://elmcip.net/node/10280
© 2017 Percona7
MySQL Stake Holders
• In January 2009, before Oracle's acquisition of MySQL, Monty
Widenius started a GPL-only fork, MariaDB.
• In 2008 Peter Zaitsev found Percona with MySQL fork
• In 2008 Drizzle lasted till 2012
• In 2014 WebScaleSQL lasted till 2016
As of 2018 Oracle owns both community and enterprise editions of
MySQL
© 2017 Percona8
MySQL 5.7
• Over 150 new features in MySQL 5.7
• Group Replication
• InnoDB
• Optimizer
• Security
• Performance Schema
• GIS (Geographic Information System)
• JSON
Ref:http://www.thecompletelistoffeatures.com/
© 2017 Percona9
Percona 5.7
• Percona Server Improvements over default engine Innodb
• Percona Xtradb implementation for clustering
• Improvement over Memory storage engine
• Percona Toolkit integration
• Support for MyRocks
• Enterprise Performance and Security (PAM and Audit Plugin)
• Backup locks
• Bug fixes and patches
https://www.percona.com/about-percona/newsroom/press-
releases/percona-server-for-mysql-57-delivers-superior-value-
scalability-and-security
© 2017 Percona10
MariaDB 10.2
• InnoDB as default InnoDB
• MyRocks alpha
• Window functions
• Recursive Common Table
• Expressions (CTEs)
• AWS Key Management plugin
• CHECK CONSTRAINT
• SHOW CREATE USER
• Multiple triggers for the same event
• EXECUTE IMMEDIATE (Oracle styled)
• DML only flashback https://mariadb.com/kb/en/library/changes-improvements-in-
mariadb-102/
© 2017 Percona11
Other Major Players
• Amazon Web Services (AWS) RDS MySQL & MariaDB
• Amazon Web Services (AWS) Aurora
• Microsoft Azure MySQL & MariaDB
• Rackspace Cloud MySQL & MariaDB & Percona Server
• Linux distributions MariaDB default
© 2017 Percona12
Popularity of Mysql vs …
https://db-engines.com/en/ranking_trend http://www.itdadao.com/articles/c15a1211934p0.html
© 2017 Percona13
MySQL Use Cases
0
1
2
3
4
5
6
Category 1 Category 2 Category 3 Category 4
Chart Title
Series 1 Series 2 Series 3
Web Scale
▪ Social Media (Facebook,
Twitter)
▪ Content and Cloud
Providers (Google,
Dropbox, Box)
▪ Services (Uber, Booking)
▪ E-commerce (ebay,
amazon)
SaaS
▪ AWS , Salesforce, Slack,
Adobe
Ref: https://www.mysql.com/customers/
© 2017 Percona14
What’s the most used Database in the world?
• Oracle ?
• SQL Server ?
• DB2 ?
• MySQL ?
• PostgreSQL ?
SQLite
• Every Android device
• Every iPhone and iOS device
• Every Mac
• Every Windows10 machine
• Every Firefox, Chrome, and Safari web browser
• Every instance of Skype
• Every instance of iTunes
• Every Dropbox client
• Every TurboTax and QuickBooks
• PHP and Python
• Most television sets and set-top cable boxes
• Most automotive multimedia systems
• Countless millions of other applications
https://www.sqlite.org/mostdeployed.html
© 2017 Percona15
Edge Cases of MySQL
• Very Large Clusters
up to 10-15K
MySQL instances.
• Sharded
operations for
geographic zones
and customer base
• Usage beyond MySQL’s initial design
• Not fit due to hardware limitation
• Unexpected growth and expansion
© 2017 Percona16
Scalability and Proxy Wars
• What’s a proxy? – Lightweight application between client and server
• Known proxies and load balancers:
• Software
• ProxySQL
• ScaleArc
• MaxScale
• Netscaler (Virtual Appliance)
• HA Proxy
• MySQL Router
• Hardware
• Netscaler
• F5
© 2017 Percona17
Open Source Proxy Options
•ProxySQL (GPLv3)
▪Stable since December 2015
▪ProxySQL - included with
PerconaXtraDB Cluster 5.7,
▪Lots of features and use cases
▪ProxySQL Use Case Scenarios
•MariaDB MaxScale 1.0…1.4.x GA
▪GA January 2015
▪The “Swiss Army Knife” - pluggable router
with an extensible architecture
▪ Logging, writing to other backends
(besides MySQL), firewall filter, routing via
hints, query rewriting
▪Binlog Server - popularised by
booking.com to not have intermediate
masters
▪Popular use case: sitting in front of a 3-
node Galera Cluster
© 2017 Percona18
On Premise
▪ Based on Galera
•PXC
•MariaDB
▪ Several Nines (Cluster Control)
▪ Continuent Tungsten
▪ ScaleArc
▪ Vitess
▪ Native Replication
•MHA, Orchestrator,MySQL Failover
Cloud
▪ AWS Aurora
HA Solutions
© 2017 Percona19
Tooling Highlights
• Percona Toolkit (pt-osc,pt-table-sync)
• Percona XtraBackup
• MHA
• Orchestrator, gh-ost
• Tungsten Replicator
• MySQL Built-in Utilities
• ClusterControl
• MySQL Sandbox
• Sysbench
• GUI tools: MySQL Workbench, phpMyAdmin, SQLYog, etc
© 2017 Percona20
MySQL 8.0 (Not GA)
• Native Data Dictionary
• Fast Information Schema
• Utf8mb4 as Default Character Set
• Security
• Roles
• New Super Privileges
• Password history
• Log encryption
• Persistent Auto Increment
• Auto Undo Tablespace
• Self Tuning (pool, log, flush)
• Invisible Indexes
• Optimizer Histograms
• Performance Schema
• Innodb No Wait and Skip Locked
• Descending Indexes
• Aggregate over JSON
• JSON to table (Labs)
• JSON Extraction
• CTE (Recursive and Non-Recursive)
• Window Functions
• GIS Features Set
• Document Store
Database Administration Software Development
© 2017 Percona21
Community vs Enterprise vs Percona
Community Enterprise Percona
- MySQL Enterprise Monitor Percona Monitoring and Management
- PAM Authentication PAM Authentication
- - RocksDB
- - Extra Hash/Digest Functions
- - Extra Diagnostic Features
- Performance & Scalability Performance & Scalability
- MySQL Enterprise Backup Percona Xtrabackup
- MySQL Enterprise Audit Percona Audit Plugin
- - TokuDB
- Threadpool Threadpool
https://www.percona.com/software/mysql-database/percona-
server/feature-comparison
© 2017 Percona22
About Percona
Solutions for your success with MySQL and MongoDB
Support, Managed Services, Architecture & Projects
Our Software is 100% Open Source
Support Broad Ecosystem – MySQL, MariaDB, Amazon RDS
In Business for 10+ years to champion Open Source Databases
More than 3000 customers, including top Internet companies and enterprises
© 2017 Percona23
Percona Server 5.7 to 8.0
Ref:https://github.com/dveeden/mysql-history-graph
© 2017 Percona24
Percona Server 5.7 to 8.0
Ref:https://github.com/dveeden/mysql-history-graph
© 2017 Percona25
Percona Additions
Percona Server and Percona XtraDB (HA)
PMM
Percona Toolkit
ProxySQL Integration
Platform for Managed Services including Backup Solution (Xtrabackup)
Open Source Friendly
© 2017 Percona26
Thank you!
Q&A
DATABASE PERFORMANCE
MATTERS
Database Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters

Mysql ecosystem in 2018

  • 1.
    © 2017 Percona1 ALKINTEZUYSAL The MySQL Ecosystem in 2018 Where can you be part of it? Sr. Technical Manager , @ask_dba Softtech Lunch and Learn Thu Feb 8, 2018
  • 2.
    © 2017 Percona2 Whoam I? • Alkin Tezuysal ▪ Sr. Technical Manager, Percona • Global Operations – Managed Services ▪ 20+ years of IT experience in RDBMS domain ▪ Enterprise background ▪ Speaker, mentor and coach ▪ Outdoor enthusiast
  • 3.
    © 2017 Percona3 AboutThis Presentation Overview of Existing Solutions and History Discuss what we use at Percona Show what specific things to look at
  • 4.
    © 2017 Percona4 Agenda MySQL as Open Source Database. Past , now and future of MySQL.  Use Cases of MySQL. Edge Cases of MySQL.  War Stories ,real life examples.  Scalability , HA and Proxy Wars.  Percona Server and its open source product arsenal.  Percona Services & Support.
  • 5.
    © 2017 Percona5 Inceptionof MySQL • Written by Michael Videnius (Monty) in 1995 • In 15 June 2001, NuSphere sued MySQL AB, • In October 2005, Oracle Corporation acquired Innobase • In February 2006, Oracle Corporation acquired Sleepycat Software • In January 2008, Sun Microsystems bought MySQL • In April 2009, Oracle Corporation entered into an agreement to purchase Sun Microsystems
  • 6.
    © 2017 Percona6 MySQLVersions Ref:https://elmcip.net/node/10280
  • 7.
    © 2017 Percona7 MySQLStake Holders • In January 2009, before Oracle's acquisition of MySQL, Monty Widenius started a GPL-only fork, MariaDB. • In 2008 Peter Zaitsev found Percona with MySQL fork • In 2008 Drizzle lasted till 2012 • In 2014 WebScaleSQL lasted till 2016 As of 2018 Oracle owns both community and enterprise editions of MySQL
  • 8.
    © 2017 Percona8 MySQL5.7 • Over 150 new features in MySQL 5.7 • Group Replication • InnoDB • Optimizer • Security • Performance Schema • GIS (Geographic Information System) • JSON Ref:http://www.thecompletelistoffeatures.com/
  • 9.
    © 2017 Percona9 Percona5.7 • Percona Server Improvements over default engine Innodb • Percona Xtradb implementation for clustering • Improvement over Memory storage engine • Percona Toolkit integration • Support for MyRocks • Enterprise Performance and Security (PAM and Audit Plugin) • Backup locks • Bug fixes and patches https://www.percona.com/about-percona/newsroom/press- releases/percona-server-for-mysql-57-delivers-superior-value- scalability-and-security
  • 10.
    © 2017 Percona10 MariaDB10.2 • InnoDB as default InnoDB • MyRocks alpha • Window functions • Recursive Common Table • Expressions (CTEs) • AWS Key Management plugin • CHECK CONSTRAINT • SHOW CREATE USER • Multiple triggers for the same event • EXECUTE IMMEDIATE (Oracle styled) • DML only flashback https://mariadb.com/kb/en/library/changes-improvements-in- mariadb-102/
  • 11.
    © 2017 Percona11 OtherMajor Players • Amazon Web Services (AWS) RDS MySQL & MariaDB • Amazon Web Services (AWS) Aurora • Microsoft Azure MySQL & MariaDB • Rackspace Cloud MySQL & MariaDB & Percona Server • Linux distributions MariaDB default
  • 12.
    © 2017 Percona12 Popularityof Mysql vs … https://db-engines.com/en/ranking_trend http://www.itdadao.com/articles/c15a1211934p0.html
  • 13.
    © 2017 Percona13 MySQLUse Cases 0 1 2 3 4 5 6 Category 1 Category 2 Category 3 Category 4 Chart Title Series 1 Series 2 Series 3 Web Scale ▪ Social Media (Facebook, Twitter) ▪ Content and Cloud Providers (Google, Dropbox, Box) ▪ Services (Uber, Booking) ▪ E-commerce (ebay, amazon) SaaS ▪ AWS , Salesforce, Slack, Adobe Ref: https://www.mysql.com/customers/
  • 14.
    © 2017 Percona14 What’sthe most used Database in the world? • Oracle ? • SQL Server ? • DB2 ? • MySQL ? • PostgreSQL ? SQLite • Every Android device • Every iPhone and iOS device • Every Mac • Every Windows10 machine • Every Firefox, Chrome, and Safari web browser • Every instance of Skype • Every instance of iTunes • Every Dropbox client • Every TurboTax and QuickBooks • PHP and Python • Most television sets and set-top cable boxes • Most automotive multimedia systems • Countless millions of other applications https://www.sqlite.org/mostdeployed.html
  • 15.
    © 2017 Percona15 EdgeCases of MySQL • Very Large Clusters up to 10-15K MySQL instances. • Sharded operations for geographic zones and customer base • Usage beyond MySQL’s initial design • Not fit due to hardware limitation • Unexpected growth and expansion
  • 16.
    © 2017 Percona16 Scalabilityand Proxy Wars • What’s a proxy? – Lightweight application between client and server • Known proxies and load balancers: • Software • ProxySQL • ScaleArc • MaxScale • Netscaler (Virtual Appliance) • HA Proxy • MySQL Router • Hardware • Netscaler • F5
  • 17.
    © 2017 Percona17 OpenSource Proxy Options •ProxySQL (GPLv3) ▪Stable since December 2015 ▪ProxySQL - included with PerconaXtraDB Cluster 5.7, ▪Lots of features and use cases ▪ProxySQL Use Case Scenarios •MariaDB MaxScale 1.0…1.4.x GA ▪GA January 2015 ▪The “Swiss Army Knife” - pluggable router with an extensible architecture ▪ Logging, writing to other backends (besides MySQL), firewall filter, routing via hints, query rewriting ▪Binlog Server - popularised by booking.com to not have intermediate masters ▪Popular use case: sitting in front of a 3- node Galera Cluster
  • 18.
    © 2017 Percona18 OnPremise ▪ Based on Galera •PXC •MariaDB ▪ Several Nines (Cluster Control) ▪ Continuent Tungsten ▪ ScaleArc ▪ Vitess ▪ Native Replication •MHA, Orchestrator,MySQL Failover Cloud ▪ AWS Aurora HA Solutions
  • 19.
    © 2017 Percona19 ToolingHighlights • Percona Toolkit (pt-osc,pt-table-sync) • Percona XtraBackup • MHA • Orchestrator, gh-ost • Tungsten Replicator • MySQL Built-in Utilities • ClusterControl • MySQL Sandbox • Sysbench • GUI tools: MySQL Workbench, phpMyAdmin, SQLYog, etc
  • 20.
    © 2017 Percona20 MySQL8.0 (Not GA) • Native Data Dictionary • Fast Information Schema • Utf8mb4 as Default Character Set • Security • Roles • New Super Privileges • Password history • Log encryption • Persistent Auto Increment • Auto Undo Tablespace • Self Tuning (pool, log, flush) • Invisible Indexes • Optimizer Histograms • Performance Schema • Innodb No Wait and Skip Locked • Descending Indexes • Aggregate over JSON • JSON to table (Labs) • JSON Extraction • CTE (Recursive and Non-Recursive) • Window Functions • GIS Features Set • Document Store Database Administration Software Development
  • 21.
    © 2017 Percona21 Communityvs Enterprise vs Percona Community Enterprise Percona - MySQL Enterprise Monitor Percona Monitoring and Management - PAM Authentication PAM Authentication - - RocksDB - - Extra Hash/Digest Functions - - Extra Diagnostic Features - Performance & Scalability Performance & Scalability - MySQL Enterprise Backup Percona Xtrabackup - MySQL Enterprise Audit Percona Audit Plugin - - TokuDB - Threadpool Threadpool https://www.percona.com/software/mysql-database/percona- server/feature-comparison
  • 22.
    © 2017 Percona22 AboutPercona Solutions for your success with MySQL and MongoDB Support, Managed Services, Architecture & Projects Our Software is 100% Open Source Support Broad Ecosystem – MySQL, MariaDB, Amazon RDS In Business for 10+ years to champion Open Source Databases More than 3000 customers, including top Internet companies and enterprises
  • 23.
    © 2017 Percona23 PerconaServer 5.7 to 8.0 Ref:https://github.com/dveeden/mysql-history-graph
  • 24.
    © 2017 Percona24 PerconaServer 5.7 to 8.0 Ref:https://github.com/dveeden/mysql-history-graph
  • 25.
    © 2017 Percona25 PerconaAdditions Percona Server and Percona XtraDB (HA) PMM Percona Toolkit ProxySQL Integration Platform for Managed Services including Backup Solution (Xtrabackup) Open Source Friendly
  • 26.
  • 27.
    DATABASE PERFORMANCE MATTERS Database PerformanceMattersDatabase Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters