SlideShare a Scribd company logo
© 2019 Percona1
ALKIN TEZUYSAL
The MySQL Ecosystem in 2019
Where can you be part of it?
Sr. Technical Manager , @ask_dba
OSDNCONF Kiev - Keynote
Sept 14, 2019
© 2019 Percona2
Who am I?
• Alkin Tezuysal - @ask_dba
▪ Sr. Technical Manager, Percona
• Global Operations – Managed Services
▪ 20+ years of IT experience in RDBMS domain
▪ Enterprise background
▪ Speaker, mentor and coach
▪ Born to Sail, Forced to Work
© 2019 Percona3
About This Presentation
Overview of Existing
Solutions and
History of MySQL
Discuss what we
use at Percona and
best practices
Show what specific
things to look at
and trending topics
© 2019 Percona4
Inception of MySQL
• Written by Monty Widenius (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
© 2019 Percona5
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 2019 Oracle owns both community and enterprise editions of
MySQL
© 2019 Percona6
MySQL Versions History
Ref:https://elmcip.net/node/10280
© 2019 Percona7
MySQL 5.0 to 8.0
Ref:https://github.com/dveeden/mysql-history-graph
© 2019 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/
© 2019 Percona9
MySQL 8.0
• 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
• MySQL Shell
Database Administration Software Development
Ref:https://mysqlserverteam.com/the-complete-list-of-new-features-in-mysql-8-0/
© 2019 Percona10
MySQL 8.0.17
• 8.0.0 to 8.0.5 Several Bugs Fixed
• 8.0.11 Deprecates uft8mb3
• 8.0.12 Improves performance_schema defaults
• 8.0.13 Major deprecations InnoDB, Partitioning
• 8.0.14 MySQL allows dual passwords
• 8.0.15 Bugs Fixed
• InnoDB: After a checkpoint operation persisted modifications to data dictionary metadata, there was potential for new metadata changes to be lost under certain circumstances. (Bug
#29120297)
• Group Replication was unable to function in the 8.0.14 release of MySQL Server if IPv6 support was disabled at the operating system level, even if the replication group did not use any
IPv6 addresses. The issue is fixed by this release of MySQL Server, 8.0.15. (Bug #29249542, Bug #94004)
• If MySQL was running on the host system and within Docker, it was not possible to update or remove MySQL on the host system. (Bug #28244773, Bug #91405)8.0.0 to 8.0.11 several
bug fixes
• 8.0.16 Several changes made to account-management capabilities, deprecation of mysql_upgrade.
• 8.0.17 Audit Log , C API , Character Set Support changes.
• MySQL Shell Plugins
• Parallel table import
• In InnoDB Cluster:
• Automatic instance provisioning through cloning
• Automatic server version compatibility handling
• Simplification of internal recovery accounts
• 8.0.18/19 aren’t GA yet
© 2019 Percona11
Percona Server 5.7 to 8.0
Ref:https://github.com/dveeden/mysql-history-graph
© 2019 Percona12
Percona Server for MySQL 8.0.15-5
• Faster and more consistently run queries
• Enhanced security with binary log (binlog) encryption and data-
at-rest encryption
• MyRocks, TokuDB Storage Engines
• InnoDB Full-Text Search Improvements
• Extra Hast/Digest Functions
• Improved diagnostics with instrumentation and troubleshooting
features
© 2019 Percona13
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
© 2019 Percona14
MariaDB 10.3.17
• System-versioned tables (also known as AS OF) (MDEV-12894)
• Table Value Constructors (MDEV-12172) — GSoC 2017 project by Galina Shalygina
• Transform [NOT] IN predicate with long list of values INTO [NOT] IN subquery (MDEV-12176) — GSoC 2017 project by Galina Shalygina
• ROW TYPE OF now supports local SP variables (MDEV-14139)
• Aggregate stored functions (MDEV-7773) — GSoC 2016 project by Varun Gupta
• Support for LIMIT clause in GROUP_CONCAT() (MDEV-11297)
• PERCENTILE_CONT, PERCENTILE_DISC, and MEDIAN window functions (MDEV-12985)
• FOR ... END FOR statement (MDEV-14415)
• XA RECOVER FORMAT='SQL' (MDEV-14593)
• Oracle compatible SUBSTR() function (MDEV-14012) — contribution by Jérôme Brauge
• INVISIBLE columns (MDEV-10177) — GSoC 2016 project by Sachin Setiya
• Various scalability improvements (MDEV-14529, MDEV-14505)
• Sequences can now be used with DEFAULT.
• Semi-sync plugin merged into the server (MDEV-13073) — contribution by Alibaba
• CREATE/SHOW/ALTER/DROP SEQUENCE (MDEV-10139)
https://mariadb.com/kb/en/library/changes-improvements-in-
mariadb-103/
© 2019 Percona15
Percona / MariaDB MyRocks Engine
• MyRocks storage engine based of RocksDB
• RocksDB is key-value store fork of LevelDB
• Optimized for writes and disk space usage
• Log-Structured Merge Tree Database
• Compressed InnoDB is roughly 2x smaller than uncompressed
InnoDB, MyRocks/HBase are 4x smaller
• Decompression cost on read is non zero. It matters less on i/o
bound workloads
• Write efficiency is 10X better
Ref:https://www.percona.com/live/e18/sessions/myrocks-in-the-real-world
© 2019 Percona16
MyRocks - Read, Write and Space
Performance/Efficiency
Ref:https://www.percona.com/live/e18/sessions/myrocks-in-the-real-world
© 2019 Percona17
Other Major Players
• Amazon Web Services (AWS) RDS MySQL & MariaDB
• Amazon Web Services (AWS) Aurora
• Google Cloud Platform
• Alibaba Cloud (AliSQL, PolarDB)
• Microsoft Azure MySQL & MariaDB
• Rackspace Cloud MySQL & MariaDB & Percona Server
• Linux distributions MariaDB default database
© 2019 Percona18
Popularity of Mysql vs …
https://db-engines.com/en/ranking_trend https://tinyurl.com/y5etcaxv-systems/
© 2019 Percona19
MySQL Use Cases
0
1
2
3
4
5
6
Category 1 Category 2 Category 3 Category 4
Chart Title
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/ Ref: https://dzone.com/articles/2019-open-source-database-report-top-
databases-pub
© 2019 Percona20
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
© 2019 Percona21
Edge Cases of MySQL
• Very Large Clusters
up to 10-15K
MySQL instances.
• Sharded
operations for
geographic zones
and customer base
Vitess
• Usage beyond MySQL’s initial design
• Not fit due to hardware limitation
• Unexpected growth and expansion
• One billion tables http://bit.ly/2DCXfjI
© 2019 Percona22
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
© 2019 Percona23
Open Source Proxy Options
•ProxySQL 2.0.7 (GPLv3)
▪Stable since December 2015
▪ProxySQL - included with
PerconaXtraDB Cluster 5.7,8.0,
▪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
© 2019 Percona24
MySQL Proxy Vision
https://proxysql.com/blog/proxysql-native-galera-support https://tinyurl.com/y5fwde4z
© 2019 Percona25
On Premise
▪ MySQL
•Group Replication
•Innodb Cluster
▪ Based on Galera
•Percona Xtradb
•MariaDB
▪ Continuent Tungsten
▪ ScaleArc
▪ Vitess
▪ Native Replication
•MHA, Orchestrator, MySQL Failover
Cloud
▪ AWS Aurora
▪ Google Cloud Platform
▪ Azure SQL
▪ Alibaba Cloud AliSQL
▪ Microsoft Azure
MySQL HA Solutions
© 2019 Percona26
Tooling Highlights
• Percona Toolkit (pt-osc,pt-table-sync, XtraBackup)
• MySQL Shell
• Orchestrator, gh-ost
• MHA
• Tungsten Replicator
• MySQL Built-in Utilities
• ClusterControl
• MySQL Sandbox aka Dbdeployer
• Sysbench
• GUI tools: MySQL Workbench, phpMyAdmin, SQLYog, etc
• PMM , VividCortex
© 2019 Percona27
MySQL Trending Topics
• Kubernetes Operators
• Group Replication
• Galera 4.0
• MySQL 8.0.X
• Vitess
• Observability & Monitoring
• ProxySQL
• Orchestrator
© 2019 Percona28
• Percona Kubernetes Operator
for Percona XtraDB Cluster
• Deploy easily
• Scale Percona XtraDB Cluster
• Automate Backups
• Integrate with Percona Monitoring
and Management (PMM)
• Relies on ProxySQL to Remove
Single Point of Failure
• Automate node recovery
• Provide data encryption
• Support private data registries
• Oracle MySQL Operator for
Kubernetes
• Cluster configuration
• Cluster management
• Backup and restore
• Operations
Kubernetes Operators for MySQL
© 2019 Percona29
Vitess
• Scalability
• Performance
• Manageability
• Shard management
• Performance
• Connection pooling
• Shard management
• Workflow
© 2019 Percona30
MySQL Group Replication
Oracle MySQL shared-everything
• Developed in 2013 at 5.6 GA since 5.7 at the end of 2016
• MySQL Plugin
• Paxos based consensus algorithm Multi-Master
• InnoDB engine
• Performance Schema tables
• Enhanced in 8.0.X
© 2019 Percona31
Galera 4.0
• Galera Cluster uses an allocation algorithm that attempts to store write-sets.
• True Multi-master, Active-Active Cluster Read and write to any node at any time.
• Synchronous Replication No slave lag, no data is lost at node crash.
• Tightly Coupled All nodes hold the same state. No diverged data between nodes allowed.
• Multi-threaded Slave For better performance. For any workload.
• No Master-Slave Failover Operations or Use of VIP.
• Hot Standby No downtime during failover (since there is no failover).
• Automatic Node Provisioning No need to manually back up the database and copy it to the
new node.
• Supports InnoDB.
• Transparent to Applications Required no (or minimal changes) to the application.
• No Read and Write Splitting Needed.
• Easy to Use and Deploy
© 2019 Percona32
Observability and Monitoring
• PMM
• Vividcortex
© 2019 Percona33
PMM Highlights
• Point-in-time visibility and historical trending of database
performance
• Data from the Performance Schema and MySQL slow query log
• Specific Amazon RDS and Amazon Aurora metrics dashboards for
AWS-specific monitoring
• Data from the MongoDB query profiler
• Best-of-breed tools, including Grafana, Prometheus, and Consul,
query analytics, administration, API, agent and exporter components
• DBTA TREND-SETTING PRODUCT 2019
© 2019 Percona34
Vividcortex Highlights
• Network analyzer
• Monitors MySQL Queries real time
• Monitors MySQL metrics
• Agent based auto discovery
• Cloud hosted
• Designed for teams
© 2019 Percona35
Come and CMESPEAK-ALKIN
DATABASE PERFORMANCE
MATTERS
Database Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters
Champions of Unbiased
Open Source Database Solutions
Database Performance Matters

More Related Content

What's hot (20)

PPTX
Mysql ecosystem in 2018
Alkin Tezuysal
 
PDF
Confoo 202 - MySQL Group Replication and ReplicaSet
Dave Stokes
 
PPTX
Case study on mysql in rdbms
RajalakshmiK19
 
PDF
MySQL InnoDB Cluster - A complete High Availability solution for MySQL
Olivier DASINI
 
PDF
20171104 hk-py con-mysql-documentstore_v1
Ivan Ma
 
PPTX
What's new in MySQL Cluster 7.4 webinar charts
Andrew Morgan
 
PDF
Introduction to Vitess on Kubernetes for MySQL - Webinar
Alkin Tezuysal
 
PDF
Vitess: Scalable Database Architecture - Kubernetes Community Days Africa Ap...
Alkin Tezuysal
 
PDF
Securing your database servers from external attacks
Alkin Tezuysal
 
PPTX
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
Andrew Morgan
 
PDF
MySQL NDB Cluster 8.0
Ted Wennmark
 
PDF
Integrating best of breed open source tools to vitess orchestrator pleu21
Alkin Tezuysal
 
PDF
MySQL Technology Overview
Keith Hollman
 
PDF
MySQL for Software-as-a-Service (SaaS)
Mario Beck
 
PDF
What's New in MySQL 8.0 @ HKOSC 2017
Ivan Ma
 
PDF
MySQL Enterprise Edition - Complete Guide (2019)
Keith Hollman
 
PDF
MySQL InnoDB Cluster and NDB Cluster
Mario Beck
 
PPT
MySQL ppt
AtharvaSawant10
 
PDF
Databases in the hosted cloud
Colin Charles
 
PDF
MySQL on Docker and Kubernetes
Balasubramanian Kandasamy
 
Mysql ecosystem in 2018
Alkin Tezuysal
 
Confoo 202 - MySQL Group Replication and ReplicaSet
Dave Stokes
 
Case study on mysql in rdbms
RajalakshmiK19
 
MySQL InnoDB Cluster - A complete High Availability solution for MySQL
Olivier DASINI
 
20171104 hk-py con-mysql-documentstore_v1
Ivan Ma
 
What's new in MySQL Cluster 7.4 webinar charts
Andrew Morgan
 
Introduction to Vitess on Kubernetes for MySQL - Webinar
Alkin Tezuysal
 
Vitess: Scalable Database Architecture - Kubernetes Community Days Africa Ap...
Alkin Tezuysal
 
Securing your database servers from external attacks
Alkin Tezuysal
 
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
Andrew Morgan
 
MySQL NDB Cluster 8.0
Ted Wennmark
 
Integrating best of breed open source tools to vitess orchestrator pleu21
Alkin Tezuysal
 
MySQL Technology Overview
Keith Hollman
 
MySQL for Software-as-a-Service (SaaS)
Mario Beck
 
What's New in MySQL 8.0 @ HKOSC 2017
Ivan Ma
 
MySQL Enterprise Edition - Complete Guide (2019)
Keith Hollman
 
MySQL InnoDB Cluster and NDB Cluster
Mario Beck
 
MySQL ppt
AtharvaSawant10
 
Databases in the hosted cloud
Colin Charles
 
MySQL on Docker and Kubernetes
Balasubramanian Kandasamy
 

Similar to Mysql ecosystem in 2019 (20)

PDF
How to upgrade like a boss to MySQL 8.0 - PLE19
Alkin Tezuysal
 
PDF
Oracle Database 19c - poslední z rodiny 12.2 a co přináší nového
MarketingArrowECS_CZ
 
PDF
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
Alkin Tezuysal
 
PDF
Simplifying MySQL, Pre-FOSDEM MySQL Days, Brussels, January 30, 2020.
Geir Høydalsvik
 
PDF
MySQL 5.6 Replication Webinar
Mark Swarbrick
 
PDF
MySQL Tech Tour 2015 - Alt Intro
Mark Swarbrick
 
PDF
Introduction to MySQL
Ted Wennmark
 
PPTX
The New MariaDB Offering: MariaDB 10, MaxScale and More
MariaDB Corporation
 
PDF
My sql 5.5_product_update
henriquesidney
 
PDF
Novinky v Oracle Database 18c
MarketingArrowECS_CZ
 
PDF
MySQL State of the Dolphin - Rich Mason
MySQL Brasil
 
PDF
Stay productive while slicing up the monolith
Markus Eisele
 
PDF
TechEvent 2019: Create a Private Database Cloud in the Public Cloud using the...
Trivadis
 
PDF
MySQL :What's New #GIDS16
Sanjay Manwani
 
PDF
Cloud Migration Paths: Kubernetes, IaaS, or DBaaS
EDB
 
PDF
The Kubernetes WebLogic revival (part 1)
Simon Haslam
 
PPTX
20191201 kubernetes managed weblogic revival - part 1
makker_nl
 
PDF
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp
 
PDF
Mysql User Camp : 20th June - Mysql New Features
Tarique Saleem
 
PDF
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Continuent
 
How to upgrade like a boss to MySQL 8.0 - PLE19
Alkin Tezuysal
 
Oracle Database 19c - poslední z rodiny 12.2 a co přináší nového
MarketingArrowECS_CZ
 
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
Alkin Tezuysal
 
Simplifying MySQL, Pre-FOSDEM MySQL Days, Brussels, January 30, 2020.
Geir Høydalsvik
 
MySQL 5.6 Replication Webinar
Mark Swarbrick
 
MySQL Tech Tour 2015 - Alt Intro
Mark Swarbrick
 
Introduction to MySQL
Ted Wennmark
 
The New MariaDB Offering: MariaDB 10, MaxScale and More
MariaDB Corporation
 
My sql 5.5_product_update
henriquesidney
 
Novinky v Oracle Database 18c
MarketingArrowECS_CZ
 
MySQL State of the Dolphin - Rich Mason
MySQL Brasil
 
Stay productive while slicing up the monolith
Markus Eisele
 
TechEvent 2019: Create a Private Database Cloud in the Public Cloud using the...
Trivadis
 
MySQL :What's New #GIDS16
Sanjay Manwani
 
Cloud Migration Paths: Kubernetes, IaaS, or DBaaS
EDB
 
The Kubernetes WebLogic revival (part 1)
Simon Haslam
 
20191201 kubernetes managed weblogic revival - part 1
makker_nl
 
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp
 
Mysql User Camp : 20th June - Mysql New Features
Tarique Saleem
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Continuent
 
Ad

More from Alkin Tezuysal (20)

PDF
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Alkin Tezuysal
 
PDF
Unified Observability - Alkin Tezuysal - FOSSASIA Summit March 2025 .pdf
Alkin Tezuysal
 
PDF
Boosting MySQL with Vector Search Scale22X 2025.pdf
Alkin Tezuysal
 
PDF
Boosting MySQL with Vector Search Fosdem 2025.pdf
Alkin Tezuysal
 
PDF
London MySQL Day - Lightning Talk Dec 2024.pdf
Alkin Tezuysal
 
PDF
Design and Modeling with MySQL and PostgreSQL - Percona University Istanbul S...
Alkin Tezuysal
 
PDF
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Alkin Tezuysal
 
PPTX
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Alkin Tezuysal
 
PDF
FOSSASIA - MySQL Cookbook 4e Journey APR 2023.pdf
Alkin Tezuysal
 
PDF
How OLTP to OLAP Archival Demystified
Alkin Tezuysal
 
PDF
MySQL Cookbook: Recipes for Developers, Alkin Tezuysal and Sveta Smirnova - P...
Alkin Tezuysal
 
PDF
My first 90 days with ClickHouse.pdf
Alkin Tezuysal
 
PDF
KubeCon_NA_2021
Alkin Tezuysal
 
PDF
How to shard MariaDB like a pro - FOSDEM 2021
Alkin Tezuysal
 
PDF
Vitess - Data on Kubernetes
Alkin Tezuysal
 
PDF
When is Myrocks good? 2020 Webinar Series
Alkin Tezuysal
 
PPTX
Mysql 8 vs Mariadb 10.4 Webinar 2020 Feb
Alkin Tezuysal
 
PPTX
Myrocks in the wild wild west! FOSDEM 2020
Alkin Tezuysal
 
PPTX
When is MyRocks good?
Alkin Tezuysal
 
PDF
PXC (Xtradb) Failure and Recovery
Alkin Tezuysal
 
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Alkin Tezuysal
 
Unified Observability - Alkin Tezuysal - FOSSASIA Summit March 2025 .pdf
Alkin Tezuysal
 
Boosting MySQL with Vector Search Scale22X 2025.pdf
Alkin Tezuysal
 
Boosting MySQL with Vector Search Fosdem 2025.pdf
Alkin Tezuysal
 
London MySQL Day - Lightning Talk Dec 2024.pdf
Alkin Tezuysal
 
Design and Modeling with MySQL and PostgreSQL - Percona University Istanbul S...
Alkin Tezuysal
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Alkin Tezuysal
 
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Alkin Tezuysal
 
FOSSASIA - MySQL Cookbook 4e Journey APR 2023.pdf
Alkin Tezuysal
 
How OLTP to OLAP Archival Demystified
Alkin Tezuysal
 
MySQL Cookbook: Recipes for Developers, Alkin Tezuysal and Sveta Smirnova - P...
Alkin Tezuysal
 
My first 90 days with ClickHouse.pdf
Alkin Tezuysal
 
KubeCon_NA_2021
Alkin Tezuysal
 
How to shard MariaDB like a pro - FOSDEM 2021
Alkin Tezuysal
 
Vitess - Data on Kubernetes
Alkin Tezuysal
 
When is Myrocks good? 2020 Webinar Series
Alkin Tezuysal
 
Mysql 8 vs Mariadb 10.4 Webinar 2020 Feb
Alkin Tezuysal
 
Myrocks in the wild wild west! FOSDEM 2020
Alkin Tezuysal
 
When is MyRocks good?
Alkin Tezuysal
 
PXC (Xtradb) Failure and Recovery
Alkin Tezuysal
 
Ad

Recently uploaded (20)

PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Python basic programing language for automation
DanialHabibi2
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
July Patch Tuesday
Ivanti
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 

Mysql ecosystem in 2019

  • 1. © 2019 Percona1 ALKIN TEZUYSAL The MySQL Ecosystem in 2019 Where can you be part of it? Sr. Technical Manager , @ask_dba OSDNCONF Kiev - Keynote Sept 14, 2019
  • 2. © 2019 Percona2 Who am I? • Alkin Tezuysal - @ask_dba ▪ Sr. Technical Manager, Percona • Global Operations – Managed Services ▪ 20+ years of IT experience in RDBMS domain ▪ Enterprise background ▪ Speaker, mentor and coach ▪ Born to Sail, Forced to Work
  • 3. © 2019 Percona3 About This Presentation Overview of Existing Solutions and History of MySQL Discuss what we use at Percona and best practices Show what specific things to look at and trending topics
  • 4. © 2019 Percona4 Inception of MySQL • Written by Monty Widenius (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
  • 5. © 2019 Percona5 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 2019 Oracle owns both community and enterprise editions of MySQL
  • 6. © 2019 Percona6 MySQL Versions History Ref:https://elmcip.net/node/10280
  • 7. © 2019 Percona7 MySQL 5.0 to 8.0 Ref:https://github.com/dveeden/mysql-history-graph
  • 8. © 2019 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/
  • 9. © 2019 Percona9 MySQL 8.0 • 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 • MySQL Shell Database Administration Software Development Ref:https://mysqlserverteam.com/the-complete-list-of-new-features-in-mysql-8-0/
  • 10. © 2019 Percona10 MySQL 8.0.17 • 8.0.0 to 8.0.5 Several Bugs Fixed • 8.0.11 Deprecates uft8mb3 • 8.0.12 Improves performance_schema defaults • 8.0.13 Major deprecations InnoDB, Partitioning • 8.0.14 MySQL allows dual passwords • 8.0.15 Bugs Fixed • InnoDB: After a checkpoint operation persisted modifications to data dictionary metadata, there was potential for new metadata changes to be lost under certain circumstances. (Bug #29120297) • Group Replication was unable to function in the 8.0.14 release of MySQL Server if IPv6 support was disabled at the operating system level, even if the replication group did not use any IPv6 addresses. The issue is fixed by this release of MySQL Server, 8.0.15. (Bug #29249542, Bug #94004) • If MySQL was running on the host system and within Docker, it was not possible to update or remove MySQL on the host system. (Bug #28244773, Bug #91405)8.0.0 to 8.0.11 several bug fixes • 8.0.16 Several changes made to account-management capabilities, deprecation of mysql_upgrade. • 8.0.17 Audit Log , C API , Character Set Support changes. • MySQL Shell Plugins • Parallel table import • In InnoDB Cluster: • Automatic instance provisioning through cloning • Automatic server version compatibility handling • Simplification of internal recovery accounts • 8.0.18/19 aren’t GA yet
  • 11. © 2019 Percona11 Percona Server 5.7 to 8.0 Ref:https://github.com/dveeden/mysql-history-graph
  • 12. © 2019 Percona12 Percona Server for MySQL 8.0.15-5 • Faster and more consistently run queries • Enhanced security with binary log (binlog) encryption and data- at-rest encryption • MyRocks, TokuDB Storage Engines • InnoDB Full-Text Search Improvements • Extra Hast/Digest Functions • Improved diagnostics with instrumentation and troubleshooting features
  • 13. © 2019 Percona13 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
  • 14. © 2019 Percona14 MariaDB 10.3.17 • System-versioned tables (also known as AS OF) (MDEV-12894) • Table Value Constructors (MDEV-12172) — GSoC 2017 project by Galina Shalygina • Transform [NOT] IN predicate with long list of values INTO [NOT] IN subquery (MDEV-12176) — GSoC 2017 project by Galina Shalygina • ROW TYPE OF now supports local SP variables (MDEV-14139) • Aggregate stored functions (MDEV-7773) — GSoC 2016 project by Varun Gupta • Support for LIMIT clause in GROUP_CONCAT() (MDEV-11297) • PERCENTILE_CONT, PERCENTILE_DISC, and MEDIAN window functions (MDEV-12985) • FOR ... END FOR statement (MDEV-14415) • XA RECOVER FORMAT='SQL' (MDEV-14593) • Oracle compatible SUBSTR() function (MDEV-14012) — contribution by Jérôme Brauge • INVISIBLE columns (MDEV-10177) — GSoC 2016 project by Sachin Setiya • Various scalability improvements (MDEV-14529, MDEV-14505) • Sequences can now be used with DEFAULT. • Semi-sync plugin merged into the server (MDEV-13073) — contribution by Alibaba • CREATE/SHOW/ALTER/DROP SEQUENCE (MDEV-10139) https://mariadb.com/kb/en/library/changes-improvements-in- mariadb-103/
  • 15. © 2019 Percona15 Percona / MariaDB MyRocks Engine • MyRocks storage engine based of RocksDB • RocksDB is key-value store fork of LevelDB • Optimized for writes and disk space usage • Log-Structured Merge Tree Database • Compressed InnoDB is roughly 2x smaller than uncompressed InnoDB, MyRocks/HBase are 4x smaller • Decompression cost on read is non zero. It matters less on i/o bound workloads • Write efficiency is 10X better Ref:https://www.percona.com/live/e18/sessions/myrocks-in-the-real-world
  • 16. © 2019 Percona16 MyRocks - Read, Write and Space Performance/Efficiency Ref:https://www.percona.com/live/e18/sessions/myrocks-in-the-real-world
  • 17. © 2019 Percona17 Other Major Players • Amazon Web Services (AWS) RDS MySQL & MariaDB • Amazon Web Services (AWS) Aurora • Google Cloud Platform • Alibaba Cloud (AliSQL, PolarDB) • Microsoft Azure MySQL & MariaDB • Rackspace Cloud MySQL & MariaDB & Percona Server • Linux distributions MariaDB default database
  • 18. © 2019 Percona18 Popularity of Mysql vs … https://db-engines.com/en/ranking_trend https://tinyurl.com/y5etcaxv-systems/
  • 19. © 2019 Percona19 MySQL Use Cases 0 1 2 3 4 5 6 Category 1 Category 2 Category 3 Category 4 Chart Title 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/ Ref: https://dzone.com/articles/2019-open-source-database-report-top- databases-pub
  • 20. © 2019 Percona20 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
  • 21. © 2019 Percona21 Edge Cases of MySQL • Very Large Clusters up to 10-15K MySQL instances. • Sharded operations for geographic zones and customer base Vitess • Usage beyond MySQL’s initial design • Not fit due to hardware limitation • Unexpected growth and expansion • One billion tables http://bit.ly/2DCXfjI
  • 22. © 2019 Percona22 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
  • 23. © 2019 Percona23 Open Source Proxy Options •ProxySQL 2.0.7 (GPLv3) ▪Stable since December 2015 ▪ProxySQL - included with PerconaXtraDB Cluster 5.7,8.0, ▪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
  • 24. © 2019 Percona24 MySQL Proxy Vision https://proxysql.com/blog/proxysql-native-galera-support https://tinyurl.com/y5fwde4z
  • 25. © 2019 Percona25 On Premise ▪ MySQL •Group Replication •Innodb Cluster ▪ Based on Galera •Percona Xtradb •MariaDB ▪ Continuent Tungsten ▪ ScaleArc ▪ Vitess ▪ Native Replication •MHA, Orchestrator, MySQL Failover Cloud ▪ AWS Aurora ▪ Google Cloud Platform ▪ Azure SQL ▪ Alibaba Cloud AliSQL ▪ Microsoft Azure MySQL HA Solutions
  • 26. © 2019 Percona26 Tooling Highlights • Percona Toolkit (pt-osc,pt-table-sync, XtraBackup) • MySQL Shell • Orchestrator, gh-ost • MHA • Tungsten Replicator • MySQL Built-in Utilities • ClusterControl • MySQL Sandbox aka Dbdeployer • Sysbench • GUI tools: MySQL Workbench, phpMyAdmin, SQLYog, etc • PMM , VividCortex
  • 27. © 2019 Percona27 MySQL Trending Topics • Kubernetes Operators • Group Replication • Galera 4.0 • MySQL 8.0.X • Vitess • Observability & Monitoring • ProxySQL • Orchestrator
  • 28. © 2019 Percona28 • Percona Kubernetes Operator for Percona XtraDB Cluster • Deploy easily • Scale Percona XtraDB Cluster • Automate Backups • Integrate with Percona Monitoring and Management (PMM) • Relies on ProxySQL to Remove Single Point of Failure • Automate node recovery • Provide data encryption • Support private data registries • Oracle MySQL Operator for Kubernetes • Cluster configuration • Cluster management • Backup and restore • Operations Kubernetes Operators for MySQL
  • 29. © 2019 Percona29 Vitess • Scalability • Performance • Manageability • Shard management • Performance • Connection pooling • Shard management • Workflow
  • 30. © 2019 Percona30 MySQL Group Replication Oracle MySQL shared-everything • Developed in 2013 at 5.6 GA since 5.7 at the end of 2016 • MySQL Plugin • Paxos based consensus algorithm Multi-Master • InnoDB engine • Performance Schema tables • Enhanced in 8.0.X
  • 31. © 2019 Percona31 Galera 4.0 • Galera Cluster uses an allocation algorithm that attempts to store write-sets. • True Multi-master, Active-Active Cluster Read and write to any node at any time. • Synchronous Replication No slave lag, no data is lost at node crash. • Tightly Coupled All nodes hold the same state. No diverged data between nodes allowed. • Multi-threaded Slave For better performance. For any workload. • No Master-Slave Failover Operations or Use of VIP. • Hot Standby No downtime during failover (since there is no failover). • Automatic Node Provisioning No need to manually back up the database and copy it to the new node. • Supports InnoDB. • Transparent to Applications Required no (or minimal changes) to the application. • No Read and Write Splitting Needed. • Easy to Use and Deploy
  • 32. © 2019 Percona32 Observability and Monitoring • PMM • Vividcortex
  • 33. © 2019 Percona33 PMM Highlights • Point-in-time visibility and historical trending of database performance • Data from the Performance Schema and MySQL slow query log • Specific Amazon RDS and Amazon Aurora metrics dashboards for AWS-specific monitoring • Data from the MongoDB query profiler • Best-of-breed tools, including Grafana, Prometheus, and Consul, query analytics, administration, API, agent and exporter components • DBTA TREND-SETTING PRODUCT 2019
  • 34. © 2019 Percona34 Vividcortex Highlights • Network analyzer • Monitors MySQL Queries real time • Monitors MySQL metrics • Agent based auto discovery • Cloud hosted • Designed for teams
  • 35. © 2019 Percona35 Come and CMESPEAK-ALKIN
  • 36. DATABASE PERFORMANCE MATTERS Database Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters Champions of Unbiased Open Source Database Solutions Database Performance Matters