捐赠 | 广告 | 注册 | 发布 | 上传 | 关于我们    
  粤ICP备10103342号 DELPHI盒子 | 盒子文章 | 盒子问答悬赏 | 最新更新 | 盒子检索 | 下载中心 | 高级搜索    
  精品专区 | 繁體中文 | 奖励公告栏 | 直通车账号登陆 | 关闭GOOGLE广告 | 临时留言    
 
广告
评论:数据库性能评测,测试了DBISAM、SQLite两种数据库的性能。
xplibox 35212 2008/8/6 12:40:31
  前一段时间本人对DBISAM以及SQLITE数据库进行了一个性能测试,测试结果是SQlite胜出!胜出的原因是增加了“事务处理”。
    但是,最近在开发一个大型程序时,发现早期采用DBISAM的版本速度并不慢,反而是采用Sqlite的新版本速度不尽人意!于是,重新进行测试,首先是采用简单类型:Double,即同样插入10000个实数,比较两种数据库的性能,结果差不多。然后,换成构造类型(一个比较大的Record),结果DBISAM稍稍优先。
    然而,戏剧性的一幕出现在后面,我将DBISAM的程序去掉了“事务处理”,结果极端的出乎人们的意料——DBISAM的性能直接提高了10倍。经过仔细研究,发现DBISAM的缓冲机制起了作用,往往我插入3~5次,系统才写一次硬盘,所以,性能大大提高!!
    看来不同数据库之间的差异,还是很大的。不止是性能上,关键是用法也不一样!!
    Sqlite不加“事务处理”性能很差;DBISAM恰恰相反!
    真是没有想到!
qindj 33994 2008/5/4 9:21:58
等待楼上大侠的测试结果...
xplibox 33765 2008/4/21 14:29:52
已经安装Nexus,正在准备测试!
xplibox 33707 2008/4/16 17:14:57
NexusDB是一个超级快速的client/server数据库引擎,专为Delphi和C++Builder开发者设计。它可以被快速灵活的嵌入到您的桌面应用中。NexusDB代表了下一代备受关注的FlashFiler数据库。 NexusDB被设计成最大化快速、最小化维护并保持数据完整性。作为真正的client/server数据库,NexusDB是唯一的一套组件。它的设计决定了比典型的文件型数据库有更多的优点:更好的数据完整性、更好的性能和更好的可伸缩性。当前版本2.0支持.NET开发。

但是哪有下载阿??
xplibox 33706 2008/4/16 17:08:41
TinyDB好像是收费的,没有
NexusDB使用者多吗?头一次听说。
register 33701 2008/4/15 20:18:39
比较过 NexusDB.V2.0 和 TinyDB 吗?
zbird 33697 2008/4/15 12:38:02
估计楼主是没加事物,不然SQLite不至于这么慢。
xplibox 33692 2008/4/14 17:16:28
对于BLOB我的测试结果依然是SQLite胜出。不知道大侠dorry是怎样测试的??
我的测试代码如下:
    start := GetTickCount;
    ASQLite3Query1.StartTransaction;
    for i := 0 to 1000 - 1 do
    begin
      k := Random(1000);
      //DBISAMQuery1.ParamByName('aa').AsString := Format('%d',[i]);
      //DBISAMQuery1.ParamByName('bb').AsInteger := k;
      //DBISAMQuery1.ExecSQL;
      ASQLite3Query1.Params.ParamByName('aa').AsString := Format('%d',[i]);
      ASQLite3Query1.Params.ParamByName('bb').AsBlob := 'tttttttttt';
      ASQLite3Query1.ExecSQL;
    end;
    ASQLite3Query1.Commit;
    stop := GetTickCount;
    Label1.Caption := Format('%.2fs',[(stop - start)/1000])

----------
    Randomize;
    start := GetTickCount;
    for i := 0 to 1000 - 1 do
    begin
      k := Random(1000);
      DBISAMQuery1.ParamByName('aa').AsString := Format('%d',[i]);
      DBISAMQuery1.ParamByName('bb').AsBlob := 'tttttttttt';
      DBISAMQuery1.ExecSQL;
    end;
    stop := GetTickCount;
    Label1.Caption := Format('%.2fs',[(stop - start)/1000])
xplibox 33691 2008/4/14 17:01:42
msde对硬件的要求如何?会不会造成反应迟缓?
xplibox 33690 2008/4/14 16:53:03
MSDE是什么?没有听说过啊?
大二分数据的问题还真需要测试测试
pcbcom 33641 2008/4/10 22:03:32
用DBISAM会让你后悔的,用MSDE吧
zyyjc 33629 2008/4/10 12:08:38
能问下,楼主截图的程序用了什么皮肤控件?
csxy 33617 2008/4/9 12:07:56
强烈建议别用ABS数据库.
5W条记录 你用SELECT 加条件测一下速度后再用
dorry 33615 2008/4/9 8:59:20
在插入大 二进制文件时 DBisam 表现是 SQlite 的4-5备,比如blob字段插入
100MB 的文件.
xplibox 33611 2008/4/8 17:21:19
增加事务处理就不慢了!
是在同样的机器配置下进行的。关键是考察数据库引擎的性能。
wqquake 33608 2008/4/8 14:36:48
主要还得说明机器的配置,测试效果才有参考价值。我用sql server主要存储过程插记录,2000条/秒 应该不成问题。
lobtao 33584 2008/4/7 17:18:58
SQLite的速度好慢呀,我还是比较喜欢用absolute database,速度快,易用,比accesse用起来都方便 ,文档齐全,有时间了,准备翻译过来,挂到网上去。
第一页 上一页 下一页 最后页 有 17 条纪录 共1页 1 - 17
 用户名:
 密 码:
自动登陆(30天有效)
 
  DELPHI盒子版权所有 技术支持:深圳市麟瑞科技有限公司 1999-2024 V4.01 粤ICP备10103342号 更新RSS列表