
sqlite是款不错的,使用方便,不需要事先安装软件,事先建表。很担心它的性能和数据存储量问题。
比如有的网友问:Sqlite最大可以多大呀?会不会像acc那样,几十MB就暴掉了?
不会的,放心用SQLite, 这是两个数量级的东西, 看下面的说明。
Access不能算真正意义上的,但是Access是前台和后台在一起,对小用户还是有其优点。
SQLite,是一款轻型的,是遵守ACID的关系型管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至今已经有14个年头,SQLite也迎来了一个版本 SQLite 3已经发布。
根据SQLite的官方提示:
在河蟹大数据方面,中国蟹库网实现了蟹库网采集大数据、存储大数据、应用大数据的应用集合。静态编译后的易语言exe/dll之间不能再共享譬如窗口、窗口组件等类似资源,对于已经静态连接到一个exe/dll中的支持库,该支持库中的数据或资源将不能再被其它exe/dll中所使用的同名支持库访问。推出了以下新的支持库:农历月历支持库中新增“农历月历”组件拖放支持库正则表达式支持库进程通讯支持库bt下载支持库网络通讯支持库二扩展界面支持库三中增加“高级选择夹”组件应用接口支持库opengl支持库directx发支持库sqlite支持库控制台操作支持库扩展界面支持库五20。

此外,关于性能。本人也在网上查了大量资料:
在2011年,有网友发表观点:
sqlserver分页查询一直是sqlserver的短板,闲来无事,想出几种方法,假设有表article,字段id、year...(其他省略),数据53210条(客户真实数据,量不大),分页查询每页30条,查询第1500页(即第45001-45030条数据),字段id聚集索引,year无索引,sqlserver版本:2008r2。当有相应权限的用户连到sqlserver后,能通过查询master库中的sysdatabases表得到用户建的名称,接着再查询用户的sysobjects表查出创建的表,接着再查询用户的syscolumns表查出表中的字段,进而查出纪录。sql1查询当前表前10条记录,sql2查询当前表前10条之后的15条记录,sql2中的10是偏移量。
“但如果查询条件不是索引字段的话,最后一条记录的查询竟然需要589秒啊,不是ms啊。在1千万条记录前插入1百万条记录需要120秒,在6千万条记录后插入1百万条记录需要156秒。“
SQLite极致性能提升方法:
关闭同步,Synchronous=Off,提升性能。添删改操作时不必同步等待写入磁盘,操作系统会延迟若干毫秒批量写入
设置WAL模式,Journal Mode=WAL,减少锁定。写入向前日志模式,避免多线程访问时锁定,写入时不必使用排它锁影响其它线程读取,而是把事务操作写入到WAL文件中,延迟合并

加大缓存,Cache Size=5000,提升性能。操作系统通过文件映射MapFile把整个文件映射进入内存,实际查询时会把用到数据所在附近页预先加载进入缓存,极大提升查询性能
插入速度 5000~16000tps,依赖CPU,HDD/SSD差别不大,主要受限于SQLite.Data.dll的Prepare
查询速度 非首次查询,缓存命中以后,索引查询基本上都是毫秒级。较大则相应加大缓存,速度不变。
查记录数 单表数据超过一千万行以后,尽量不要使用Select Count,否则可能需要十几秒到半分钟的样子才能返回。NewLife.XCode封装了'Meta.Count'
当然,SQLite不适合多线程高并发写入,多线程高并发读取倒是非常不错。
因为就在进程内,高并发读取一般比其它RDS要快一大截。
总的来说,SQLite甭管多少数据多大库文件,只要配置得当,内存管够,性能不是太大问题!

SQLite大数据测试
为了验证SQLite的性能巅峰,我们来做一个大数据测试sqlite内存。
模拟每天4亿票销售订单,分表分库,每天一个文件,有订单号、部门节点、时间等。
1, Test项目生成4亿行订单数据,主键自增ID,订单号建立索引,文件大小26.5G
2, Web项目,魔方+XCode,首次查询较慢,约427毫秒,需要预热
不同机器的首次查询时间偏差比较大,最大可能达到几秒钟
本机第一次启动该项目时,魔方需要从公网下载SQLite驱动文件以及样式资源文件

3, 第二页,99毫秒,操作系统文件映射缓存生效
4, 第20000页,147毫秒,系统缓存依然生效
5, 第200000页,32021毫秒,距离太远,文件系统缓存没有命中
6, 第200001页,867毫秒,缓存命中
7, 查询一个中间订单号000199999980,20毫秒,索引命中
显然,只要有索引,多大数据都不怕。
8, 本地内存占用150M。虽然整个26.5G,但操作系统只会加载需要部分
supercache是一个用内存来保存读过的硬盘数据的软件,也即是硬盘的cache,它将计算机由硬盘读取过的文件保存在指定的内存中,下次计算机再读这些文件时,不是由硬盘读取,而是由内存中读取,加快了文件的读取速度,减少了硬盘的磨损,它是解决硬盘瓶颈的好东东。这个是在x64位系统下安装的supercache破解版本,就是通过内存来保存读过的磁盘数据,将读过的数据保存到内存指定区域中,当下次再次读这些数据时,可以不经过硬盘而直接从内存中读取,从而减少硬盘的磨损、解决硬盘传速瓶颈,明显提高系统的运行速度。【软件介绍】supercache是一个用内存来保存读过的硬盘数据的软件,也即是硬盘的cache,它将计算机由硬盘读取过的文件保存在指定的内存中,下次计算机再读这些文件时,不是由硬盘读取。
用户需要查看通过火绒安全优化过的启动项和服务项,点击「操作记录」后将弹出记录窗口,标记了曾经操作的记录信息,用户也可以一键恢复各个项目的原始状态,这一功能方便了以后操作失误时进行撤销恢复。fromminutes返回表示指定分钟数地timespan,其中对分钟数地指定精确到最接近地毫秒.。里面好热闹,这么,在昵称中看看自己的指令数多少,如果是自己建立服务器指令数就为0毫秒,因为这个是别人的服务器所以是0不可能的了,一般adsl都在25毫秒左右,isdn在135毫秒左右,拨号就在325毫秒以上。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-103305-1.html
其实也就等同于今后任何国家到美国去巡航