Slide 1

Slide 1 text

MySQL System Stability Gea-Suan Lin KKBOX Inc.

Slide 2

Slide 2 text

As usual, before we start...

Slide 3

Slide 3 text

We’re hiring !

Slide 4

Slide 4 text

Visit KKBOX’s Booth

Slide 5

Slide 5 text

Let’s start this topic...

Slide 6

Slide 6 text

MySQL System Stability

Slide 7

Slide 7 text

Including...

Slide 8

Slide 8 text

Uptime (Service Time)

Slide 9

Slide 9 text

Latency (Response Time)

Slide 10

Slide 10 text

Downtime (Recovery Time)

Slide 11

Slide 11 text

You need to know something in advance...

Slide 12

Slide 12 text

MySQL - The Old Way

Slide 13

Slide 13 text

https://speakerdeck.com/ u/gslin/p/mysql-the-old- way

Slide 14

Slide 14 text

Or, tinyurl.com/9pas6cf

Slide 15

Slide 15 text

Which describe old and reliable ways to build MySQL service

Slide 16

Slide 16 text

This slide will offer policies to:

Slide 17

Slide 17 text

Increase Uptime

Slide 18

Slide 18 text

Reduce Downtime

Slide 19

Slide 19 text

1st Policy

Slide 20

Slide 20 text

Buy BIG Hardware

Slide 21

Slide 21 text

It’s simplest way

Slide 22

Slide 22 text

RAM

Slide 23

Slide 23 text

RAM will be large enough to fit hot data

Slide 24

Slide 24 text

If you don’t know “hot data”, then just “data”

Slide 25

Slide 25 text

RAM is cheap

Slide 26

Slide 26 text

2nd Policy

Slide 27

Slide 27 text

Use InnoDB

Slide 28

Slide 28 text

Support transactions

Slide 29

Slide 29 text

(Although we will avoid to use transactions in most cases)

Slide 30

Slide 30 text

Write won’t block read (Almost)

Slide 31

Slide 31 text

InnoDB supports compression

Slide 32

Slide 32 text

Possible smaller than MyISAM

Slide 33

Slide 33 text

Requirement of online schema changing (without downtime)

Slide 34

Slide 34 text

And, after MySQL 5.6...

Slide 35

Slide 35 text

Support memcached protocol

Slide 36

Slide 36 text

Support fulltext search

Slide 37

Slide 37 text

3rd Policy

Slide 38

Slide 38 text

Database Normalization

Slide 39

Slide 39 text

Reduce data duplication

Slide 40

Slide 40 text

Also reduce the need of ALTER TABLE

Slide 41

Slide 41 text

4th Policy

Slide 42

Slide 42 text

Monitor Everything

Slide 43

Slide 43 text

CPU Usage

Slide 44

Slide 44 text

RAM Usage

Slide 45

Slide 45 text

I/O Usage

Slide 46

Slide 46 text

Network Usage

Slide 47

Slide 47 text

Query Per Second

Slide 48

Slide 48 text

Slow Query Log

Slide 49

Slide 49 text

Last Policy

Slide 50

Slide 50 text

Subscribe blogs about database

Slide 51

Slide 51 text

MySQL Performance Blog www.mysqlperformanceblog.com

Slide 52

Slide 52 text

MySQL at Facebook www.facebook.com/MySQLatFacebook

Slide 53

Slide 53 text

That’s all...

Slide 54

Slide 54 text

Thanks !