
【引自heiyeluren的博客】测试环境 CPU:Intel Pentium4 2.66GHz Memory:1GB Disk:73GB/SCSI OS:FreeBSD 4.11 PHP:PHP 5.2.1 MySQL:MySQL 4.1.23b 前期工作 my.cnf max_heap_table_size = 128M 建表 use test; -- -- Store engine heap -- CREATE TABLE
【引自heiyeluren的博客】测试环境
CPU:Intel Pentium4 2.66GHz
Memory:1GB
Disk:73GB/SCSI
OS:FreeBSD 4.11
PHP:PHP 5.2.1
MySQL:MySQL 4.1.23b
前期工作
my.cnf
max_heap_table_size = 128M |
建表
use test; -- -- Store engine heap -- CREATE TABLE `tbl_heap` ( `id` int(11) NOT NULL auto_increment, `name` varchar(32) NOT NULL default '', `email` varchar(32) NOT NULL default '', `summary` varchar(255) default '', KEY `id` (`id`) ) ENGINE=HEAP DEFAULT CHARSET=gbk; -- -- Store engine myisam -- CREATE TABLE `tbl_isam` ( `id` int(11) NOT NULL auto_increment, `name` varchar(32) NOT NULL default '', `email` varchar(32) NOT NULL default '', `summary` varchar(255) default '', KEY `id` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=gbk;
|
插入数据
说明:每次都是空表插入数据
插入10000 Record
Heap engine insert 10000 record used time: 3.5008587837219 MyISAM engine insert 10000 record used time: 4.5881390571594 |
50000 Record
Heap engine insert 50000 record used time: 19.5354986191 MyISAM engine insert 50000 record used time: 33.866044998169 |
100000 Record
Heap engine insert 100000 record used time: 36.200875997543 MyISAM engine insert 100000 record used time: 68.34194111824 |
200000 Record
Heap engine insert 200000 record used time: 68.00207901001 MyISAM engine insert 200000 record used time: 125.26263713837 |
查询数据
表里分表有:200000条记录,两个表数据一致
直接select,10000次,每次取100条记录
Heap engine select 10000 times, 100 record used time: 12.122506141663 MyISAM engine select 10000 times, 100 record used time: 19.5126060944 |
直接select,1000次,每次取10000条记录
Heap engine select 1000 times, 10000 record used time: 111.54126811028 MyISAM engine select 1000 record used time: 116.79438710213 |
增加where条件,1000次,每次取10000条记录
Heap engine select 1000 times, 10000 record used time: 111.52102303505 MyISAM engine select 1000 times, 10000 record used time: 117.68481087685 |
where条件,10000次,每次从1000条起,取1000条记录
Heap engine select 10000 times, 1000 record used time: 124.288695145 MyISAM engine select 10000 times, 1000 record used time: 139.82107305527 |
where条件增加like,10000次,每次从1000条起,取1000条记录
Heap engine select 10000 times, 1000 record used time: 145.43780493736 MyISAM engine select 10000 times, 1000 record used time: 163.56296992302 |
where条件增加索引,10000次,每次从1000条起,取1000条记录
-- 建立索引 (在SQLyob下执行) ALTER TABLE tbl_heap ADD INDEX idx_name (name); ALTER TABLE tbl_isam ADD INDEX idx_name (name); Heap engine alter table add index used time: 2.078 MyISAM engine alter table add index used time: 13.516 Heap engine select 10000 times, 1000 record used time: 153.422395706 MyISAM engine select 10000 times, 1000 record used time: 239.86818814278
|
PS:不合适的索引还不如不要。