案例库 · 软件与 IT · 技术决策 · 2000–2015
SQLite让数据库变成一个文件,成为全球部署最广的数据库
无服务器、零配置,SQLite将SQL嵌入数十亿应用,而非要求安装
SQLite Consortium
那一手
2000年,D. Richard Hipp为美国海军的一个合同项目需要一个SQL引擎,但该项目无法运行数据库服务器。他构建了SQLite作为进程内库:无服务器进程、无配置、无安装——整个数据库就是一个跨平台文件,应用直接读写。
这一设计牺牲了服务器数据库的多用户并发,换来了极致的简洁:一个完整的SQL数据库,包含表、索引、触发器、视图,全部在一个文件中,支持ACID事务,断电不丢失,测试套件在模拟故障下运行代码。
这种形态使SQLite成为手机、浏览器、汽车、家电和桌面应用的默认嵌入式数据库,美国国会图书馆推荐将其作为存储格式。该项目报告称,它是全球部署最广的数据库,有数十亿份副本在使用。
为什么管用
- 零配置意味着数据库在任何应用中首次运行即可工作,无需DBA
- 单个跨平台文件可在机器、操作系统和字节序之间移植
- 公有领域许可消除了所有法律和采购障碍
- 航空级测试使可靠性成为竞争对手无法随便宣称的功能
值了多少做库,不做服务器:数据库进程内嵌神来之笔
可以搬走什么
最低摩擦版本的技术赢得分发:删除服务器、安装和配置,SQL就能到达完整数据库无法触及的地方。
后来呢
SQLite成为iOS和Android应用、浏览器以及无数嵌入式系统背后的存储引擎,其文件格式被国会图书馆推荐用于存档。‘数据库即文件’的理念也影响了新的嵌入式引擎和行业对本地持久化的默认答案。
资料来源
发现哪里写错了?告诉我们。