Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
State of the Dolphin
Copyright © 2016, Oracle and/or its affiliates. All rights reserved.
Olivier Dasini
MySQL Principal Solutions Architect EMEA
olivier.dasini@oracle.com
@freshdaz
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is
intended for information purposes only, and may not be incorporated
into any contract. It is not a commitment to deliver any material, code,
or functionality, and should not be relied upon in making purchasing
decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole
discretion of Oracle.
2
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 3
MySQL usage still on the rise
MySQL Recap
• 21 Years Old
MySQL has been part of
Oracle’s family of databases
for six years.
• Doing very well at
Oracle
Hiring
Profitable
• MySQL 8
MySQL 5.7 is the current
release but the next version will
be MySQL 8. Big feature is real
time data dictionary.
• Document Store
Programmers not know SQL but
need a database? X Devapi
allows them to use RDMS from
language of choice #nosql.
• Group Replication
Active master-master
replication.
• JSON
A new native JSON datatype
to store documents in a
column of a table.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
A Modern Database for the Digital Age
Digital Disruptors & Large Enterprises Rely on MySQL to Innovate
4
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
They Scale
with
MySQL
Mobile Network
Supporting Over 800
Million Subscribers
1.7 Billion Active Users
100 TB of User Data for PayPal
IDs Processed for
1 Billion Citizens
850 Million Candy
Crush Game Plays/Day
2 Billion Events/Day for
Booking.com
5
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7 – Improvements across the board
• Replication
• InnoDB
• Optimizer
• Security
• Performance Schema
• GIS
• Triggers
• Partitioning
• New! SYS Schema
• New! JSON
• Performance
6
150+ new
features
In total!
http://www.thecompletelistoffeatures.com/
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
MySQL 8.0.0. DMR 1
7
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
MySQL 8.0.0 DMR 1
• The next version of MySQL will be 8.0
– MySQL 6 is a canceled version (2007)
– MySQL Cluster 7 exists
– 5.7 → 8.0 is a “nice” jump (“Just drop the 5.”)
• First Development Milestone Release available
– A DMR is produced from TRUNK every 3-6 months
– Includes everything that is new in TRUNK since the previous DMR.
– The goal is to produce DMRs with RC (release candidate) quality.
8
https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 9
The character set for the Web
MySQL 8.0: UTF-8
• New! Support for the latest Unicode 9.0
• Per-country collation rules
– Accent Sensitive
– Case Sensitive
• Based on UCA DUCET
• UTF8MB4 as the default character set
– Project started in MySQL 5.7
– Many improvements to reduce performance impact
• UTF-8 is the dominating character set
in today’s applications
• CJK users are adopting UTF-8
– Driven by “adopted words” from
foreign languages
• EN users are adopting UTF-8
– Driven by support for emojis
https://en.wikipedia.org/wiki/UTF-8
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 10
MySQL 8.0
Continuing the JSON Experience
• MySQL Document Store
• Administer MySQL via the MySQL Shell
• New JSON functions
– JSON_ARRAYAGG()
– JSON_OBJECTAGG()
SELECT blog.*,
  JSON_ARRAYAGG( JSON_OBJECT("author", blog_comment.author, "body", blog_comment.body) ) AS comments
FROM blog
JOIN blog_comment
  ON blog.id = blog_comment.blog_id
GROUP BY blog_id;
+­­­+­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+
| 1 | Hello World | This is my new Blog! | [{"body": "Great blog!", "author": "A Friend"}, {"body": "Great new blog", "author": "Best Friend"}] |
+­­­+­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+
| 2 | spam trap   | spam goes here       | [{"body": "Buy these pills to enlarge your blog", "author": "Visitor"}]
+­­­+­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 12
MySQL 8.0: Invisible Indexes
• Indexes are “hidden” to the MySQL Optimizer
– Not the same as “disabled indexes”
– Contents are fully up to date and maintained by DML
• Two use cases:
– Soft Delete (Recycle Bin)
– Staged Rollout
Feature Request
from DBAs
• I don’t think this index is used any more:
ALTER TABLE Country ALTER INDEX c INVISIBLE;
• I need to revert:
ALTER TABLE Country ALTER INDEX c VISIBLE;
• It is now safe to drop:
ALTER TABLE Country DROP INDEX c;
Example Usage:
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 16
MySQL 8.0: Persist Configuration
• Persist GLOBAL Dynamic Server Variables
– SET PERSIST 
sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';
• Examples Include:
– SQL Mode
– Offline Mode
– Read Only
• Requires no filesystem access
Cloud Friendly
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 19
MySQL 8.0: Transactional Data Dictionary
• Increased Reliability
• Using InnoDB internally for data dictionary
– No FRM files
– No DB.OPT files
– No TRG files
– No TRN files
– No PAR files
• MySQL 8.0 default install no longer contains MyISAM tables.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 20
Additional Benefits
MySQL 8.0: Transactional Data Dictionary
• Better cross-platform experience
– No dependencies on filesystem semantics
• Atomic DDL
– Better Replication
– Simplifies server edge cases
• Flexible Metadata API
– Easier path to adding new features
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
• UUID improvements
– Functions to convert UUID to and from binary
– Smaller and insert-order efficient
• InnoDB Auto Increment Persists
• Common Table Expressions
• Privilege Tables now 100% InnoDB
• Security Roles
• Improved Scan Query Performance
• Improved BLOB Storage
• Improved Memcached Interface
• Improved Information Schema Performance
• Performance Schema Indexes
• Improved Sys Schema Performance
• Scalability Improvements
• Parser Refactoring
• Document Store
• Improvements to Temporary Tables
• C++11 and Toolchain Improvements
• Replication Applier Thread Progress Reports
• GTID_PURGED always settable
• Improved cost model
• Source code documented with Doxygen
• Expanded GIS Support
• Expanded Query Hints Support
• Plugin Infrastructure!
23
MySQL 8.0: All these features and more…
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
MySQL Group Replication
24
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
MySQL Group Replication
“Multi-master update anywhere replication plugin for MySQL with
built-in conflict detection and resolution, automatic
distributed recovery, and group membership.”
• Active/Active update anywhere
• Distributed fault tolerance
• Automatic server fail-over
• Automatic reconfiguration
• Automatic conflict detection & resolution
25
App Servers with
MySQL Router
MySQL Group Replication
MySQL Shell
Setup, Manage,
Orchestrate
RC
http://dasini.net/blog/2016/11/08/deployer-un-cluster-mysql-group-replication/
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
MySQL Group Replication: Architecture
Node Types
R: Traffic routers/proxies: mysqlrouter, haproxy, sqlproxy, ...
M: mysqld nodes participating in Group Replication
26
RC
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 27
Scale-Out
High Performance
Ease-of-Use
Built-in HA
Out-of-Box Solution
Everything Integrated
MySQL
InnoDB
cluster
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 28
A single product: MySQL
• All components created together
• Tested together
• Packaged together
Flexible and Modern
• C++ 11
• Protocol Buffers
• Developer friendly
MySQL InnoDB Cluster – Goals
Easy to use
• A single client: MySQL Shell
• Easy packaging
• Homogenous servers
Scale-out
• Sharded clusters
• Federated system of N replica sets
• Each replica set manages a shard
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
MySQL
InnoDB
cluster
MySQL InnoDB Cluster – Architecture - S2
M
M M
MySQL Connector
Application
MySQL Router
MySQL Connector
Application
MySQL Router
MySQL Shell
HA
Group Replication
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
MySQL Cluster 7.5
35
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 36
MySQL Cluster 7.5
• Read Optimized Tables
• Global Tables
Capacity and
Scale Out
• MySQL 5.7
• JSON Data Type
• Generated Columns
• Records-Per-Key
Optimization
Improved SQL
• Improved Reporting
• Improved Logging
• Improved Visibility
• Improved Debugging
• Improved Restore
Management
GA
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle MySQL Cloud Service
37
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
NEW! Oracle MySQL Cloud Service
Simple, Automated, Integrated & Enterprise-Ready
• The #1 Open Source Database in Oracle Cloud
• Only public cloud integrating MySQL Enterprise
Edition
• Rapidly, securely and cost-effectively develop &
deploy modern MySQL-based applications
38
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Highest Levels of
Security Scalability & Availability
Expert MySQL
Technical Support
Integration into
Oracle Cloud
Environment
Hybrid deployments across
cloud & on-premises Lower TCO
39
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 4040
Oracle MySQL Cloud Service: Product Overview
* Will be available in future releases 
PaaS
Compute
Oracle Premier Support
Compute, Storage, Network
MySQL Enterprise Edition
Database
Administration
Database
Administration
Automated
Provisioning
Automated
Provisioning
Push Button
Patching
Push Button
Patching
1-Click
Instance
Management
1-Click
Instance
Management
Enterprise
Monitoring
Enterprise
Monitoring
Backup &
Recovery
Backup &
Recovery
Automated
Backup
Automated
Backup
Point-in-time
Recovery
Point-in-time
Recovery
On-demand
Snapshot
On-demand
Snapshot
ScalabilityScalability
Elastic
Compute
Elastic
Compute
Elastic StorageElastic Storage
Enterprise
Thread Pool
Enterprise
Thread Pool
Elastic
Replication*
Elastic
Replication*
High
Availability
High
Availability
ReplicationReplication
Replication
Monitor
Replication
Monitor
Multi-AD
Support*
Multi-AD
Support*
SecuritySecurity
Network Access
Control
Network Access
Control
Enterprise
Firewall
Enterprise
Firewall
Enterprise
Authentication
Enterprise
Authentication
Enterprise
Encryption & TDE*
Enterprise
Encryption & TDE*
Enterprise
Audit
Enterprise
Audit
Management
Access
Data
Access
CLI
REST API
Oracle Cloud
Console
MySQL Tools
On-premise
Applications
40
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 41
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 42
Links
Recap
• http://dasini.net/blog/2016/10/05/mysql-a-oracle-openworld-2016/
MySQL 8
• http://mysqlserverteam.com/the-mysql-8-0-0-milestone-release-is-available/
• http://mysqlserverteam.com/mysql-8-0-persisting-configuration-variables/
• http://mysqlserverteam.com/mysql-8-0-labs-recursive-common-table-expressions-in-mysql-ctes/
• http://mysqlserverteam.com/mysql-8-0-invisible-indexes/
• http://mysqlserverteam.com/mysql-8-0-faster-batch-record-retrieval/
• http://mysqlserverteam.com/mysql-8-0-labs-json-aggregation-functions/
MySQL Group Replication / InnoDB Cluster
• http://mysqlhighavailability.com/mysql-group-replication-a-quick-start-guide/
• http://mysqlhighavailability.com/gr/doc/
• https://www.youtube.com/watch?v=JWy7ZLXxtZ4
Oracle MySQL Cloud Service
• https://www.youtube.com/watch?v=xXUlHvAYtiE
• http://www.slideshare.net/morgo/mysql-cloud-service-deep-dive
OOW
• https://www.youtube.com/watch?v=SmCxsphWoWQ
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Thank you!
MySQL Day Paris 2016 - State Of The Dolphin

More Related Content

PDF
Case Study: MySQL migration from latin1 to UTF-8
PDF
MySQL for Software-as-a-Service (SaaS)
PDF
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
PDF
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
PDF
MySQL Day Paris 2016 - MySQL Enterprise Edition
PDF
MySQL InnoDB Cluster - A complete High Availability solution for MySQL
PDF
MySQL Day Paris 2016 - MySQL as a Document Store
PDF
MySQL Cloud Service Deep Dive
Case Study: MySQL migration from latin1 to UTF-8
MySQL for Software-as-a-Service (SaaS)
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL Day Paris 2016 - MySQL Enterprise Edition
MySQL InnoDB Cluster - A complete High Availability solution for MySQL
MySQL Day Paris 2016 - MySQL as a Document Store
MySQL Cloud Service Deep Dive

What's hot (20)

PDF
MySQL Document Store
PDF
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
PDF
MySQL InnoDB Cluster and NDB Cluster
PDF
MySQL 5.7 InnoDB Cluster (Jan 2018)
PDF
MySQL High Availability -- InnoDB Clusters
PDF
NoSQL and MySQL: News about JSON
PDF
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
PDF
MySQL 5.7: What's New, Nov. 2015
PDF
MySQL Document Store - A Document Store with all the benefts of a Transactona...
PDF
Upgrade to MySQL 5.6 without downtime
PDF
MySQL InnoDB Cluster and MySQL Group Replication @HKOSC 2017
PDF
MySQL HA
PDF
MySQL 8.0 - What's New ?
PDF
MySQL 5.7 Replication News
PDF
MySQL InnoDB Cluster and Group Replication - OSI 2017 Bangalore
PDF
MySQL InnoDB Cluster - Group Replication
PDF
MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0
PDF
What's New in MySQL 8.0 @ HKOSC 2017
PDF
Why MySQL High Availability Matters
PDF
MySQL Day Paris 2018 - MySQL JSON Document Store
MySQL Document Store
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL InnoDB Cluster and NDB Cluster
MySQL 5.7 InnoDB Cluster (Jan 2018)
MySQL High Availability -- InnoDB Clusters
NoSQL and MySQL: News about JSON
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL 5.7: What's New, Nov. 2015
MySQL Document Store - A Document Store with all the benefts of a Transactona...
Upgrade to MySQL 5.6 without downtime
MySQL InnoDB Cluster and MySQL Group Replication @HKOSC 2017
MySQL HA
MySQL 8.0 - What's New ?
MySQL 5.7 Replication News
MySQL InnoDB Cluster and Group Replication - OSI 2017 Bangalore
MySQL InnoDB Cluster - Group Replication
MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0
What's New in MySQL 8.0 @ HKOSC 2017
Why MySQL High Availability Matters
MySQL Day Paris 2018 - MySQL JSON Document Store
Ad

Viewers also liked (20)

PDF
MySQL 5.7 & JSON - Nouvelles opportunités pour les dévelopeurs
PDF
Haute disponibilité my sql avec group réplication
PDF
Étude de cas : migration MySQL Latin 1 vers UTF-8
PDF
Optimisation de MySQL
PDF
MHA : MySQL haute dispo, chez Viadeo par Olivier Dasini
PDF
Architectures haute disponibilité avec MySQL
PDF
Les nouveautés de MySQL 5.1
PDF
Moins on code, mieux on se porte !
PDF
devops Days Belgium Ghent 2016
PDF
Mix ‘n’ Match Async and Group Replication for Advanced Replication Setups
PDF
Inexpensive Datamasking for MySQL with ProxySQL - data anonymization for deve...
PDF
Fine-tuning Group Replication for Performance
PDF
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
PDF
Group Replication: A Journey to the Group Communication Core
PDF
MySQL 8.0 & Unicode: Why, what & how
PDF
MySQL 8.0: GIS — Are you ready?
PPTX
Proxysql use case scenarios fosdem17
PDF
SQL window functions for MySQL
PDF
Best practices for MySQL High Availability
PDF
MySQL 8.0: Common Table Expressions
MySQL 5.7 & JSON - Nouvelles opportunités pour les dévelopeurs
Haute disponibilité my sql avec group réplication
Étude de cas : migration MySQL Latin 1 vers UTF-8
Optimisation de MySQL
MHA : MySQL haute dispo, chez Viadeo par Olivier Dasini
Architectures haute disponibilité avec MySQL
Les nouveautés de MySQL 5.1
Moins on code, mieux on se porte !
devops Days Belgium Ghent 2016
Mix ‘n’ Match Async and Group Replication for Advanced Replication Setups
Inexpensive Datamasking for MySQL with ProxySQL - data anonymization for deve...
Fine-tuning Group Replication for Performance
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
Group Replication: A Journey to the Group Communication Core
MySQL 8.0 & Unicode: Why, what & how
MySQL 8.0: GIS — Are you ready?
Proxysql use case scenarios fosdem17
SQL window functions for MySQL
Best practices for MySQL High Availability
MySQL 8.0: Common Table Expressions
Ad

Similar to MySQL Day Paris 2016 - State Of The Dolphin (20)

PDF
Mysql8for blr usercamp
PDF
MySQL Technology Overview
PDF
MySQL Day Paris 2018 - What’s New in MySQL 8.0 ?
PDF
State of the Dolphin 2020 - 25th Anniversary of MySQL with 8.0.20
PDF
MySQL 8: Ready for Prime Time
PDF
20190915_MySQL開発最新動向
PPTX
MySQL 8.0 in a nutshell
PPTX
State ofdolphin short
PDF
MySQL : State of the Dolphin May 2019
PDF
MySQL
PDF
TLV - Whats new in MySQL 8
PDF
the State of the Dolphin - October 2020
PDF
MySQL 8 - 2018 MySQL Days
PPTX
2018: State of the Dolphin, MySQL Keynote at Percona Live Europe 2018, Frankf...
PDF
MySQL Innovation: from 5.7 to 8.0
PDF
MySQL Innovation from 5.7 to 8.0
PDF
MySQL Dublin Event Nov 2018 - MySQL 8
PDF
MySQL 8 loves JavaScript
PDF
MySQL Day Paris 2018 - Introduction & The State of the Dolphin
PDF
RMOUG MySQL 5.7 New Features
Mysql8for blr usercamp
MySQL Technology Overview
MySQL Day Paris 2018 - What’s New in MySQL 8.0 ?
State of the Dolphin 2020 - 25th Anniversary of MySQL with 8.0.20
MySQL 8: Ready for Prime Time
20190915_MySQL開発最新動向
MySQL 8.0 in a nutshell
State ofdolphin short
MySQL : State of the Dolphin May 2019
MySQL
TLV - Whats new in MySQL 8
the State of the Dolphin - October 2020
MySQL 8 - 2018 MySQL Days
2018: State of the Dolphin, MySQL Keynote at Percona Live Europe 2018, Frankf...
MySQL Innovation: from 5.7 to 8.0
MySQL Innovation from 5.7 to 8.0
MySQL Dublin Event Nov 2018 - MySQL 8
MySQL 8 loves JavaScript
MySQL Day Paris 2018 - Introduction & The State of the Dolphin
RMOUG MySQL 5.7 New Features

More from Olivier DASINI (15)

PDF
MySQL High Availability Solutions - Avoid loss of service by reducing the r...
PDF
MySQL Document Store for Modern Applications
PDF
MySQL Performance Best Practices
PDF
MySQL 8.0.22 - New Features Summary
PDF
MySQL Database Service - 100% Developed, Managed and Supported by the MySQL Team
PDF
Upgrade from MySQL 5.7 to MySQL 8.0
PDF
MySQL 8.0.21 - New Features Summary
PDF
MySQL 8.0.19 - New Features Summary
PDF
MySQL 8.0.18 - New Features Summary
PDF
MySQL 8.0.17 - New Features Summary
PDF
MySQL 8.0.16 New Features Summary
PDF
MySQL Day Paris 2018 - MySQL & GDPR; Privacy and Security requirements
PDF
MySQL 8.0, what's new ? - Forum PHP 2018
PDF
MySQL JSON Document Store - A Document Store with all the benefits of a Trans...
PDF
What's New in MySQL 5.7
MySQL High Availability Solutions - Avoid loss of service by reducing the r...
MySQL Document Store for Modern Applications
MySQL Performance Best Practices
MySQL 8.0.22 - New Features Summary
MySQL Database Service - 100% Developed, Managed and Supported by the MySQL Team
Upgrade from MySQL 5.7 to MySQL 8.0
MySQL 8.0.21 - New Features Summary
MySQL 8.0.19 - New Features Summary
MySQL 8.0.18 - New Features Summary
MySQL 8.0.17 - New Features Summary
MySQL 8.0.16 New Features Summary
MySQL Day Paris 2018 - MySQL & GDPR; Privacy and Security requirements
MySQL 8.0, what's new ? - Forum PHP 2018
MySQL JSON Document Store - A Document Store with all the benefits of a Trans...
What's New in MySQL 5.7

Recently uploaded (20)

PDF
1 - Historical Antecedents, Social Consideration.pdf
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
STKI Israel Market Study 2025 version august
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
WOOl fibre morphology and structure.pdf for textiles
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPTX
Modernising the Digital Integration Hub
PPT
Geologic Time for studying geology for geologist
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PPTX
Chapter 5: Probability Theory and Statistics
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Unlock new opportunities with location data.pdf
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
1 - Historical Antecedents, Social Consideration.pdf
Module 1.ppt Iot fundamentals and Architecture
STKI Israel Market Study 2025 version august
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
Group 1 Presentation -Planning and Decision Making .pptx
Assigned Numbers - 2025 - Bluetooth® Document
A contest of sentiment analysis: k-nearest neighbor versus neural network
Developing a website for English-speaking practice to English as a foreign la...
WOOl fibre morphology and structure.pdf for textiles
Web Crawler for Trend Tracking Gen Z Insights.pptx
DP Operators-handbook-extract for the Mautical Institute
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Modernising the Digital Integration Hub
Geologic Time for studying geology for geologist
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
Chapter 5: Probability Theory and Statistics
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Unlock new opportunities with location data.pdf
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf

MySQL Day Paris 2016 - State Of The Dolphin

  • 1. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | State of the Dolphin Copyright © 2016, Oracle and/or its affiliates. All rights reserved. Olivier Dasini MySQL Principal Solutions Architect EMEA olivier.dasini@oracle.com @freshdaz
  • 2. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 2
  • 3. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 3 MySQL usage still on the rise MySQL Recap • 21 Years Old MySQL has been part of Oracle’s family of databases for six years. • Doing very well at Oracle Hiring Profitable • MySQL 8 MySQL 5.7 is the current release but the next version will be MySQL 8. Big feature is real time data dictionary. • Document Store Programmers not know SQL but need a database? X Devapi allows them to use RDMS from language of choice #nosql. • Group Replication Active master-master replication. • JSON A new native JSON datatype to store documents in a column of a table.
  • 4. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | A Modern Database for the Digital Age Digital Disruptors & Large Enterprises Rely on MySQL to Innovate 4
  • 5. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | They Scale with MySQL Mobile Network Supporting Over 800 Million Subscribers 1.7 Billion Active Users 100 TB of User Data for PayPal IDs Processed for 1 Billion Citizens 850 Million Candy Crush Game Plays/Day 2 Billion Events/Day for Booking.com 5
  • 6. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7 – Improvements across the board • Replication • InnoDB • Optimizer • Security • Performance Schema • GIS • Triggers • Partitioning • New! SYS Schema • New! JSON • Performance 6 150+ new features In total! http://www.thecompletelistoffeatures.com/
  • 7. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | MySQL 8.0.0. DMR 1 7
  • 8. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | MySQL 8.0.0 DMR 1 • The next version of MySQL will be 8.0 – MySQL 6 is a canceled version (2007) – MySQL Cluster 7 exists – 5.7 → 8.0 is a “nice” jump (“Just drop the 5.”) • First Development Milestone Release available – A DMR is produced from TRUNK every 3-6 months – Includes everything that is new in TRUNK since the previous DMR. – The goal is to produce DMRs with RC (release candidate) quality. 8 https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html
  • 9. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 9 The character set for the Web MySQL 8.0: UTF-8 • New! Support for the latest Unicode 9.0 • Per-country collation rules – Accent Sensitive – Case Sensitive • Based on UCA DUCET • UTF8MB4 as the default character set – Project started in MySQL 5.7 – Many improvements to reduce performance impact • UTF-8 is the dominating character set in today’s applications • CJK users are adopting UTF-8 – Driven by “adopted words” from foreign languages • EN users are adopting UTF-8 – Driven by support for emojis https://en.wikipedia.org/wiki/UTF-8
  • 10. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 10 MySQL 8.0 Continuing the JSON Experience • MySQL Document Store • Administer MySQL via the MySQL Shell • New JSON functions – JSON_ARRAYAGG() – JSON_OBJECTAGG() SELECT blog.*,   JSON_ARRAYAGG( JSON_OBJECT("author", blog_comment.author, "body", blog_comment.body) ) AS comments FROM blog JOIN blog_comment   ON blog.id = blog_comment.blog_id GROUP BY blog_id; +­­­+­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+ | 1 | Hello World | This is my new Blog! | [{"body": "Great blog!", "author": "A Friend"}, {"body": "Great new blog", "author": "Best Friend"}] | +­­­+­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+ | 2 | spam trap   | spam goes here       | [{"body": "Buy these pills to enlarge your blog", "author": "Visitor"}] +­­­+­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+
  • 11. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 12 MySQL 8.0: Invisible Indexes • Indexes are “hidden” to the MySQL Optimizer – Not the same as “disabled indexes” – Contents are fully up to date and maintained by DML • Two use cases: – Soft Delete (Recycle Bin) – Staged Rollout Feature Request from DBAs • I don’t think this index is used any more: ALTER TABLE Country ALTER INDEX c INVISIBLE; • I need to revert: ALTER TABLE Country ALTER INDEX c VISIBLE; • It is now safe to drop: ALTER TABLE Country DROP INDEX c; Example Usage:
  • 12. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 16 MySQL 8.0: Persist Configuration • Persist GLOBAL Dynamic Server Variables – SET PERSIST  sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION'; • Examples Include: – SQL Mode – Offline Mode – Read Only • Requires no filesystem access Cloud Friendly
  • 13. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 19 MySQL 8.0: Transactional Data Dictionary • Increased Reliability • Using InnoDB internally for data dictionary – No FRM files – No DB.OPT files – No TRG files – No TRN files – No PAR files • MySQL 8.0 default install no longer contains MyISAM tables.
  • 14. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 20 Additional Benefits MySQL 8.0: Transactional Data Dictionary • Better cross-platform experience – No dependencies on filesystem semantics • Atomic DDL – Better Replication – Simplifies server edge cases • Flexible Metadata API – Easier path to adding new features
  • 15. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | • UUID improvements – Functions to convert UUID to and from binary – Smaller and insert-order efficient • InnoDB Auto Increment Persists • Common Table Expressions • Privilege Tables now 100% InnoDB • Security Roles • Improved Scan Query Performance • Improved BLOB Storage • Improved Memcached Interface • Improved Information Schema Performance • Performance Schema Indexes • Improved Sys Schema Performance • Scalability Improvements • Parser Refactoring • Document Store • Improvements to Temporary Tables • C++11 and Toolchain Improvements • Replication Applier Thread Progress Reports • GTID_PURGED always settable • Improved cost model • Source code documented with Doxygen • Expanded GIS Support • Expanded Query Hints Support • Plugin Infrastructure! 23 MySQL 8.0: All these features and more…
  • 16. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | MySQL Group Replication 24
  • 17. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | MySQL Group Replication “Multi-master update anywhere replication plugin for MySQL with built-in conflict detection and resolution, automatic distributed recovery, and group membership.” • Active/Active update anywhere • Distributed fault tolerance • Automatic server fail-over • Automatic reconfiguration • Automatic conflict detection & resolution 25 App Servers with MySQL Router MySQL Group Replication MySQL Shell Setup, Manage, Orchestrate RC http://dasini.net/blog/2016/11/08/deployer-un-cluster-mysql-group-replication/
  • 18. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | MySQL Group Replication: Architecture Node Types R: Traffic routers/proxies: mysqlrouter, haproxy, sqlproxy, ... M: mysqld nodes participating in Group Replication 26 RC
  • 19. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 27 Scale-Out High Performance Ease-of-Use Built-in HA Out-of-Box Solution Everything Integrated MySQL InnoDB cluster
  • 20. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 28 A single product: MySQL • All components created together • Tested together • Packaged together Flexible and Modern • C++ 11 • Protocol Buffers • Developer friendly MySQL InnoDB Cluster – Goals Easy to use • A single client: MySQL Shell • Easy packaging • Homogenous servers Scale-out • Sharded clusters • Federated system of N replica sets • Each replica set manages a shard
  • 21. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | MySQL InnoDB cluster MySQL InnoDB Cluster – Architecture - S2 M M M MySQL Connector Application MySQL Router MySQL Connector Application MySQL Router MySQL Shell HA Group Replication
  • 22. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | MySQL Cluster 7.5 35
  • 23. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 36 MySQL Cluster 7.5 • Read Optimized Tables • Global Tables Capacity and Scale Out • MySQL 5.7 • JSON Data Type • Generated Columns • Records-Per-Key Optimization Improved SQL • Improved Reporting • Improved Logging • Improved Visibility • Improved Debugging • Improved Restore Management GA
  • 24. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle MySQL Cloud Service 37
  • 25. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | NEW! Oracle MySQL Cloud Service Simple, Automated, Integrated & Enterprise-Ready • The #1 Open Source Database in Oracle Cloud • Only public cloud integrating MySQL Enterprise Edition • Rapidly, securely and cost-effectively develop & deploy modern MySQL-based applications 38
  • 26. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Highest Levels of Security Scalability & Availability Expert MySQL Technical Support Integration into Oracle Cloud Environment Hybrid deployments across cloud & on-premises Lower TCO 39
  • 27. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 4040 Oracle MySQL Cloud Service: Product Overview * Will be available in future releases  PaaS Compute Oracle Premier Support Compute, Storage, Network MySQL Enterprise Edition Database Administration Database Administration Automated Provisioning Automated Provisioning Push Button Patching Push Button Patching 1-Click Instance Management 1-Click Instance Management Enterprise Monitoring Enterprise Monitoring Backup & Recovery Backup & Recovery Automated Backup Automated Backup Point-in-time Recovery Point-in-time Recovery On-demand Snapshot On-demand Snapshot ScalabilityScalability Elastic Compute Elastic Compute Elastic StorageElastic Storage Enterprise Thread Pool Enterprise Thread Pool Elastic Replication* Elastic Replication* High Availability High Availability ReplicationReplication Replication Monitor Replication Monitor Multi-AD Support* Multi-AD Support* SecuritySecurity Network Access Control Network Access Control Enterprise Firewall Enterprise Firewall Enterprise Authentication Enterprise Authentication Enterprise Encryption & TDE* Enterprise Encryption & TDE* Enterprise Audit Enterprise Audit Management Access Data Access CLI REST API Oracle Cloud Console MySQL Tools On-premise Applications 40
  • 28. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 41
  • 29. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 42 Links Recap • http://dasini.net/blog/2016/10/05/mysql-a-oracle-openworld-2016/ MySQL 8 • http://mysqlserverteam.com/the-mysql-8-0-0-milestone-release-is-available/ • http://mysqlserverteam.com/mysql-8-0-persisting-configuration-variables/ • http://mysqlserverteam.com/mysql-8-0-labs-recursive-common-table-expressions-in-mysql-ctes/ • http://mysqlserverteam.com/mysql-8-0-invisible-indexes/ • http://mysqlserverteam.com/mysql-8-0-faster-batch-record-retrieval/ • http://mysqlserverteam.com/mysql-8-0-labs-json-aggregation-functions/ MySQL Group Replication / InnoDB Cluster • http://mysqlhighavailability.com/mysql-group-replication-a-quick-start-guide/ • http://mysqlhighavailability.com/gr/doc/ • https://www.youtube.com/watch?v=JWy7ZLXxtZ4 Oracle MySQL Cloud Service • https://www.youtube.com/watch?v=xXUlHvAYtiE • http://www.slideshare.net/morgo/mysql-cloud-service-deep-dive OOW • https://www.youtube.com/watch?v=SmCxsphWoWQ
  • 30. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Thank you!