PostgreSQL 8.3 beta 4 数据库测试

发布: 2008-01-01 21:41

测试环境:centor OS 4.5  kernel 2.6.9 4G内存,Intel(R) Xeon(TM) CPU 2.80GHz 双核双处理器


配置文件postgresql.conf配置参数:(其实都是默认的)


shared_buffers = 24MB   


temp_buffers = 8MB


一个包含6个字段的表,一个主键,一个varchar(255)的字符串,其他4个为int4类型


数据记录180万。其中的字符串字段,记录是不同的随机的url,每个都不相同。


没有其他索引等。测试过程中某些操作与mysql5.0.51作了对比,mysql数据的硬件与此测试使用的硬件完全相同,也是没有做个什么优化,都使用默认的配置参数。


测试方向主要有count, sum, avg, order by, group by, like, limit xxx offset yyyy语句以及+、-、*、/、取余、取模的SELECT操作,插入记录操作的用时, 创建索引, 删除索引。


             









































































































 171万记录 PostgreSQL 8.3 beta 4 MySQL 5.0.51 InnoDB
 count(*) 0.480 sec 常数时间,在0.01 sec 内
sum 一个字段 0.630 sec 2.45 sec
sum 两个字段 0.771 sec  (多用时 22.38%) 2.73 sec (多用时 11.43%)
sum 三个字段 0.956 sec (多用时 51.75%) 2.95 sec (多用时 20.41%)
sum 四个字段 1.079 sec (多用时 70.63%) 3.24 sec (多用时 32.24%)
sum 五个字段 1.197 sec (多用时 90.00%) 3.53 sec (多用时 44.08%)
avg 一个字段 0.673 sec 2.45 sec
avg 两个字段 0.882 sec  (多用时 31.05%) 2.74 sec (多用时 11.43%)
avg 三个字段 1.014 sec (多用时 50.67%) 3.03 sec (多用时 23.67%)
avg 四个字段 1.109 sec (多用时 67.78%) 3.28 sec (多用时 33.88%)
avg 五个字段 1.237 sec (多用时 83.80%) 3.61 sec (多用时 47.35%)
order by 唯一主键 (asc desc) 1.021 sec  第一次查询用时 10.328 sec 2 min 53.84 sec  第一次查询用时 4 min 47.20 sec
group by 整数字段 1.090 sec 首次查询4.882 sec 3.18 sec 首次查询 14.05 sec
group by 字符串字段(基本不同的随机url, 字段带索引) 2.176 sec 42.18 sec
like 字符串字段(基本不同的随机url,字段带索引) 0.912 sec (返回空结果集) 4.83 sec (返回空结果集)
like 字符串字段(基本不同的随机url,不带索引) 0.920 sec (返回空结果集) 4.82 sec (返回空结果集)
= 字符串字段(基本不同的随机url,不带索引) 0.617 sec (返回1结果集) 3.81 sec (返回1结果集)
创建索引 字符串字段(基本不同的随机url,平均长度100) 87.851 sec 47.41 sec
删除索引 字符串字段(基本不同的随机url,平均长度100) 0.049 sec 21.70 sec

注:


count(*) 操作 PostgreSQL需要扫描全表,而MySQL则有缓存表中记录数的机制,在写库的时候就已经算出来了,所以取完全的表记录数MySQL用时就为常数时间了。


 以上操作都是没有任何where条件限制,计算过程包括表中所有记录。


结论:


like 与对应字段上是否有索引没有关系;


在没有索引的字符串字段上,=查找需要扫描全表,但PostgreSQL明显要快。有索引的=查找,MySQL在0.01 sec 内, PostgreSQL可达到0.002内。


创建索引PostgreSQL慢于MySQL,是否可得出结论 INSERT 操作PostgreSQL 也同样慢于MySQL呢?


 


 



原文: http://qtchina.tk/?q=node/115

Powered by zexport