您的位置:首页 > 数据库

免费的实时数据库,我们该选谁?----BerkeleyDB与SQLite评测对比

2011-03-31 09:43 519 查看
转载自:http://blog.csdn.net/mynicedream/archive/2008/04/04/2252398.aspx

最近要做一个项目,需要用到实时数据库,PI太贵了,想找一个免费的,实在不行就只能自己编了。找了半天,找到了FastDB、BerkeleyDB和SQLite.

FastDB是内存型数据库,据说很快,但数据库大小不能大于物理内存,不然。。。反正我看到这就走了,我可是要一秒内处理几千个数据,还要保存8小时以
上的啊!BerkeleyDB和SQLite倒没有数据库大小不能大于物理内存的限制,我对他们的性能进行了测试,结果如下:

Berkeley
DB

Sqlite

插入
10000
条记录耗时

0.08


0.42


插入
100000
条记录耗时

2.31


3.81


插入
7200000
条记录耗时

1024.34


249


插入
57600000
条记录耗时

12860.78


2155.14


插入
172800000
条记录耗时

48039.64


6352.06


10000
条记录查
1
记录耗时

少于
0.01


少于
0.01


100000
条记录查
1
记录耗时

少于
0.01


少于
0.01


7200000
条记录查
1
记录耗时

少于
0.01


少于
0.01


57600000
条记录查
1
记录耗时

0.03


0.16


172800000
条记录查
1
记录耗时

0.03


0.09


10000
条记录数据库大小

0.628M

0.527M

100000
条记录数据库大小

5.29M

5.32M

7200000
条记录数据库大小

516M

405M

57600000
条记录数据库大小

3087.13M

3925.8M

172800000
条记录数据库大小

11890.7M

10621.2M

*
机器配置:
Core2 E4500CPU

2G
内存

上表为两种数据库只建一个索引,
Berkeley DB
不支持事务、
Sqlite
支持事务情况下的数据,如果
Berkeley DB
打开事务支持,速度会下降很大的数量级,根本不能满足需求。另外在程序崩溃后
Berkeley DB
数据库不可用,
Sqlite
数据库仍可正常使用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: