Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
State of the Dolphin
Ryusuke Kajiyama / 梶山隆輔
MySQL Global Business Unit
MySQL Sales Consulting Senior Manager, Asia Pacific & Japan
Highlights of MySQL 8.0 technology updates
Copyright © 2017, 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 © 2017, Oracle and/or its affiliates. All rights reserved. |
#1 MySQL is the #1 database for the web,
used by 10 of the top 10 websites
3
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |Copyright © 2017, Oracle and/or its affiliates. All rights reserved.
Enabling Customer Innovation
4
- 3x Better Performance
- Replication Enhancements
- JSON Support
- Improved Security
MySQL 5.7
MySQL InnoDB Cluster
- MySQL Group Replication
- MySQL Router
- MySQL Shell
MySQL 8.0 (RC)
- Data Dictionary
- Roles
- Unicode
- CTEs
- Window Functions
- Security
- Replication
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Scalable &Stable
Better handling of high
contention, improved
security, and minimizing
downtime
Data Driven
Optimizing services with real
time data analysis
Developer First
Hybrid data model and data
access APIs for flexibility for
developers
Mobile Friendly
Ready for location based
services. Handling Emoji
and Unicode characters
MySQL 8.0 : Enables Modern Web Applications
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 5
24x7at Scale
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
MySQL 8.0 : Mobile Application Friendly
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 6
Enhanced GIS Support
• Better integration for location based services
• Switched to Boost.Geometry library in MySQL 5.7
• Supporting Geography and Spatial Reference Systems (SRS) in MySQL 8.0
Unicode as Default
• utf8mb4 supporting Emoji is default Character Set of MySQL 8.0
• Up to 16x Faster Performance
• Based on Unicode 9.0
• New collations based on UCA with Accent/Case sensitivity
🐬🍺
🍣😁
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
MySQL 8.0 : Flexibility for Developers
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Hybrid APISQL FunctionData Type
MySQL X DevAPIJSON FunctionsJSON Datatype
7
Hybrid CRUD API of both SQL
and NoSQL provides more
flexibility for development
Various SQL functions
to search and modify JSON.
Analysing JSON with SQL by
converting into table with
JSON_TABLE()
Seamlessly managing
“unstructured” data in
RDBMS tables with efficient
update performance
{ } ();
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
MySQL 8.0 : Key Features for Data Driven Application
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Window FunctionCommon Table Expressions (CTEs)
8
• Alternative to derived table of subquery,
so called “WITH clause”
• For improvement of readability and
performance
• Frequently requested feature for data
analysis like ranking of data
• Calculation across a set of rows that are
related to the current row
WITH tickets_filtered AS (
SELECT tickets.*, seats.doc
FROM tickets
INNER JOIN seats ON
tickets.seat_id = seats.id
WHERE tickets.event_id = 3
)
SELECT * FROM tickets_filtered
WHERE doc->"$.section" = 201G
SELECT name, dept_id, salary,
RANK() OVER w AS `rank`
FROM employee
WINDOW w AS
(PARTITION BY dept_id
ORDER BY salary DESC);
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Performance
Schema
More instrumentation enabled by
default and better response to
view with indexes added
Invisible
Indexes
Indexes hidden from optimizer,
enables “soft delete” and “staged
rollout” of indexes
Solving
Contention
NOWAIT and SKIP LOCKED
options of SELECT FOR
UPDATE provides better handling
of hot row contention
MySQL 8.0 : Developers to Accelerate Applications
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 10
Expanded
Hints
Hints to control table orders for
join and indexes to be merged
without reorganize queries
Descending
Indexes
Faster by avoiding sorting data in
composite index using different
sorting orders
Set Session
Variables
Set a session variable for the
duration of a single statement with
new hint option SET_VAR
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Resource
Group
To obtain better efficiency and/or
performance by the mapping
between threads and CPUs
Cloud Friendly
Configurations
Persist server variables with SET
PERSIST and review source of
changes in Information Schema
InnoDB
Dedicated Server
Auto scales InnoDB configurations
great for virtual machines & Cloud
deployments
MySQL 8.0 : Making Application more Scalable
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 11
Transaction
Scheduling
“Contention-Aware Transaction
Scheduling” is default scheduling
algorithm in InnoDB to boost
performance
Better Cost
Estimation
Cost model optimized for newer
storage technology and optimizer
with memory buffer aware cost
estimation
Column
Histograms
Provides the optimizer with
information about column value
distribution
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Security Enhancements
Introducing SQL Role and
Dynamic Privileges, expanded
transparent data encryption
Data Dictionary
Increased reliability and
consistency with transactional
meta data repository
MySQL InnoDB Cluster
Built-in automatic distributed
recovery, conflict detection
and group membership
MySQL 8.0 : Making Application more Stable & Secure
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 12
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
MySQL 8.0 : Enhanced Security
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 13
SQL Role Implementation
Easier to manage user and applications
rights and SQL standard compliant
Atomic Access Control List
New InnoDB based data dictionary enables
ACL statements atomic and reliable
Dynamic Privileges
Provides finer grained administrative level
access controls for less use of root user
TDE for Logs
AES 256 encryption of REDO, UNDO and Binary
Log in addition to tablespace files
Enhanced Password Options
Establish password-reuse policy with Password
History, and faster with caching
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 14
State ofdolphin short

More Related Content

State ofdolphin short

  • 1. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | State of the Dolphin Ryusuke Kajiyama / 梶山隆輔 MySQL Global Business Unit MySQL Sales Consulting Senior Manager, Asia Pacific & Japan Highlights of MySQL 8.0 technology updates
  • 2. Copyright © 2017, 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 © 2017, Oracle and/or its affiliates. All rights reserved. | #1 MySQL is the #1 database for the web, used by 10 of the top 10 websites 3
  • 4. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |Copyright © 2017, Oracle and/or its affiliates. All rights reserved. Enabling Customer Innovation 4 - 3x Better Performance - Replication Enhancements - JSON Support - Improved Security MySQL 5.7 MySQL InnoDB Cluster - MySQL Group Replication - MySQL Router - MySQL Shell MySQL 8.0 (RC) - Data Dictionary - Roles - Unicode - CTEs - Window Functions - Security - Replication
  • 5. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Scalable &Stable Better handling of high contention, improved security, and minimizing downtime Data Driven Optimizing services with real time data analysis Developer First Hybrid data model and data access APIs for flexibility for developers Mobile Friendly Ready for location based services. Handling Emoji and Unicode characters MySQL 8.0 : Enables Modern Web Applications Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 5 24x7at Scale
  • 6. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | MySQL 8.0 : Mobile Application Friendly Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 6 Enhanced GIS Support • Better integration for location based services • Switched to Boost.Geometry library in MySQL 5.7 • Supporting Geography and Spatial Reference Systems (SRS) in MySQL 8.0 Unicode as Default • utf8mb4 supporting Emoji is default Character Set of MySQL 8.0 • Up to 16x Faster Performance • Based on Unicode 9.0 • New collations based on UCA with Accent/Case sensitivity 🐬🍺 🍣😁
  • 7. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | MySQL 8.0 : Flexibility for Developers Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Hybrid APISQL FunctionData Type MySQL X DevAPIJSON FunctionsJSON Datatype 7 Hybrid CRUD API of both SQL and NoSQL provides more flexibility for development Various SQL functions to search and modify JSON. Analysing JSON with SQL by converting into table with JSON_TABLE() Seamlessly managing “unstructured” data in RDBMS tables with efficient update performance { } ();
  • 8. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | MySQL 8.0 : Key Features for Data Driven Application Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Window FunctionCommon Table Expressions (CTEs) 8 • Alternative to derived table of subquery, so called “WITH clause” • For improvement of readability and performance • Frequently requested feature for data analysis like ranking of data • Calculation across a set of rows that are related to the current row WITH tickets_filtered AS ( SELECT tickets.*, seats.doc FROM tickets INNER JOIN seats ON tickets.seat_id = seats.id WHERE tickets.event_id = 3 ) SELECT * FROM tickets_filtered WHERE doc->"$.section" = 201G SELECT name, dept_id, salary, RANK() OVER w AS `rank` FROM employee WINDOW w AS (PARTITION BY dept_id ORDER BY salary DESC);
  • 9. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Performance Schema More instrumentation enabled by default and better response to view with indexes added Invisible Indexes Indexes hidden from optimizer, enables “soft delete” and “staged rollout” of indexes Solving Contention NOWAIT and SKIP LOCKED options of SELECT FOR UPDATE provides better handling of hot row contention MySQL 8.0 : Developers to Accelerate Applications Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 10 Expanded Hints Hints to control table orders for join and indexes to be merged without reorganize queries Descending Indexes Faster by avoiding sorting data in composite index using different sorting orders Set Session Variables Set a session variable for the duration of a single statement with new hint option SET_VAR
  • 10. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Resource Group To obtain better efficiency and/or performance by the mapping between threads and CPUs Cloud Friendly Configurations Persist server variables with SET PERSIST and review source of changes in Information Schema InnoDB Dedicated Server Auto scales InnoDB configurations great for virtual machines & Cloud deployments MySQL 8.0 : Making Application more Scalable Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 11 Transaction Scheduling “Contention-Aware Transaction Scheduling” is default scheduling algorithm in InnoDB to boost performance Better Cost Estimation Cost model optimized for newer storage technology and optimizer with memory buffer aware cost estimation Column Histograms Provides the optimizer with information about column value distribution
  • 11. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Security Enhancements Introducing SQL Role and Dynamic Privileges, expanded transparent data encryption Data Dictionary Increased reliability and consistency with transactional meta data repository MySQL InnoDB Cluster Built-in automatic distributed recovery, conflict detection and group membership MySQL 8.0 : Making Application more Stable & Secure Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 12
  • 12. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | MySQL 8.0 : Enhanced Security Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 13 SQL Role Implementation Easier to manage user and applications rights and SQL standard compliant Atomic Access Control List New InnoDB based data dictionary enables ACL statements atomic and reliable Dynamic Privileges Provides finer grained administrative level access controls for less use of root user TDE for Logs AES 256 encryption of REDO, UNDO and Binary Log in addition to tablespace files Enhanced Password Options Establish password-reuse policy with Password History, and faster with caching
  • 13. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 14

Editor's Notes

  1. This is a Title Slide with Picture and Logo slide ideal for including a picture and partner or product logo with a brief title, subtitle and presenter information. To customize this slide with your own picture: Right-click the slide area and choose Format Background from the pop-up menu. From the Fill menu, click Picture and texture fill. Under Insert from: click File. Locate your new picture and click Insert. To Replace the LOGO on this sample slide: Right-click the sample LOGO and choose Change Picture. Navigate to the location where the new logo is stored, select desired logo file and click on the Open button to replace the sample logo. To copy the Customized Background from Another Presentation on PC Click New Slide from the Home tab's Slides group and select Reuse Slides. Click Browse in the Reuse Slides panel and select Browse Files. Double-click the PowerPoint presentation that contains the background you wish to copy. Check Keep Source Formatting and click the slide that contains the background you want. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Right-click any selected slide, point to Layout, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates. To copy the Customized Background from Another Presentation on Mac Click New Slide from the Home tab's Slides group and select Insert Slides from Other Presentation… Navigate to the PowerPoint presentation file that contains the background you wish to copy. Double-click or press Insert. This prompts the Slide Finder dialogue box. Make sure Keep design of original slides is unchecked and click the slide(s) that contains the background you want. Hold Shift key to select multiple slides. Click the left-hand slide preview to which you wish to apply the new master layout. Apply New Layout (Important): Click Layout from the Home tab's Slides group, and click the slide containing the desired layout from the layout gallery. Delete any unwanted slides or duplicates.
  2. This is our Safe Harbor Statement. I will give you a moment to review this slide.
  3. First, I’d like to get started and share some of the momentum we have been seeing behind MySQL. MySQL is and has been the #1 database for the web for many years. In fact, MySQL is used all 10 of the most trafficked Web sites in the world including Facebook which has over 2 billion users. MySQL is also used by thousands of ISVs and SaaS customers including Cisco, Zendesk, AppDynamics and Dropbox. So, if you are using mobile phone to check your social media feed or watch an online video or using an enterprise cloud application, chances are very high they are touching data stored in MySQL multiple times a day.
  4. MySQL engineers at Oracle have been hard at work developing MySQL to make sure it can scale to meet the needs of customers like facebook. - MySQL 5.7 Performance improved 3x over MySQL 5.7 - Earlier this year the MySQL team released MySQL InnoDB Cluster which delivers a native, tightly integrated, high availability solution for MySQL without having to rely on external tools. - Just last week we announced the Release Candidate of MySQL 8.0
  5. “Hybrid” for both data model and API
  6. Red boxes are features useful for app developers. Blue boxes are enhancements of MySQL internal. App developer almost automatically get benefit of performance improvement.
  7. Red boxes are features useful for app developers. Blue boxes are enhancements of MySQL internal. App developer almost automatically get benefit of performance improvement.
  8. Red boxes are features useful for app developers. Blue boxes are enhancements of MySQL internal. App developer almost automatically get benefit of performance improvement.