mysql and ssd - percona · pdf filemysql and ssd vadim tkachenko percona inc, co-founder, cto ...

110
MySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO www.percona.com www.SSDPerformanceBlog.com [email protected]

Upload: phungminh

Post on 15-Feb-2018

231 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Vadim TkachenkoPercona Inc, co-founder, CTO

www.percona.comwww.SSDPerformanceBlog.com

[email protected]

Page 2: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

World is spinning

MySQL and SSD

Page 3: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Physical limits

MySQL and SSD

Page 4: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Rotate faster

MySQL and SSD

Page 5: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

millisecondsAccess time

MySQL and SSD

Page 6: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

More spindles

MySQL and SSD

Page 7: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Still milliseconds

MySQL and SSD

Page 8: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Access time

MySQL and SSD

Page 9: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Data fits into memory

Data

exceeds

memory

Page 10: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Page 11: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Flash Access time

MySQL and SSD

Page 12: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL throughput with Flash

MySQL and SSD

5x+Times difference

Page 13: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Flash

MySQL and SSD

Page 14: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Page 15: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Erase size

MySQL and SSD

Page 16: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Write once

MySQL and SSD

Page 17: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Page 18: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

No rewrites

MySQL and SSD

Page 19: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Page 20: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Garbage collector

MySQL and SSD

Page 21: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Write amplificationFlash writes more than application

MySQL and SSD

Page 22: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Software matters

MySQL and SSD

Page 23: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Hardware is less important

MySQL and SSD

Page 24: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Firmware

+

execution

Page 25: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Flash quality is defined by software

MySQL and SSD

Page 26: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Flash types

MySQL and SSD

Page 27: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Single Level Cell – 1bit

MySQL and SSD

Page 28: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Multi Level Cell – 2 bit

MySQL and SSD

Page 29: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Multi Level Cell – 3 bit

MySQL and SSD

Page 30: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

SLC vs MLC

MySQL and SSD

Page 31: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Erase cycles

MySQL and SSD

• SLC 100.000 cycles

• MLC 10.000 cycles

• 25nm MLC 5.000 cycles

Page 32: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

SLC

MySQL and SSD

Page 33: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MLC

MySQL and SSD

Page 34: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Space provisioning – Virident FlashMax 1400

MySQL and SSD

User space

1.4TB

Internal Space

0.6TB

Page 35: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

SATA vs PCI Express

MySQL and SSD

Page 36: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

SATA SSD

MySQL and SSD

Page 37: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

My benchmarks story2 Intel 320 SSD cards

MySQL and SSD

Page 38: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

How do I install it?

MySQL and SSD

Page 39: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

I need

MySQL and SSD

Page 40: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Initial setup

MySQL and SSD

Page 41: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Polished setup - AccuSTOR AS108X

MySQL and SSD

Page 42: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

RAID controllers

MySQL and SSD

Page 43: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Last component - cable

MySQL and SSD

Page 44: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

PCIe is different

MySQL and SSD

Page 45: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

PCIe

MySQL and SSD

Page 46: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Just plug into a PCIe slotBut SATA is hot-swap

MySQL and SSD

Page 47: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Benchmarks lie

MySQL and SSD

Page 48: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Benchmark challenge: internal state

MySQL and SSD

Page 49: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Benchmark challenge: capacity

MySQL and SSD

Page 50: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Unrepeatable results

MySQL and SSD

Page 51: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Benchmark challenge: filesystems

MySQL and SSD

Page 52: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Benchmark challenge: filesystems

MySQL and SSD

Page 53: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Xfs already fixed bug in source code4x improvement

MySQL and SSD

Page 54: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Benchmark challenge: filesystems

MySQL and SSD

Page 55: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Ext4 – sync – random write

MySQL and SSD

Page 56: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

xfs – sync – random write

MySQL and SSD

Page 57: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Ext4 vs xfs – async

MySQL and SSD

135

98

0

20

40

60

80

100

120

140

160

ext4 xfs

MiB

/ s

ec

async writes

Page 58: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

To add to confusion: in MySQL

MySQL and SSD

Page 59: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Ext4 vs xfs – your choice

MySQL and SSD

Page 60: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Comparing apples

MySQL and SSD

Page 61: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Flash vendors~50 on market

MySQL and SSD

Page 62: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Random 16KiB reads

MySQL and SSD

50

222

417

195

1300

0

200

400

600

800

1000

1200

1400

MiB

/ s

ec

8 HDDSTEC4 STECIntelVirident

Page 63: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Random 16KiB writes

MySQL and SSD

35

135

223

92

520

0

100

200

300

400

500

600

MiB

/ s

ec

8 HDDSTEC4 STECIntelVirident

Page 64: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Price

MySQL and SSD

24001500

6000

270

18000

02000400060008000

100001200014000160001800020000

Pric

e, $

8 HDDSTEC4 STECIntelVirident

Page 65: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

PCIe vs SATAWhich one to choose?

MySQL and SSD

Page 66: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

PCIe for absolute performanceI use it because I have free samples

MySQL and SSD

Page 67: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

SATA for performance per $I would use it if I had to buy…

MySQL and SSD

Page 68: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

When should I use flash?

MySQL and SSD

Page 69: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Very good for random readsBoth SLC and MLC

MySQL and SSD

Page 70: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Random WritesMaybe challenge for MLC

MySQL and SSD

Page 71: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

SLC lifetime

MySQL and SSD

Page 72: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MLC lifetime

MySQL and SSD

Page 73: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Write amplification

MySQL and SSD

Page 74: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Experiment – tpcc-mysql

MySQL and SSD

Page 75: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Flash for MySQL

MySQL and SSD

Page 76: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

When Flash helps

MySQL and SSD

Page 77: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Most important decision

MySQL and SSD

Page 78: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Page 79: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

You need

MySQL and SSD

Page 80: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Choices

MySQL and SSD

Page 81: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Benchmarks again

MySQL and SSD

Page 82: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Page 83: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

STEC SSD vs HDD: 8x gain

MySQL and SSD

750

90

0

100

200

300

400

500

600

700

800

SSD HDD

tps

Page 84: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

STEC innodb_flush_log_at_trx_commit

MySQL and SSD

750

490

0

100

200

300

400

500

600

700

800

trx_commit=2 trx_commit=1

tps

Page 85: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL IO workloads

MySQL and SSD

Page 86: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

innodb_flush_log_at_trx_commit=1

MySQL and SSD

Page 87: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

STEC: InnoDB log location

MySQL and SSD

740

490

0

100

200

300

400

500

600

700

800

logs on RAID with cache logs on SSD

tps

Page 88: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

STEC – RAID card

MySQL and SSD

750810

0100200300400500600700800900

LSI 9211 (no cache) LSI 9260 (with cache)

tps

Page 89: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Log size matters

MySQL and SSD

Page 90: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Big log file 8GB (Percona Server)

MySQL and SSD

Page 91: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Flushing algorithm is important

MySQL and SSD

Page 92: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Innodb_adaptive_checkpoint=keep_average(Percona Server)

MySQL and SSD

Page 93: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

DoubleWrite area is important

MySQL and SSD

Page 94: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

DoubleWrite is a protection

MySQL and SSD

Page 95: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

DoubleWrite is rewriting the same area

MySQL and SSD

Page 96: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Rewrites of the same area

MySQL and SSD

Page 97: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Consider moving doublewrite • Innodb_doublewrite_file =• Percona Server

• ibdata1• For general MySQL

MySQL and SSD

Page 98: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Fusion-io to support atomic writes1.5x performance improvement

MySQL and SSD

Page 99: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Misc

MySQL and SSD

Page 100: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Misc filesystem

MySQL and SSD

Page 101: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Is Flash expensive?

MySQL and SSD

Page 102: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Consolidation

MySQL and SSD

Page 103: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Power savings

MySQL and SSD

Page 104: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

New Relic

MySQL and SSD

Dell PowerEdge R610

Dell PowerVault MD1220

Page 105: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

Perc H800RAID511 Intel 320 SSD 600GB

Page 106: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

MySQL and SSD

6xtimes difference

Page 107: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Scale Up, not Scale Out

MySQL and SSD

Page 108: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

“Flash made everything faster, but more confusing”

MySQL and SSD

Page 109: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Pictures credits• http://

www.sunrainet.com/hdd-vs-ssd-speed-test-video-windows-7-boot-up.html• http://blog.familytreemagazine.com/insider/content/binary/datacenter-2.jpg

MySQL and SSD

Page 110: MySQL and SSD - Percona · PDF fileMySQL and SSD Vadim Tkachenko Percona Inc, co-founder, CTO     vadim@

Thank you!

MySQL and SSD