为什么InnDB和Myisam相差这么大?

[复制链接]
查看11 | 回复5 | 2005-5-24 22:39:33 | 显示全部楼层 |阅读模式
为什么InnoDB和Myisam相差这么大? 请mysql高手指点!
而且用InnoDB CPU Wait%过多,Disk I/O Busy 达99%如下
│ Disk I/O ──/proc/diskstats────mostly in KB/s─────Warning:contains duplicates─│
DiskName BusyRead WriteKB|0
|25 |50
|75 100|│
│sda 99%0.0529.8|WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW>│
│sda1 0%0.00.0|>

test@phptest:/etc/mysql$ mysqlslap -a --concurrency=50,100 --number-of-queries 1000 --iterations=5 --engine=myisam,innodb --debug-info -uroot -ppassword
Benchmark
Running for engine myisam
Average number of seconds to run all queries: 0.107 seconds
Minimum number of seconds to run all queries: 0.098 seconds
Maximum number of seconds to run all queries: 0.112 seconds
Number of clients running queries: 50
Average number of queries per client: 20
Benchmark
Running for engine myisam
Average number of seconds to run all queries: 0.116 seconds
Minimum number of seconds to run all queries: 0.110 seconds
Maximum number of seconds to run all queries: 0.122 seconds
Number of clients running queries: 100
Average number of queries per client: 10
Benchmark
Running for engine innodb
Average number of seconds to run all queries: 5.171 seconds
Minimum number of seconds to run all queries: 4.977 seconds
Maximum number of seconds to run all queries: 5.328 seconds
Number of clients running queries: 50
Average number of queries per client: 20
Benchmark
Running for engine innodb
Average number of seconds to run all queries: 4.665 seconds
Minimum number of seconds to run all queries: 4.318 seconds
Maximum number of seconds to run all queries: 4.950 seconds
Number of clients running queries: 100
Average number of queries per client: 10

User time 1.06, System time 0.76
Maximum resident set size 6212, Integral resident set size 0
Non-physical pagefaults 20990, Physical pagefaults 0, Swaps 0
Blocks in 0 out 0, Messages in 0 out 0, Signals 0
Voluntary context switches 69300, Involuntary context switches 3978


回复

使用道具 举报

千问 | 2005-5-24 22:39:33 | 显示全部楼层
the following is mysql report, 我的磁盘有问题?
MySQL 5.1.54-1ubuntu4-luptime 0 0:29:39 Thu Nov 24 14:21:53 2011
__ Key _________________________________________________________________
Buffer used 0 of64.00M%Used: 0.00
Current11.67M
%Usage:18.24
Write hit 0.00%
Read hit0.00%
__ Questions ___________________________________________________________
Total
71.20k40.0/s
DMS
64.62k36.3/s%Total:90.76
COM_QUIT4.65k 2.6/s
6.53
QC Hits 1.60k 0.9/s
2.25
Com_
341 0.2/s
0.48
-Unknown 11 0.0/s
0.02
Slow 2 s
642 0.4/s
0.90%DMS: 0.99Log:ON
DMS
64.62k36.3/s 90.76
INSERT 37.44k21.0/s 52.58 57.94
SELECT 27.18k15.3/s 38.17 42.06
REPLACE 0 0/s
0.00
0.00
DELETE
0 0/s
0.00
0.00
UPDATE
0 0/s
0.00
0.00
Com_
341 0.2/s
0.48
set_option 76 0.0/s
0.11
drop_db
66 0.0/s
0.09
change_db60 0.0/s
0.08
__ SELECT and Sort _____________________________________________________
Scan 26.92k15.1/s %SELECT:99.04
Range
0 0/s
0.00
Full join 0 0/s
0.00
Range check 0 0/s
0.00
Full rng join 0 0/s
0.00
Sort scan 0 0/s
Sort range
0 0/s
Sort mrg pass 0 0/s
__ Query Cache _________________________________________________________
Memory usage 17.38k of 128.00M%Used: 0.01
Block Fragmnt 100.00%
Hits
1.60k 0.9/s
Inserts 4.41k 2.5/s
Insrt:Prune 4.41k:1 2.5/s
Hit:Insert 0.36:1
__ Table Locks _________________________________________________________
Waited 14.51k 8.2/s%Total:22.46
Immediate50.09k28.2/s
__ Tables ______________________________________________________________
Open
144 of256%Cache:56.25
Opened
4.89k 2.7/s
__ Connections _________________________________________________________
Max used
106 of151%Max:70.20
Total 4.65k 2.6/s
__ Created Temp ________________________________________________________
Disk table 48 0.0/s
Table
162 0.1/sSize:32.0M
File
5 0.0/s
__ Threads _____________________________________________________________
Running
1 of6
Cached
100 of128%Hit:97.72
Created 106 0.1/s
Slow
0 0/s
__ Aborted _____________________________________________________________
Clients
0 0/s
Connects
0 0/s
__ Bytes _______________________________________________________________
Sent
1.44G806.8k/s
Received7.71M4.3k/s
__ InnoDB Buffer Pool __________________________________________________
Usage 3.73M of 5.00G%Used: 0.07
Read hit100.00%
Pages
Free327.44k
%Total:99.93
Data
238
0.07 %Drty: 0.00
Misc
1
0.00
Latched 0
0.00
Reads 5.32M3.0k/s
From file 178 0.1/s
0.00
Ahead Rnd 1 0.0/s
Ahead Sql 0 0/s
Writes 80.01k45.0/s
Flushes 348 0.2/s
Wait Free 0 0/s
__ InnoDB Lock _________________________________________________________
Waits
0 0/s
Current
0
Time acquiring
Total
0 ms
Average 0 ms
Max
0 ms
__ InnoDB Data, Pages, Rows ____________________________________________
Data
Reads 192 0.1/s
Writes7.22k 4.1/s
fsync 7.05k 4.0/s
Pending
Reads 0
Writes
0
fsync 0
Pages
Created 9 0.0/s
Read
229 0.1/s
Written 348 0.2/s
Rows
Deleted 0 0/s
Inserted 18.72k10.5/s
Read
5.09M2.9k/s
Updated 0 0/s
test@phptest:~/monitor$

回复

使用道具 举报

千问 | 2005-5-24 22:39:33 | 显示全部楼层
这2个存储引擎作用和实现的技术不同,简单描述几个核心点:
1.InnoDB支持事务,而MyISAM不支持,为此MyISAM引擎并发很难大,而事务引擎的资源开销相对就大一些;
2.InnoDB引擎的缓冲区能缓存索引和元数据;
3.MyISAM引擎只能缓存索引数据,而元数据就得靠文件系统的缓存起作用,否则就全部基于磁盘的物理读写
上述三个特点,可以隐身出N多不同点出来.....
回复

使用道具 举报

千问 | 2005-5-24 22:39:33 | 显示全部楼层
多谢关注!
不过我的InnoDB 也太慢了吧!
是不是磁盘有问题?

回复

使用道具 举报

千问 | 2005-5-24 22:39:33 | 显示全部楼层
up, 欢迎你的意见......
回复

使用道具 举报

千问 | 2005-5-24 22:39:33 | 显示全部楼层
需要贴出来你myisam和innodb的数据库配置和测试的脚本
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行