世界上最流行的数据库,只想活50年!

世界上最流行的数据库,只想活50年!

世界上最流行的数据库是什么?

? MySQL? ?

都不是,答案是。

sqlite数据库教程

你可能没听说过它,但是它就在你身边的:

每一台智能手机中( 和iOS)

每一台Mac电脑中

每一台 10 电脑中

每一个主要的浏览器中(, ,)

大部分的机顶盒当中

每个PHP和安装目录中

很多流行的桌面应用(微信、QQ、 、 Skype、、、 Adobe ….)

不信的话可以在电脑中搜索一下 “*.db”,看看能发现多少个。

的发明人是 Hipp。

sqlite数据库教程

最近,做了一个重要的决定:支持到2050年!

也就是说,从2000年问世算起,将“只有”50岁的寿命。

到2050年,技术会发生什么变化?还会有人使用吗?

我觉得答案是肯定的。

关系数据库不像别的软件,它保存的是企业的关键数据,是非常稳定的,全球的信息系统在底层都依赖它们,一般情况下是不敢轻易动的。

像,1979年就出现了,现在已经46岁了,还是世界上最大的数据库。

29岁了, MySQL 30了,SQL 36了…… 它们都会继续活下去。

即使出现了全新的、大幅领先关系数据库的数据模型,很多遗留系统也会继续使用关系数据库。

在嵌入式关系数据库领域,几乎是一统江湖,没有对手,它的应用范围如此广泛,活到2050年不成问题。

sqlite数据库教程

为了完成这个宏伟的目标,和团队做出了一些重要的决策:

01

向后兼容

团队承诺保持它的C API 与磁盘格式的向后兼容性,这意味着现有应用在未来几十年升级 时不需重写或迁移,极大降低长期使用成本与数据迁移风险(对长期存储尤为重要)。

这就意味着,你今天存入的数据库的内容,你的孙子辈依然可以轻松访问。

的数据文件就是那个.db,它的格式不管在32位机器上,还是在64机器上,不管在大端还是小端平台上都完全相同。

你可以把数据文件轻松从一个系统复制到另外一个系统(比如从到Linux),无需做任何转换。

02

详尽的文档

的策略非常独特,它虽然开放源代码,任何人都可以下载,但是却不接受外界的代码贡献。

这二十多年,只有为首的三四个人维护。

这个小团队编写了大量的文档,包括的架构,数据库格式,查询计划,字节码引擎、编译期选项等等,非常详尽,让人叹为观止。

sqlite数据库教程

它的文档就像一本“ 教科书”,几乎涵盖了从初学者到系统开发者所有层次的需求。

文档里不仅告诉你“能怎么用”,还告诉你“为什么这样设计”世界上最流行的数据库,只想活50年!,甚至记录某些历史包袱和兼容性考虑。

比如 特有的“ ”(铁道图)来展示 SQL 语法sqlite数据库教程,非常直观,比光靠文字描述更容易理解。

sqlite数据库教程

可以说,的文档在开源软件中是数一数二的。

03

优秀的注释

的注释尤其惊人,注释竟然超过了35%的内容。

我们经常会看到一些模版式的代码注释,说了相当于没说,但是不同,它的注释非常实用,能解释变量和对象的真正含义。

比如 btree.c、pager.c 这些核心文件,都会在开头详细描述 B-Tree、Pager 层的设计原理,让读代码的人不用完全依赖外部文档。

Hipp 很注重可移植性与稳定性,很多注释会解释为什么这样设计、有哪些边界情况需要处理。

注释里经常会提到“这是为了应对某个 bug/某个平台的限制”。

sqlite数据库教程

注释和代码风格统一、简洁。没有花哨的行话,基本是“写给未来的自己/其他人看的”,不像很多项目那样只写函数名的重复解释。

目标就是方便新程序员理解,使其在未来几十年内易于维护。

04

灾难备份

永远不用担心源码被篡改和丢失,因为把源码每个历史版本都做了加密保护,并且自动复制到不同数据中心的服务器中。

此外,全球还有数千个额外的Clone版本在各个私人服务器上。

更有意思的是,说的这三四个人小团队也分布在世界各地,即使某个大陆沉没了,依然可以存活。

05

保守/实用主义

计算机领域发展太快了,新技术层出不穷,每个人都会受到新潮流的影响。

但是开发者尽量避免被最新时髦做法所吸引,他们倾向于编写经得住时间考验的代码,这样的代码应当是“永恒的”世界上最流行的数据库,只想活50年!,让那些“未出生的程序员”在将来也能轻松阅读、理解和维护。

说实话,我看到“未出生的程序员”是又震撼又疑惑,震撼的是今年已经64岁,如果干到2050年,都89了,他这么做,确实是在考虑未来代码的传承。

疑惑的是如果将来技术出现重大变化,还让让未来的程序员来看古老的代码,是不是并不太好?

幸运的是,用的是C语言这样“永不过时的编程语言”sqlite数据库教程,数据库理论又非常稳定,所以他做出这样的选择应该也没啥问题。

06

“变态”的测试

的测试非常变态,它不仅测试了源码中的每个分支,每个判断,甚至考虑了机器指令层面。

它会在不同的平台(例如 、ARM64、32-bit 平台),不同操作系统(Linux//macOS/嵌入式 RTOS)等,不同编译器(GCC、Clang、MSVC、各种交叉编译器)反复执行,对不同优化级别、不同代码生成选项、多次构建的重复检查,找出偶发性/非确定性错误(比如未初始化内存导致的随机行为、竞态、内存重用引发的间歇性崩溃)。

它真正织起来一张庞大的安全网,只要你改动的代码引入了Bug,立刻就会被这张网给捕捉到。

它的深度和重复性可以说是“接近航空级别”,极端严格和全面。

这种长期的严格的承诺,不但让坐稳了嵌入式关系数据库一哥的宝座,也赢得了那些需要长久保存数据机构的信任。

比如世界上最大的图书馆,美国国会图书馆就把确定为保持数字化内容的推荐存储格式sqlite数据库教程,和并列的是XML、JSON 、CSV这样标准的格式。

开放源码,但不接受外界贡献,就这么几个人,精雕细琢,不断打磨,不但搞出了极其精良的代码,极其详尽的文档,更是让成了世界上最流行的数据库。

在AIGC大行其道的今天,依然坚持这种“工匠式”的软件开发,实在是罕见。

正因为有这样执着的开发者,不追逐潮流,不为炫技而妥协,它的稳定性、可靠性和可维护性才得以跨越几十年,成为每一台设备、每一个应用不可或缺的基石。

公告:
1. 本站所有资源来源于用户上传和网络,如有侵权请联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长处理!
6. 本站不售卖代码,资源标价只是站长收集整理的辛苦费!如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
7. 站长QQ号码 2205675299

资源库 - 资源分享下载网 » 世界上最流行的数据库,只想活50年!

常见问题FAQ

关于资源售价和售后服务的说明?
本站所有资源的标价均为本站收集资源的辛苦费,不代表资源本身的价值。软件是高智慧高价值的商品,不可能是白菜价。本站资源标价只是赞助费用,收取的赞助费仅用来维持本站的日常运营!毕竟收集整理资料需要投入云计算资源和站长大量的精力。
代码有没有售后服务和技术支持?
由于代码的运行具有不可预见性,本站不保证代码完整可运行,不提供技术支持和售后服务。 本站原创代码都是站长自己开发的,可以有偿提供技术支持服务。 网站里标明【亲测】的代码都是站长亲测过的,其他的代码由于精力有限,没有一一测试,不能保证代码就一定能够使用,更没有技术支持服务,下载前请自行斟酌。
有没有搭建服务?
由于搭建服务比较费时费力,所以本站除了原创代码外均不提供搭建服务。本站分享代码纯属兴趣爱好,不以盈利为目的,请勿咨询有没有搭建服务,谢谢理解。
链接地址失效了怎么办?
请带上资源链接地址联系客服,工作时间内我们看到后将第一时间回复。
关于解压密码
本站资源一般都没有加密,如果发现需要解压密码的,那么就输入 hao.35dc.com 试试。

发表评论

资源库,由老程序员细心甄别、精心筛选,只为提供优质的源码资源

关于我们 联系我们