innodb scalability and new features hl2008 rus
TRANSCRIPT
Slide 1
Innodb
Peter Zaitsev
Percona Inc
HighLoad.RU 2008
Moscow, Russia
Oct 6-7, 2008
--
Percona Inc
, , MySQL
http://www.mysqlperformanceblog.com
- High Performance MySQL Second Edition
?
Innodb MySQL
Innodb
MySQL 5.0 5.1
.
, .
?
?
/
?
-
-
-
!
Innodb
REPAIR TABLE
,
ALTER TABLE
Master-Master
OPTIMIZE TABLE
MySQL 5.1 Innodb Oracle
MySQL 5.1 Percona
Innodb
10 ( )
( )
31 sec 22 sec
:
update sample set c=md5(i) where i%1000=1;
3 min 20 sec 8 min 16 sec
0% () 30% ()
Innodb -
BLOB/TEXT
Innodb . 64bit
innodb_file_per_table=1
(MySQL 5.0)
buffer pool
buffer pool
buffer pool
32GB 1
600
Checkpoint
Buffer pool
Buffer Pool
innodb_max_dirty_pages_pct=0 .
-.
BBU RAID
innodb_flush_log_at_trx_commit=2
- ()
row level replication 5.1
5.0
MySQL 5.0.51a
Dell PE 2950
2* Quad Core CPUs
Intel Xeon L5335
5.1
MySQL 5.1.23-rc
5.1.28
-
5.0.22
5.0.22 5.0.51
5.1
-
64
MySQL 5.0.51
5.0.22
5.1 ( )
MySQL
innodb_thread_concurrency
64
MySQL 5.1.23 innodb_thread_concurrency=0 -
innodb_thread_concurrency
Fixing scaling by CPU Affinity
Performance for 16 threads
MySQL 5.1.23
5.0.51a for comparison
Workloads which scaled worse on 5.1.23
Trying to bind MySQL to specific CPU Cores
Restricting can help scaling
How binding to CPUs affects performance
Quadcore vs Dual Core
MySQL 5.1.23rc
2 3 2*Dual Core
Large Pages
MySQL can use Large Pages for Innodb Buffer Pool
Huge Pages reduce TLB cache misses
Non Swapable
Mediocre results for this workload, may be better in case of skewed working set
Performance effect of using Large Pages
Innodb IO
Dell PowerEdge 2950, Perc6, CentOS 5.0
RAID1 RAID10 (6 disk)
SysBench
RAID
EXT3 EXT2
RAID10
Ext3 ( ) .
Linux I/O
CFQ ()
Performance effect of using Large Pages
Innodb
Oracle
Community
Google (Mark Callaghan)
Yasufumi
Percona - /
!
: http://www.mysqlperformanceblog.com
: http://www.percona.com
4x42x24x01x12x05.0.51
KEY_POINT_INDX10.971.160.970.993.63
KEY_POINT11.721.721.891.281.93
KEY_RANGE_INDX10.911.040.610.612.27
KEY_RANGE12.392.651.681.683.01
SQL Dump88m13337886721867513856LOAD INFILE90m13337886721867513856ALTER from MYISAM90m13337886721867513856LOAD + ADD INDEX3m+5m13337886721124073472SQL Dump MyISAM3m1050000000312579072
???Page ??? (???)10/04/2008, 17:05:21Page / RWRO
CFQ62139
DEADLINE63116
AS56112
NOOP60137
Click to edit the outline text format
Second Outline Level
Third Outline Level
Fourth Outline Level
Fifth Outline Level
Sixth Outline Level
Seventh Outline Level
Eighth Outline Level
Ninth Outline Level
Click to edit the outline text format
Second Outline Level
Third Outline Level
Fourth Outline Level
Fifth Outline Level
Sixth Outline Level
Seventh Outline Level
Eighth Outline Level
Ninth Outline Level
Innodb , HighLoad.ru, , Moscow, Russia Oct 6-7 2008
--
KEY_RANGEKEY_POINT_INDPK_POINT_INDXFTSKEY_POINT
111111
42.512.853.532.662.2
162.424.295.953.811.87
641.564.254.733.81.1
2561.194.213.633.81.09
KEY_RANGEKEY_POINT_INDPK_POINT_INDXFTSKEY_POINT
111111
42.192.383.022.731.87
161.281.435.263.921.04
640.881.444.193.920.73
2560.31.383.243.910.24
FTSKEY_RANGEPOINT_INDEX
11.21.080.96
411.021
161.0511
641.0511
POINT 8POINT 4RANGE 8RANGE 8RANGE_IDX 8RANGE_IDX 4
1111111
41.872.072.192.442.612.72
161.041.891.282.162.892.78
640.731.750.8822.942.73
2560.241.450.31.682.842.63
RWRO
RAID12142
RAID1062139
5.0.225.0.51a5.1.23
KEY_RANGE10.970.9
KEY_POINT_IND110.82
PK_POINT_INDX10.991.04
FTS10.990.96
KEY_POINT10.990.94
RWRO
EXT269129
EXT362139
5.0.225.0.51a5.1.23
KEY_RANGE0.21.610.88
KEY_POINT_IND2.424.231.44
PK_POINT_INDX4.484.724.19
FTS2.493.783.93
KEY_POINT0.181.140.73
innodb_thread_concurrency=0innodb_thread_concurrency=4innodb_thread_concurrency=8
KEY_RANGE12.072.06
KEY_POINT_IND10.530.49
PK_POINT_INDX111.05
FTS10.70.98
KEY_POINT12.212.03