该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2006-11-23
前两天以抽空测了一下HSQLDB的基本参数,测试结果如下:
我的测试案例设计是: 还是对一张表操作: tbl_user --------------------------------- id IDENTITY login_id varchar(20) password varchar(50) name varchar(20) email varchar(200) regtime timestamp 这次测试的表比SSQL测试时少了一个VARCHAR(2000)的字段,因为HSQLDB的Sequence用起来不如SSQL,所以就改用IDENTITY;表类型就建成cached,因为HSQLDB默认的表类型内存表(Memory),刚开始时我用默认的表类型,插入数据是很快,但在插入到150K左右的记录时就OutOfMemory了,测不下去,试了几次不行,所以我就把表类型改成缓存表(CACHED)。 用一个SQL语句往表里插入1000X1000记录: Insert into tbl_user( login_id, password, name, email, regtime) values( 'test' || IDENTITY() , '1234567', '张三' || IDENTITY(), 'test' || IDENTITY()|| '@yahoo.com', NOW()) 用一个SQL语句从表里查询总记录数: select count(id) as cnt from tbl_user 我的机器配置是: DELL LATITUDE D610 CPU: 迅驰1.8G 内存: 512M 在NetBeans5.5 Beta版中编写程序并以Run模式运行程序: HSQLDB的版本是:1.8.0.7 测试结果如下: 插入操作: 393分钟 (SSQL是 191 min) 查询操作(三次): 19.39秒 (SSQL是 100 sec) 15.297秒 (SSQL是 94 sec) 15.203秒 (SSQL是 87 sec) 从比较结果来看,SSQL的插入性能优于HSQLDB,但查询性能比HSQLDB差太多(我想不明白是怎么回事,有没有哪位大拿知道原因给解释一下。),所以,我认为,SSQL和HSQLDB总体性能没有太大的差别,但鉴于SSQL的开发已经转向,而HSQLDB还在不断发展中,使用时选用HSQLDB比较稳妥。 |
|
返回顶楼 | |
发表时间:2006-12-01
保重身体啊。
|
|
返回顶楼 | |