SQLite官文翻译(一):关于SQLite


官文地址:http://www.sqlite.org/about.html

1 开源


SQLite是开源的,处于公有领域中,可免费用于任何目的,无论商用还是个人使用。

2 嵌入式数据库


SQLite是一个嵌入式的数据库引擎。与大多数其他SQL数据库不同,它没有单独的服务器进程,SQLite数据库的表/索引/触发器/视图都包含在一个单独磁盘文件中,SQLite直接读写此磁盘文件。其数据库文件格式可跨平台,用户可在32位/64位系统间,低字节序/高字节序架构间拷贝,因而使其成为了流行的应用程序文件格式。

3 自包含/无服务器端/零配置/事务型


自包含


最大程度实现了自包含,其仅需要外部库或操作系统最小的支持。这使得它很适用于嵌入式设备,也适用于各种各样不同配置的电脑上,无需修改而直接在应用内部调用。

无服务器端

大多数SQL数据库引擎实现为一个单独的服务器进程,想要访问数据库的程序,需要与数据库服务器实现进程间通信(如TCP/IP)来发送请求和获取返回结果。而SQLite没有中间的服务器进程,想访问数据库的程序可直接读写磁盘上的数据库文件。

零配置

SQLite使用前无需安装,没有配置文件,没有服务器进程需要启用/停止/配置,无需管理者创建新的数据库实例或给用户授权。使用前无需告知系统其在运行,系统崩溃或断电后无需恢复。其他数据库引擎一旦你使它跑起来,也许会运转良好,但开始的安装和配置过程常常很吓人。

事务型

事务型数据库的所有变化和查询具有原子性,一致性,隔离性和持久性。SQLite即使在程序崩溃,系统崩溃或断电时,也保证一个事务内所有变化要么全部执行,要不都不执行。

4 紧凑型库

全部特性启用的话,库的大小能少于500K,具体看目标平台和编译优化的设置。(64位代码的话会大些,一些编译优化,如最大限度的函数内联,展开循环等会使得目标代码更大。)如果省略可选功能,SQLite库的大小可减至300K。SQLite可以在最小的栈空间(4K)和最小的堆空间上运行(100K),使其成为内存受限的小型设备(如手机,PDA,MP3等)的流行之选。内存使用和速度之间需要做出折中,内存多SQLite通常运行更快,不过即便在小内存的环境,其性能通常也很好。

5 测试充分

SQLite每个版本之前都经过了充分的测试,有着可靠的声誉。大部分SQLite源码纯粹是用于测试和验证。自动化测试跑了数以百万计的测试用例,包含数亿的单个SQL,测试覆盖率达100%。SQLite对内存分配失败和磁盘I/O错误表现优雅。事务是ACID的,即便是出现了系统崩溃或电源故障中断。使用特殊的测试工具来模拟系统故障,这些都通过自动化测试予以验证。当然,故障依然存在。不过不像其他类似的项目,尤其是商业竞品,SQLite诚实地处理所有的故障,提供故障列表和及时的故障报告和代码变更表。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值