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

PDF
Mysql Enterprise Edition Feature and Tools
PPTX
How to upgrade like a boss to my sql 8.0?
PPT
MySQL Enterprise Edition
PPTX
Mysql 8 vs Mariadb 10.4 Highload++ 2019
PDF
MySQL Ecosystem in 2020
PPTX
MySQL enterprise edition
PDF
MySQL overview
PPTX
Proxysql use case scenarios hl++ 2017
Mysql Enterprise Edition Feature and Tools
How to upgrade like a boss to my sql 8.0?
MySQL Enterprise Edition
Mysql 8 vs Mariadb 10.4 Highload++ 2019
MySQL Ecosystem in 2020
MySQL enterprise edition
MySQL overview
Proxysql use case scenarios hl++ 2017

What's hot (20)

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

Similar to Mysql ecosystem in 2019 (20)

PDF
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
PDF
MySQL Ecosystem in 2018
PDF
The MySQL Server Ecosystem in 2016
PDF
The MySQL Server ecosystem in 2016
PDF
The MySQL Server ecosystem in 2016
PPTX
Why are we excited about MySQL 8? / Петр Зайцев (Percona)
PDF
Percona, software libre y bases de datos
PDF
Percona Server for MySQL 8.0 @ Percona Live 2019
PDF
Percona Server 8.0
PDF
Webinar - Key Reasons to Upgrade to MySQL 8.0 or MariaDB 10.11
PPTX
Mysql 8 vs Mariadb 10.4 Webinar 2020 Feb
PDF
Percona Server 8.0
PDF
The MySQL ecosystem - understanding it, not running away from it!
PDF
The MySQL Diaspora
PDF
How to upgrade like a boss to MySQL 8.0 - PLE19
PDF
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
PDF
[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...
PDF
Differences between MariaDB 10.3 & MySQL 8.0
PDF
MySQL 开发
PDF
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2018
The MySQL Server Ecosystem in 2016
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016
Why are we excited about MySQL 8? / Петр Зайцев (Percona)
Percona, software libre y bases de datos
Percona Server for MySQL 8.0 @ Percona Live 2019
Percona Server 8.0
Webinar - Key Reasons to Upgrade to MySQL 8.0 or MariaDB 10.11
Mysql 8 vs Mariadb 10.4 Webinar 2020 Feb
Percona Server 8.0
The MySQL ecosystem - understanding it, not running away from it!
The MySQL Diaspora
How to upgrade like a boss to MySQL 8.0 - PLE19
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...
Differences between MariaDB 10.3 & MySQL 8.0
MySQL 开发
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
Ad

More from Alkin Tezuysal (20)

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

Recently uploaded (20)

PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
KodekX | Application Modernization Development
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
PDF
Empathic Computing: Creating Shared Understanding
Network Security Unit 5.pdf for BCA BBA.
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Understanding_Digital_Forensics_Presentation.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Advanced methodologies resolving dimensionality complications for autism neur...
The AUB Centre for AI in Media Proposal.docx
Per capita expenditure prediction using model stacking based on satellite ima...
20250228 LYD VKU AI Blended-Learning.pptx
KodekX | Application Modernization Development
NewMind AI Weekly Chronicles - August'25 Week I
Encapsulation_ Review paper, used for researhc scholars
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction
Empathic Computing: Creating Shared Understanding

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