SlideShare a Scribd company logo
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
The State of the Dolphin
What’s New in MySQL 5.7 Technical Overview
Ryusuke Kajiyama
MySQL Sales Consulting Senior Manager, JAPAC
MySQL Global Business Unit
Copyright © 2015, 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 © 2015, Oracle and/or its affiliates. All rights reserved. |
Designed for Web, Mobile & Cloud Applications
3
Hybrid Database
Best of both worlds: RDBMS benefits
+ flexible management of documents
Save Time, Efforts & Costs
Numerous new features and
enhancements improve manageability
Scalable Foundation for Your Business
MySQL 5.7 is 3x faster than MySQL 5.6. Provides a reliable
& scalable foundation for your applications
Enhanced Security
Secure by default. Advanced security features
for increased protection & compliance
MySQL
5.7
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7 is GA!
4
Enhanced InnoDB: faster online & bulk
load operations
Replication Improvements (incl. multi-
source, multi-threaded slaves...)
New Optimizer Cost Model: greater user
control & better query performance
Performance Schema Improvements
MySQL SYS Schema
Performance & Scalability Manageability
3 X Faster than MySQL 5.6
Improved Security: safer initialization,
setup & management
Native JSON Support
And many more new features and enhancements. Learn more at: dev.mysql.com
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7 Sysbench Benchmark: SQL Point Selects
3x Faster than MySQL 5.6
1,600,000 QPS
0
200,000
400,000
600,000
800,000
1,000,000
1,200,000
1,400,000
1,600,000
1,800,000
8 16 32 64 128 256 512 1,024
QueriesperSecond
Connections
MySQL 5.7: Sysbench OLTP Read Only (SQL Point Selects)
MySQL 5.7
MySQL 5.6
MySQL 5.5
Intel(R) Xeon(R) CPU E7-8890 v3
4 sockets x 18 cores-HT (144 CPU threads)
2.5 Ghz, 512GB RAM
Linux kernel 3.16
5
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Optimizer and Parser refactoring
– Readability, maintainability and stability
– Separate parsing, optimizing, execution stages
– Easier feature additions, with lessened risk
• New hint framework
– Easier to manage
– With support for additional new hints
• Improved JSON EXPLAIN
• EXPLAIN for running thread
• New Cost based Optimizer
– Easier to extend
– Configurable and tunable
• mysql.server_cost and mysql.engine_cost tables
• API for where data resides: on disk or in cache
• InnoDB for internal temp tables
• Better ONLY_FULL_GROUP_BY mode
• Many specific new optimizations
• Generated Columns & Functional Indexes
MySQL 5.7: Optimizer Improvements
6
Queries execute faster, while using less CPU and disk space!
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7: Optimizer - Cost Info in JSON EXPLAIN
• Expanded JSON EXPLAIN
– Now includes all available cost info
– Used for Visual Explain In MySQL Workbench
{
"query_block": {
"select_id": 1,
"cost_info": {
"query_cost": "200.40"
},
"table": {
"table_name": "nicer_but_slower_film_list",
"access_type": "ALL",
"rows_examined_per_scan": 992,
"rows_produced_per_join": 992,
"filtered": 100,
"cost_info": {
"read_cost": "2.00",
"eval_cost": "198.40",
"prefix_cost": "200.40",
"data_read_per_join": "852K"
},
"used_columns": [
"FID",
"title",
"description",
"category",
"price",
"length",
"rating",
"actors"
],
...
7
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Relational Tables
• Table, Column, and Rows
JSON Documents
• A collection of attribute–value pairs
8
Pre-defined data model vs Semi-structured data model
{
"name":"Classic Pizza", "price":400,
"toppings":[
"Pepperoni", "Parmesan"
]
}
{
"name":"Margherita Pizza", "price":500,
"toppings":[
"Basil", "Mozzarella"
],
"options":[
{
"name":"Olive", "price":100
}
]
}
mysql> SELECT * FROM pizza;
+------+------------------+-------+
| code | name | price |
+------+------------------+-------+
| CLA | Classic Pizza | 400 |
| MAR | Margherita Pizza | 500 |
+------+------------------+-------+
mysql> SELECT * FROM toppings;
+--------+------------+
| p_code | name |
+--------+------------+
| CLA | Pepperoni |
| CLA | Parmesan |
| MAR | Basil |
| MAR | Mozzarella |
+--------+------------+
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
mysql> CREATE TABLE employees (data JSON);
mysql> INSERT INTO employees VALUES
('{"id": 1, "name": "Jane"}'),
('{"id": 2, "name": "Joe"}');
mysql> SELECT * FROM employees;
+-------------------------------------+
| data |
+-------------------------------------+
| {"id": 1, "name": "Jane"} |
| {"id": 2, "name": "Joe"} |
+-------------------------------------+
• Validation on INSERT
• No reparsing on SELECT
• Optimized for read
• Dictionary of sorted keys
• Can compare JSON/SQL
• Can convert JSON/SQL
• Supports all native JSON
datatypes
• Also supports date, time,
timestamp etc.
The New JSON Datatype
9
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7: Functional Indexes with JSON
ALTER TABLE features ADD feature_type VARCHAR(30) AS (JSON_UNQUOTE(feature->'$.type'));
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0
ALTER TABLE features ADD INDEX (feature_type);
Query OK, 0 rows affected (0.73 sec)
Records: 0 Duplicates: 0 Warnings: 0
SELECT DISTINCT feature_type FROM features;
+--------------+
| feature_type |
+--------------+
| "Feature" |
+--------------+
1 row in set (0.06 sec)
From table scan on 206K documents to index scan on 206K materialized values
Meta data change only (FAST).
Does not need to touch table..
Creates index only, does not
touch row data.
Down from 1.25 sec to 0.06 sec
10
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7, Connectors, Drivers, and Protocols
11
MySQL
Plugins
X Protocol Plugin Memcached Plugin
Core
MySQL Connectors and Drivers
X ProtocolStd Protocol
Memcached
driver
X Protocol
33060
Std Protocol
3306
SQL API CRUD and SQL APIs
Memcache
Protocol
X and Std
Protocols
MySQL
Shell
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
The X DevAPI
• Abstraction over SQL
• Focused on 4 basic CRUD operations (Create, Read, Update, Delete)
• Fluent, Native Language API
• No knowledge of SQL needed
• X Protocol
– CRUD requests encoded at protocol level
– Request details "visible" (vs "opaque" SQL strings)
Oracle Confidential – Restricted 12
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Find Documents
Oracle Confidential – Restricted 13
products.find("color = 'yellow'").sort(["name"]).execute();
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Save memory/storage and simplify
application
– Joins between Documents
• Normalize data where it makes sense
– Foreign Keys between Documents
– Update multiple Documents in a single
atomic transaction
• Leverage all of your data
– Read/write Document and relational
data in a single query/transaction
• 20 years of product maturity
14
So Just Another Document Store?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7: SYS Schema
Helper objects for DBAs, Developers and Operations staff
• Helps simplify DBA / Ops tasks
- Monitor server health, user, host statistics
- Spot, diagnose, and tune performance issues
• Easy to understand views with insights into
- IO hot spots, Locking, Costly SQL statements
- Schema, table and index statistics
• SYS is similar to
- Oracle V$ catalog views
- Microsoft SQL DMVs (Dynamic Mgmnt Views)
15
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Replaced custom code with Boost.Geometry
– For spatial calculations
– For spatial analysis
– Enabling full OGC compliance
– We’re also Boost.Geometry contributors!
• InnoDB R-tree based spatial indexes
– Full ACID, MVCC, & transactional support
– Index records contain minimum bounding box
• GeoHash
• GeoJSON
• Helper functions such as ST_Distance_Sphere() and ST_MakeEnvelope()
MySQL 5.7: GIS Improvements
16
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Native Partitioning
– Eliminates previous limitations
– Eliminates resource usage problems
– Transportable tablespace support
• Native Full-Text Search
– Including full CJK support!
• Native Spatial Indexes
• Transparent page compression
• Support for 32K and 64K pages
– Use with transparent page compression for
very high compression ratios
• General TABLESPACE support
– Store multiple tables in user defined shared
tablespaces
• Support for MySQL Group Replication
– High priority transactions
• Improved support for cache preloading
– Load your hottest data loaded at startup
• Configurable fill-factor
– Allows for improvements in storage footprint
• Improved bulk-data load performance
• Resize the InnoDB Buffer Pool online
MySQL 5.7: InnoDB Improvements
17
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• AES 256 Encryption now the default
• Password rotation policies
– Can be set globally, and at the user level
• Deployment: enable secure unattended
install by default
– Random password set on install
– Remove anonymous accounts
– Deployment without test account, schema,
demo files
• Easier instance initialization and setup:
mysqld –initialize
• New detection and support for systemd
• SSL
– Enabled by default
– Auto-detection of existing keys and certs
– Auto generation of keys and certs when needed
– New helper utility: mysql_ssl_rsa_setup
– New --require_secure_transport option to
prevent insecure communications
– Added SSL support to binary log clients
• Extended Proxy User Support
– Added Built-in Authentication Plugins support
for Proxy Users
– Allows multiple users to share a single set of
managed privileges
MySQL 5.7: Security Improvements
18
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7: Transparent Data Encryption
• Only MySQL authenticated users can get access to the data
• Protects data from OS users
19
MySQL
Database
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Enabling and Disabling InnoDB Tablespace Encryption
• ENCRYPTION option in a CREATE TABLE statement
• and ALTER TABLE statement
• To disable encryption, set ENCRYPTION='N' using ALTER TABLE
– This operations rebuild the table using ALGORITHM=COPY.
ALGORITM=INPLACE is not supported
20
mysql> CREATE TABLE t1 (c1 INT) ENCRYPTION='Y';
mysql> ALTER TABLE t1 ENCRYPTION='Y';
mysql> ALTER TABLE t1 ENCRYPTION='N';
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• GTID enhancements
– On-line, phased deployment of GTIDs
– Binary logging on slave now optional
• Enhanced Semi-synchronous replication
– Write guaranteed to be received by slave
before being observed by clients of the master
– Option to wait on Acks from multiple slaves
• Multi-Source Replication
– Consolidate updates from multiple Masters
into one Slave
• Dynamic slave filters
• 8-10x Faster slave throughput
– Often removes slave as a bottleneck; keep pace
with master with 8+ slave threads
– Option to preserve Commit order
– Automatic slave transaction retries
MySQL 5.7: Replication Improvements
21
0%
50%
100%
150%
200%
250%
1 8 24 48
Slave Threads
Slave throughput vs. 96 Thread Master
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Multi-Source Replication
– Consolidate updates from multiple
Masters into one Slave
• Consolidated view of all shards
• More flexible topologies
• Centralized point for backups
– Compatible with Semi-Sync
Replication & enhanced MTS
• Performance Schema tables for
monitoring slave
• Online Operations: Dynamic
Replication Filters, switch master
MySQL 5.7: Replication Improvements
Slave
22
Binlog
Master 1
Binlog
Master 2
…
…
Binlog
Master N
IO 1
Relay 1
Coordinator
W
1
W
2
…
W
X
IO 2
Relay 2
Coordinator
W
1
W
2
…
W
X
…
…
Coordinator
W
1
W
2
…
W
X
IO N
Relay N
Coordinator
W
1
W
2
…
W
X
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL Workbench 6.3
• Fabric
– Add node, browse, view, connect
• Performance Dashboard
– Performance Schema Reports & Graphs
• Visual Explain
• GIS Viewer
• Migration
– New: Microsoft Access
– Microsoft SQL Server, Sybase,
PostgreSQL, SQLite
23
• New Easy to Use Wizards for
– Fast Data Migration
– Table<->File Data Import/Export (like Excel)
– SSL Certificate Creation
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL Repos
• Distributions
– Oracle, Red Hat, CentOS
– Fedora
– Ubuntu, Debian
– SUSE
• Official MySQL Docker Image from Oracle
• Coming Soon
– Preconfigured Containers
– Improved support for popular DevOps
deployment tools
https://dev.mysql.com/downloads/repo
MySQL on GitHub
• Git for MySQL Engineering
– Fast, flexible and great for a distributed team
– Great tooling
– Large and vibrant community
• GitHub for MySQL Community
– Easy and fast code availability to the community
and to downstream projects
– Pull Requests
https://github.com/mysql
24
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Why MySQL Enterprise Edition?
Insure Your Deployments
Get the Best Results
Delight Customers
25
In Addition to all the MySQL Features you Love
Improve
Performance
& Scalability
Enhance Agility &
Productivity
Reduce TCO
Mitigate Risks
Get
Immediate
Help if/when
Needed
Increase
Customer
Satisfaction
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Security and Data Protection
MySQL Enterprise Backup
MySQL Enterprise Authentication
MySQL Enterprise Encryption
MySQL Enterprise Firewall
MySQL Enterprise Audit
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
MySQL 5.7 is GA!
27
Enhanced InnoDB: faster online & bulk
load operations
Replication Improvements (incl. multi-
source, multi-threaded slaves...)
New Optimizer Cost Model: greater user
control & better query performance
Performance Schema Improvements
MySQL SYS Schema
Performance & Scalability Manageability
3 X Faster than MySQL 5.6
Improved Security: safer initialization,
setup & management
Native JSON Support
And many more new features and enhancements. Learn more at: dev.mysql.com
제3회난공불락 오픈소스 인프라세미나 - MySQL

More Related Content

What's hot (20)

PDF
Best Practices of HA and Replication of PostgreSQL in Virtualized Environments
Jignesh Shah
 
PDF
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red_Hat_Storage
 
PDF
5 Steps to PostgreSQL Performance
Command Prompt., Inc
 
PDF
PostgreSQL Disaster Recovery with Barman
Gabriele Bartolini
 
PDF
Best Practices with PostgreSQL on Solaris
Jignesh Shah
 
PPTX
Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community
 
PDF
Spilo, отказоустойчивый PostgreSQL кластер / Oleksii Kliukin (Zalando SE)
Ontico
 
PPT
Building tungsten-clusters-with-postgre sql-hot-standby-and-streaming-replica...
Command Prompt., Inc
 
PDF
PGConf.ASIA 2019 Bali - Building PostgreSQL as a Service with Kubernetes - Ta...
Equnix Business Solutions
 
PDF
Ceph Day Shanghai - CeTune - Benchmarking and tuning your Ceph cluster
Ceph Community
 
PPTX
ZFS for Databases
ahl0003
 
PDF
Introduction to PostgreSQL for System Administrators
Jignesh Shah
 
PPT
Planning for-high-performance-web-application
Nguyễn Duy Nhân
 
PDF
Postgres in Amazon RDS
Denish Patel
 
PPT
Planning For High Performance Web Application
Yue Tian
 
PDF
[오픈소스컨설팅] EFK Stack 소개와 설치 방법
Open Source Consulting
 
PDF
Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...
Ceph Community
 
PDF
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Jignesh Shah
 
PDF
Build an High-Performance and High-Durable Block Storage Service Based on Ceph
Rongze Zhu
 
ODP
Nagios Conference 2012 - Dan Wittenberg - Case Study: Scaling Nagios Core at ...
Nagios
 
Best Practices of HA and Replication of PostgreSQL in Virtualized Environments
Jignesh Shah
 
Red Hat Enterprise Linux OpenStack Platform on Inktank Ceph Enterprise
Red_Hat_Storage
 
5 Steps to PostgreSQL Performance
Command Prompt., Inc
 
PostgreSQL Disaster Recovery with Barman
Gabriele Bartolini
 
Best Practices with PostgreSQL on Solaris
Jignesh Shah
 
Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community
 
Spilo, отказоустойчивый PostgreSQL кластер / Oleksii Kliukin (Zalando SE)
Ontico
 
Building tungsten-clusters-with-postgre sql-hot-standby-and-streaming-replica...
Command Prompt., Inc
 
PGConf.ASIA 2019 Bali - Building PostgreSQL as a Service with Kubernetes - Ta...
Equnix Business Solutions
 
Ceph Day Shanghai - CeTune - Benchmarking and tuning your Ceph cluster
Ceph Community
 
ZFS for Databases
ahl0003
 
Introduction to PostgreSQL for System Administrators
Jignesh Shah
 
Planning for-high-performance-web-application
Nguyễn Duy Nhân
 
Postgres in Amazon RDS
Denish Patel
 
Planning For High Performance Web Application
Yue Tian
 
[오픈소스컨설팅] EFK Stack 소개와 설치 방법
Open Source Consulting
 
Ceph Day Melbourne - Scale and performance: Servicing the Fabric and the Work...
Ceph Community
 
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Jignesh Shah
 
Build an High-Performance and High-Durable Block Storage Service Based on Ceph
Rongze Zhu
 
Nagios Conference 2012 - Dan Wittenberg - Case Study: Scaling Nagios Core at ...
Nagios
 

Similar to 제3회난공불락 오픈소스 인프라세미나 - MySQL (20)

PPTX
MySQL Tech Tour 2015 - 5.7 Whats new
Mark Swarbrick
 
PDF
Upgrade to MySQL 5.7 and latest news planned for MySQL 8
Ted Wennmark
 
PDF
What's New in MySQL 5.7
Olivier DASINI
 
PDF
MySQL 5.7: What's New, Nov. 2015
Mario Beck
 
PPTX
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015
Geir Høydalsvik
 
PDF
MySQL 5.7 - What's new, How to upgrade and Document Store
Abel Flórez
 
PDF
MySQL :What's New #GIDS16
Sanjay Manwani
 
ODP
MySQL 5.7 - What's new and How to upgrade
Abel Flórez
 
PDF
My sql5.7 whatsnew_presentedatgids2015
Sanjay Manwani
 
PDF
MySQL Manchester TT - 5.7 Whats new
Mark Swarbrick
 
PDF
MySQL 5.7 what's new
Ricky Setyawan
 
PDF
What's new in MySQL 5.7, Oracle Virtual Technology Summit, 2016
Geir Høydalsvik
 
PDF
Whatsnew in-my sql-primary
Kaizenlogcom
 
PDF
Netherlands Tech Tour - 07 MySQL Whats upcoming in 5.7
Mark Swarbrick
 
PPT
State of the Dolphin, at db tech showcase Osaka 2014
Ryusuke Kajiyama
 
PPTX
The latest with MySql on OpenStack Trove
Tesora
 
PDF
TWJUG August, What's new in MySQL 5.7 RC
Ryusuke Kajiyama
 
PDF
[B34] MySQL最新ロードマップ – MySQL 5.7とその先へ by Ryusuke Kajiyama
Insight Technology, Inc.
 
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
 
MySQL Tech Tour 2015 - 5.7 Whats new
Mark Swarbrick
 
Upgrade to MySQL 5.7 and latest news planned for MySQL 8
Ted Wennmark
 
What's New in MySQL 5.7
Olivier DASINI
 
MySQL 5.7: What's New, Nov. 2015
Mario Beck
 
2015: Whats New in MySQL 5.7, At Oracle Open World, November 3rd, 2015
Geir Høydalsvik
 
MySQL 5.7 - What's new, How to upgrade and Document Store
Abel Flórez
 
MySQL :What's New #GIDS16
Sanjay Manwani
 
MySQL 5.7 - What's new and How to upgrade
Abel Flórez
 
My sql5.7 whatsnew_presentedatgids2015
Sanjay Manwani
 
MySQL Manchester TT - 5.7 Whats new
Mark Swarbrick
 
MySQL 5.7 what's new
Ricky Setyawan
 
What's new in MySQL 5.7, Oracle Virtual Technology Summit, 2016
Geir Høydalsvik
 
Whatsnew in-my sql-primary
Kaizenlogcom
 
Netherlands Tech Tour - 07 MySQL Whats upcoming in 5.7
Mark Swarbrick
 
State of the Dolphin, at db tech showcase Osaka 2014
Ryusuke Kajiyama
 
The latest with MySql on OpenStack Trove
Tesora
 
TWJUG August, What's new in MySQL 5.7 RC
Ryusuke Kajiyama
 
[B34] MySQL最新ロードマップ – MySQL 5.7とその先へ by Ryusuke Kajiyama
Insight Technology, Inc.
 
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
 
Ad

More from Tommy Lee (20)

PDF
새하늘과 새땅-리차드 미들턴
Tommy Lee
 
PDF
하나님의 아픔의신학 20180131
Tommy Lee
 
PDF
그리스도인의미덕 통합
Tommy Lee
 
PDF
그리스도인의미덕 1장-4장
Tommy Lee
 
PDF
예수왕의복음
Tommy Lee
 
PDF
Grub2 and troubleshooting_ol7_boot_problems
Tommy Lee
 
PDF
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나- IBM Bluemix
Tommy Lee
 
PDF
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Ranchers
Tommy Lee
 
PDF
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-AI
Tommy Lee
 
PDF
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible
Tommy Lee
 
PDF
제3회난공불락 오픈소스 인프라세미나 - lustre
Tommy Lee
 
PDF
제3회난공불락 오픈소스 인프라세미나 - Nagios
Tommy Lee
 
PDF
제3회난공불락 오픈소스 인프라세미나 - JuJu
Tommy Lee
 
PDF
제3회난공불락 오픈소스 인프라세미나 - Pacemaker
Tommy Lee
 
PDF
새하늘과새땅 북톡-3부-우주적회복에대한신약의비전
Tommy Lee
 
PDF
새하늘과새땅 북톡-2부-구약에서의총체적구원
Tommy Lee
 
PDF
새하늘과새땅 Part1
Tommy Lee
 
PDF
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
Tommy Lee
 
PDF
제2회 난공불락 오픈소스 인프라 세미나 zinst 관리툴 소개
Tommy Lee
 
PDF
제2회난공불락 오픈소스 세미나 커널튜닝
Tommy Lee
 
새하늘과 새땅-리차드 미들턴
Tommy Lee
 
하나님의 아픔의신학 20180131
Tommy Lee
 
그리스도인의미덕 통합
Tommy Lee
 
그리스도인의미덕 1장-4장
Tommy Lee
 
예수왕의복음
Tommy Lee
 
Grub2 and troubleshooting_ol7_boot_problems
Tommy Lee
 
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나- IBM Bluemix
Tommy Lee
 
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Ranchers
Tommy Lee
 
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-AI
Tommy Lee
 
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible
Tommy Lee
 
제3회난공불락 오픈소스 인프라세미나 - lustre
Tommy Lee
 
제3회난공불락 오픈소스 인프라세미나 - Nagios
Tommy Lee
 
제3회난공불락 오픈소스 인프라세미나 - JuJu
Tommy Lee
 
제3회난공불락 오픈소스 인프라세미나 - Pacemaker
Tommy Lee
 
새하늘과새땅 북톡-3부-우주적회복에대한신약의비전
Tommy Lee
 
새하늘과새땅 북톡-2부-구약에서의총체적구원
Tommy Lee
 
새하늘과새땅 Part1
Tommy Lee
 
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
Tommy Lee
 
제2회 난공불락 오픈소스 인프라 세미나 zinst 관리툴 소개
Tommy Lee
 
제2회난공불락 오픈소스 세미나 커널튜닝
Tommy Lee
 
Ad

Recently uploaded (20)

PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
Predicting the unpredictable: re-engineering recommendation algorithms for fr...
Speck&Tech
 
PDF
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
PDF
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
PPTX
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PPT
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Predicting the unpredictable: re-engineering recommendation algorithms for fr...
Speck&Tech
 
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 

제3회난공불락 오픈소스 인프라세미나 - MySQL

  • 1. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | The State of the Dolphin What’s New in MySQL 5.7 Technical Overview Ryusuke Kajiyama MySQL Sales Consulting Senior Manager, JAPAC MySQL Global Business Unit
  • 2. Copyright © 2015, 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 © 2015, Oracle and/or its affiliates. All rights reserved. | Designed for Web, Mobile & Cloud Applications 3 Hybrid Database Best of both worlds: RDBMS benefits + flexible management of documents Save Time, Efforts & Costs Numerous new features and enhancements improve manageability Scalable Foundation for Your Business MySQL 5.7 is 3x faster than MySQL 5.6. Provides a reliable & scalable foundation for your applications Enhanced Security Secure by default. Advanced security features for increased protection & compliance MySQL 5.7
  • 4. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7 is GA! 4 Enhanced InnoDB: faster online & bulk load operations Replication Improvements (incl. multi- source, multi-threaded slaves...) New Optimizer Cost Model: greater user control & better query performance Performance Schema Improvements MySQL SYS Schema Performance & Scalability Manageability 3 X Faster than MySQL 5.6 Improved Security: safer initialization, setup & management Native JSON Support And many more new features and enhancements. Learn more at: dev.mysql.com
  • 5. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7 Sysbench Benchmark: SQL Point Selects 3x Faster than MySQL 5.6 1,600,000 QPS 0 200,000 400,000 600,000 800,000 1,000,000 1,200,000 1,400,000 1,600,000 1,800,000 8 16 32 64 128 256 512 1,024 QueriesperSecond Connections MySQL 5.7: Sysbench OLTP Read Only (SQL Point Selects) MySQL 5.7 MySQL 5.6 MySQL 5.5 Intel(R) Xeon(R) CPU E7-8890 v3 4 sockets x 18 cores-HT (144 CPU threads) 2.5 Ghz, 512GB RAM Linux kernel 3.16 5
  • 6. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • Optimizer and Parser refactoring – Readability, maintainability and stability – Separate parsing, optimizing, execution stages – Easier feature additions, with lessened risk • New hint framework – Easier to manage – With support for additional new hints • Improved JSON EXPLAIN • EXPLAIN for running thread • New Cost based Optimizer – Easier to extend – Configurable and tunable • mysql.server_cost and mysql.engine_cost tables • API for where data resides: on disk or in cache • InnoDB for internal temp tables • Better ONLY_FULL_GROUP_BY mode • Many specific new optimizations • Generated Columns & Functional Indexes MySQL 5.7: Optimizer Improvements 6 Queries execute faster, while using less CPU and disk space!
  • 7. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7: Optimizer - Cost Info in JSON EXPLAIN • Expanded JSON EXPLAIN – Now includes all available cost info – Used for Visual Explain In MySQL Workbench { "query_block": { "select_id": 1, "cost_info": { "query_cost": "200.40" }, "table": { "table_name": "nicer_but_slower_film_list", "access_type": "ALL", "rows_examined_per_scan": 992, "rows_produced_per_join": 992, "filtered": 100, "cost_info": { "read_cost": "2.00", "eval_cost": "198.40", "prefix_cost": "200.40", "data_read_per_join": "852K" }, "used_columns": [ "FID", "title", "description", "category", "price", "length", "rating", "actors" ], ... 7
  • 8. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Relational Tables • Table, Column, and Rows JSON Documents • A collection of attribute–value pairs 8 Pre-defined data model vs Semi-structured data model { "name":"Classic Pizza", "price":400, "toppings":[ "Pepperoni", "Parmesan" ] } { "name":"Margherita Pizza", "price":500, "toppings":[ "Basil", "Mozzarella" ], "options":[ { "name":"Olive", "price":100 } ] } mysql> SELECT * FROM pizza; +------+------------------+-------+ | code | name | price | +------+------------------+-------+ | CLA | Classic Pizza | 400 | | MAR | Margherita Pizza | 500 | +------+------------------+-------+ mysql> SELECT * FROM toppings; +--------+------------+ | p_code | name | +--------+------------+ | CLA | Pepperoni | | CLA | Parmesan | | MAR | Basil | | MAR | Mozzarella | +--------+------------+
  • 9. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | mysql> CREATE TABLE employees (data JSON); mysql> INSERT INTO employees VALUES ('{"id": 1, "name": "Jane"}'), ('{"id": 2, "name": "Joe"}'); mysql> SELECT * FROM employees; +-------------------------------------+ | data | +-------------------------------------+ | {"id": 1, "name": "Jane"} | | {"id": 2, "name": "Joe"} | +-------------------------------------+ • Validation on INSERT • No reparsing on SELECT • Optimized for read • Dictionary of sorted keys • Can compare JSON/SQL • Can convert JSON/SQL • Supports all native JSON datatypes • Also supports date, time, timestamp etc. The New JSON Datatype 9
  • 10. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7: Functional Indexes with JSON ALTER TABLE features ADD feature_type VARCHAR(30) AS (JSON_UNQUOTE(feature->'$.type')); Query OK, 0 rows affected (0.01 sec) Records: 0 Duplicates: 0 Warnings: 0 ALTER TABLE features ADD INDEX (feature_type); Query OK, 0 rows affected (0.73 sec) Records: 0 Duplicates: 0 Warnings: 0 SELECT DISTINCT feature_type FROM features; +--------------+ | feature_type | +--------------+ | "Feature" | +--------------+ 1 row in set (0.06 sec) From table scan on 206K documents to index scan on 206K materialized values Meta data change only (FAST). Does not need to touch table.. Creates index only, does not touch row data. Down from 1.25 sec to 0.06 sec 10
  • 11. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7, Connectors, Drivers, and Protocols 11 MySQL Plugins X Protocol Plugin Memcached Plugin Core MySQL Connectors and Drivers X ProtocolStd Protocol Memcached driver X Protocol 33060 Std Protocol 3306 SQL API CRUD and SQL APIs Memcache Protocol X and Std Protocols MySQL Shell
  • 12. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | The X DevAPI • Abstraction over SQL • Focused on 4 basic CRUD operations (Create, Read, Update, Delete) • Fluent, Native Language API • No knowledge of SQL needed • X Protocol – CRUD requests encoded at protocol level – Request details "visible" (vs "opaque" SQL strings) Oracle Confidential – Restricted 12
  • 13. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Find Documents Oracle Confidential – Restricted 13 products.find("color = 'yellow'").sort(["name"]).execute();
  • 14. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • Save memory/storage and simplify application – Joins between Documents • Normalize data where it makes sense – Foreign Keys between Documents – Update multiple Documents in a single atomic transaction • Leverage all of your data – Read/write Document and relational data in a single query/transaction • 20 years of product maturity 14 So Just Another Document Store?
  • 15. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7: SYS Schema Helper objects for DBAs, Developers and Operations staff • Helps simplify DBA / Ops tasks - Monitor server health, user, host statistics - Spot, diagnose, and tune performance issues • Easy to understand views with insights into - IO hot spots, Locking, Costly SQL statements - Schema, table and index statistics • SYS is similar to - Oracle V$ catalog views - Microsoft SQL DMVs (Dynamic Mgmnt Views) 15
  • 16. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • Replaced custom code with Boost.Geometry – For spatial calculations – For spatial analysis – Enabling full OGC compliance – We’re also Boost.Geometry contributors! • InnoDB R-tree based spatial indexes – Full ACID, MVCC, & transactional support – Index records contain minimum bounding box • GeoHash • GeoJSON • Helper functions such as ST_Distance_Sphere() and ST_MakeEnvelope() MySQL 5.7: GIS Improvements 16
  • 17. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • Native Partitioning – Eliminates previous limitations – Eliminates resource usage problems – Transportable tablespace support • Native Full-Text Search – Including full CJK support! • Native Spatial Indexes • Transparent page compression • Support for 32K and 64K pages – Use with transparent page compression for very high compression ratios • General TABLESPACE support – Store multiple tables in user defined shared tablespaces • Support for MySQL Group Replication – High priority transactions • Improved support for cache preloading – Load your hottest data loaded at startup • Configurable fill-factor – Allows for improvements in storage footprint • Improved bulk-data load performance • Resize the InnoDB Buffer Pool online MySQL 5.7: InnoDB Improvements 17
  • 18. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • AES 256 Encryption now the default • Password rotation policies – Can be set globally, and at the user level • Deployment: enable secure unattended install by default – Random password set on install – Remove anonymous accounts – Deployment without test account, schema, demo files • Easier instance initialization and setup: mysqld –initialize • New detection and support for systemd • SSL – Enabled by default – Auto-detection of existing keys and certs – Auto generation of keys and certs when needed – New helper utility: mysql_ssl_rsa_setup – New --require_secure_transport option to prevent insecure communications – Added SSL support to binary log clients • Extended Proxy User Support – Added Built-in Authentication Plugins support for Proxy Users – Allows multiple users to share a single set of managed privileges MySQL 5.7: Security Improvements 18
  • 19. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7: Transparent Data Encryption • Only MySQL authenticated users can get access to the data • Protects data from OS users 19 MySQL Database
  • 20. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Enabling and Disabling InnoDB Tablespace Encryption • ENCRYPTION option in a CREATE TABLE statement • and ALTER TABLE statement • To disable encryption, set ENCRYPTION='N' using ALTER TABLE – This operations rebuild the table using ALGORITHM=COPY. ALGORITM=INPLACE is not supported 20 mysql> CREATE TABLE t1 (c1 INT) ENCRYPTION='Y'; mysql> ALTER TABLE t1 ENCRYPTION='Y'; mysql> ALTER TABLE t1 ENCRYPTION='N';
  • 21. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • GTID enhancements – On-line, phased deployment of GTIDs – Binary logging on slave now optional • Enhanced Semi-synchronous replication – Write guaranteed to be received by slave before being observed by clients of the master – Option to wait on Acks from multiple slaves • Multi-Source Replication – Consolidate updates from multiple Masters into one Slave • Dynamic slave filters • 8-10x Faster slave throughput – Often removes slave as a bottleneck; keep pace with master with 8+ slave threads – Option to preserve Commit order – Automatic slave transaction retries MySQL 5.7: Replication Improvements 21 0% 50% 100% 150% 200% 250% 1 8 24 48 Slave Threads Slave throughput vs. 96 Thread Master
  • 22. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • Multi-Source Replication – Consolidate updates from multiple Masters into one Slave • Consolidated view of all shards • More flexible topologies • Centralized point for backups – Compatible with Semi-Sync Replication & enhanced MTS • Performance Schema tables for monitoring slave • Online Operations: Dynamic Replication Filters, switch master MySQL 5.7: Replication Improvements Slave 22 Binlog Master 1 Binlog Master 2 … … Binlog Master N IO 1 Relay 1 Coordinator W 1 W 2 … W X IO 2 Relay 2 Coordinator W 1 W 2 … W X … … Coordinator W 1 W 2 … W X IO N Relay N Coordinator W 1 W 2 … W X
  • 23. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL Workbench 6.3 • Fabric – Add node, browse, view, connect • Performance Dashboard – Performance Schema Reports & Graphs • Visual Explain • GIS Viewer • Migration – New: Microsoft Access – Microsoft SQL Server, Sybase, PostgreSQL, SQLite 23 • New Easy to Use Wizards for – Fast Data Migration – Table<->File Data Import/Export (like Excel) – SSL Certificate Creation
  • 24. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL Repos • Distributions – Oracle, Red Hat, CentOS – Fedora – Ubuntu, Debian – SUSE • Official MySQL Docker Image from Oracle • Coming Soon – Preconfigured Containers – Improved support for popular DevOps deployment tools https://dev.mysql.com/downloads/repo MySQL on GitHub • Git for MySQL Engineering – Fast, flexible and great for a distributed team – Great tooling – Large and vibrant community • GitHub for MySQL Community – Easy and fast code availability to the community and to downstream projects – Pull Requests https://github.com/mysql 24
  • 25. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Why MySQL Enterprise Edition? Insure Your Deployments Get the Best Results Delight Customers 25 In Addition to all the MySQL Features you Love Improve Performance & Scalability Enhance Agility & Productivity Reduce TCO Mitigate Risks Get Immediate Help if/when Needed Increase Customer Satisfaction
  • 26. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Security and Data Protection MySQL Enterprise Backup MySQL Enterprise Authentication MySQL Enterprise Encryption MySQL Enterprise Firewall MySQL Enterprise Audit
  • 27. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | MySQL 5.7 is GA! 27 Enhanced InnoDB: faster online & bulk load operations Replication Improvements (incl. multi- source, multi-threaded slaves...) New Optimizer Cost Model: greater user control & better query performance Performance Schema Improvements MySQL SYS Schema Performance & Scalability Manageability 3 X Faster than MySQL 5.6 Improved Security: safer initialization, setup & management Native JSON Support And many more new features and enhancements. Learn more at: dev.mysql.com