易截截图软件、单文件、免安装、纯绿色、仅160KB

[转载]内存数据库FastDB和SQLite性能测评


内存数据库FastDB和SQLite性能测评
作者:tamsyn 
来源:www.sqlite.com.cn 
时间:2009-10-21  



一、引言
在很多项目中,经常会碰到这样的需求,需要对大量数据进行快速存储、查询、删除等操作,特别是在一些针对诸如运营商、银行等大型企业的应用中,这些
需求尤为常见。比如智能网中的大量在线并发用户的数据管理、软交换平台中的在线信息交互、宽带/3G等数据网中在线用户行为记录等等。
针对这些情形,我们通常需要选择高性能的数据库产品,而且通常需要使用内存数据库,顾名思义,内存数据库指的是所有的数据访问控制都在内存中进行,
这是与磁盘数据库相对而言的,磁盘数据库虽然也有一定的缓存机制,但都不能避免从外设到内存的交换,而这种交换过程对性能的损耗是致命的,目前主流数据库
如SYBASE、ORACLE等都有这种缓存机制,如将特定表绑定一定的缓存,从而在一定程度上改善数据吞吐性能。而内存数据库几乎可以完全避免这种内外
存数据交换的发生,特别是在物理内存足够大的设备上尤其如此,通常这种数据库也被称为主存数据库(Main Memory DataBase,
MMDB)。
二、主存数据库比较
目前比较知名的商业内存数据库有,ORACLE的TimesTen,MCObject的eXtremeDB、韩国的Altibase等,这些数据库
产品性能都非常的强劲,当然价格也相当的强劲,在非特大型系统建设时,通常让人望而却步。于是退而求其次,免费开源内存数据库给了我们第二种选择。
Berkeley DB,SQLite,MonetDB,FastDB,H2等,不一而足。本文主要针对SQLite和FastDB进行性能测评。
2.1 测试准备
首先,笔者通过对评测数据的调研发现,通常认为,BDB性能不如SQLite,参考“免费的实时数据库,我们该选谁?—-BerkeleyDB与SQLite评测对比 ”

上文中还提到,“据说FastDB很快,但数据库大小不能大于物理内存…”,于是笔者对FastDB产生了兴趣,从FastDB作者的网站看到关于
这点的介绍,并不是说数据库大小不能大于物理内存,而是说数据库大小超过物理内存时,性能与不超过时相比会有一定的降低(降低幅度未作说明,估计是不推荐
使用)。幸运地是,目前物理内存实在说不上贵,服务器内存在10G之上都是很正常的事情了。因此可以根据具体项目数据量需求来确定是否能使用
FastDB,比如并不是所有的表都需要放在内存中。下面即将描述的测试表明,一旦使用FastDB,其性能在


相关文档:

总结SQLite不支持的SQL语法有哪些


1 TOP
这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录:
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
但是这条SQL语句在SQLite中是无法执行的,应该改为:
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
其中limit 0,10表示从第0条记录开始,往后 ......

sqlite批量插入数据库问题

我现在使用的是Datalogic 的memor扫描器(intel XScale PXA255@200MHz,系统内存 64M,系统闪存
128M),操作系统为WinCE
5.0,数据库为Sqlite3,在.net环境下面有没有可内将一个20万行数据的txt文件读出并写到Sqlite数据库中?
我现在的做法是:逐行读出文件内容,分割数据后作为参数,用dc.Parameters.add()方法加入SQLiteC ......

用vs2008编译出sqlite dll和lib (图解)

1:从sqlite的官网上下载源码 http://www.sqlite.org/download.html
2:打开vs2008工程新建一个空的dll工程。
3:把sqlite3.h,sqlite3.cpp,sqlite3.def分别加入到head file 和source file下。
4:编译程序。 这时只能得到sqlite3.dll文件。
5:打开vs2008自带的命令行: 切到sqlite3.def所在的目录。
 
6:运行 ......

SQLite下载与安装

SQLite
的最新版本可以从这里下载
。下面我们以Windows版本sqlite-3_5_1.zip
为例介绍其安装方法。
(大家可以选择下载安装适合自己的版本)
下载后,将sqlite-3_5_1.zip解压缩至C:\sqlite目录即完成安装。
C:\sqlite目录构造为:
C:\sqlite
  |
  +--sqlite3.exe
打开一个CMD命令窗口
C:\ ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号