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

Python分析盘点2024全球流行音乐:是哪些歌曲榜单占领了我们? 这些代码都是不需要思考的,只要打开Python做数据分析,你首先就写好,或者直接复制就行,我都是把常用代码保存好,要用的时候就调出来用,这样省时间。列的名称都是英语,我借助了百度做了下翻译:Track.Name-曲目;Artist.Name-歌手;Genre - 类型Beats Per Minute (BPM) - 每分钟节拍,也就是节奏.Energy - 能量 - 分数越高,代表能量就越大;Danceability - 舞蹈性-分数越高,代表你越容易因歌而舞; 阅读详情

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

Oracle? MySQL? PostgreSQL?

都不是,答案是SQLite。

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

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

每一台Mac电脑中

每一台Windows 10 电脑中

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

大部分的机顶盒当中

每个PHP和Python安装目录中

很多流行的桌面应用(微信、QQ、 DropBox、 Skype、iMessage、WhatsApp、 Adobe Acrobat Reader....)

......

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

SQLite的发明人是Richard Hipp。

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

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

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

我觉得答案是肯定的。

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

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

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

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

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

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

01

向后兼容

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

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

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

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

02

详尽的文档

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

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

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

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

文档里不仅告诉你“能怎么用”,还告诉你“为什么这样设计”,甚至记录某些历史包袱和兼容性考虑。

比如SQLite 特有的“Railroad Diagram”(铁道图)来展示 SQL 语法,非常直观,比光靠文字描述更容易理解。

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

03

优秀的注释

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

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

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

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

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

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

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

04

灾难备份

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

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

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

05

保守/实用主义

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

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

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

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

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

06

“变态”的测试

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

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

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

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

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

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

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

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

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

47 | 全球听众最多的50首歌曲 该数据集包括23486行和10个特征变量。每行对应一个客户评论,并包含以下变量:Track.name:曲目的名称艺术家姓名:艺术家姓名曲目类型每分钟的节奏能量:一首歌的能量-值越高,能量越大。歌曲舞蹈性:舞蹈性越高,就越容易跟着这首歌跳舞。响度:dB值越高,歌曲越响。活性:活性值越高,歌曲越有可能是现场录制的。价格:价值越高,歌曲的积极情绪就越强。长度:歌曲的持续时间。音质:值越高,歌曲的音质越好。言语:价值越高,歌曲包含的口语词越多。流行:歌曲价值越高越受欢迎。中文名称。 阅读详情

相关推荐

偏差平方和说明什么_共同方法偏差检验之潜在误差变量控制法的Amos操作

潜在误差变量控制法是在结构方程模型中,将共同方法偏差作为一个潜变量加入模型,如果在包含方法偏差潜变量情况下模型的显著拟合度优于不包含共同方法偏差潜变量的情况,那么共同方法偏差效应就得到了检验,包含共同方法偏差潜在变量的模型,对于预测与效标变量关系的估计则控制了共同方法偏差。具体操作如下:因为这个过程也是基于因子分析的基础上进行的,关于绘制模型以及运行等过程不再介绍,请参考前面关于“合成信度 ”的相...

weixin_28730927的博客 2367

MySQL VS PostgreSQL,谁是世界上最成功的数据库?详细分解!

StackOverflow《2023 技术调查》中,PostgreSQL 超越 MySQL 成为了最受欢迎的数据库。专业的开发者更倾向于使用 PostgreSQL(有50%的人选择使用),而那些正在学习编程的人则更喜欢使用 MySQL(有54%的人选择使用)。于是有同学得出结论:PostgreSQL 现在是全世界最流行的数据库!PostgreSQL 是开发者最喜爱欣赏的数据库!PostgreSQ...

极客重生 544

camera 知识速查

本文总结了Camera开发中的常见问题排查方法和关键技术点。主要内容包括:I2C/MIPI不通的排查步骤、时序问题分析方法、Sensor/AF/Flash/PDAF的Bring Up流程、OTP调试方法、PDAF原理及调试、CTS/ITS问题解决思路、AE震荡解决方案、Systrace性能分析方法、Flicker产生原理、Tombstone问题定位等。还涉及V4L2框架解析、问题定位分层方法、Sensor Setting注意事项、时钟信号概念、第三方应用卡顿排查、大光圈概念、Monkey测试方法。

qq_41665131的博客 785

2021 年4月数据库流行度排行榜出炉!Snowflake 和 Clickhouse上升迅速!

作者 | 局长来源 |https://www.oschina.net/news/135658/db-engines-ranking-202104DB-Engines 4 月份流行度排行已...

程序猿DD 1146

lvgl 实现表格table,并且固定表头

嵌入式实现table,lvgl 实现原生表格table组件

m0_61704502的博客 1273

北京途游游戏后端开发面经

北京途游游戏后端开发面经 我面试岗位是基于Python的后端开发工程师,主要是搞游戏的服务器开发。面试一共分了两轮,之后说是看看其他的候选人再定,感觉凉凉~~ 由于受到此次新型冠状病毒疫情的影响,本次面试采用视频面试的方式,下面是面试的时候面试官提的问题,python的基础知识还是问的比较多的。  一面:(32分钟微信视频)  简单做下自我介绍,   1.说一下你开发过的项目,挑一个说下你都做了...

weixin_45603043的博客 2129

2021 年最新数据库排行榜出炉!

对于排名 20 之后的数据库,以年为维度,排名显著上升的数据库有 Snowflake 和 Clickhouse,Snowflake 由去年同时期的第 100 名上升到现在的第 29 名,后者也从第 71 名上升至第 50 名。这份榜单分析旨在为数据库相关从业人员提供一个技术方向的参考,其中涉及到的排名情况并非基于产品的技术先进程度或市场占有率等因素。后起之秀 PostgreSQL 和 MongoDB 依旧保持着稳步上升的趋势,分数与上个月相比有小幅度增加,与去年同期相比也平均增加了 40 分左右。...

喜欢打酱油的老鸟 4542

Nginx下ModSecurity模块安装详细教程

本文提供了在Nginx 1.28.0上安装ModSecurity v3的完整教程。首先需安装编译依赖,然后从源码编译安装ModSecurity库并设置优化参数。接着编译Nginx动态模块并配置加载。核心配置包括设置规则引擎、日志路径及性能优化参数。安装OWASP核心规则集后,在Nginx站点配置中启用ModSecurity。最后测试规则有效性并给出性能优化建议,如规则排除、精简规则集等。整个过程包含详细的命令和配置示例,确保安全防护功能正常运作。

深山技术宅的博客 1784

2018年GitHub上最流行50大Python开源项目(上)

近日开源众包平台IssueHunt(这是一个开源项目的赏金平台)评选出了2018年GitHub上最流行的50个Python开源项目   下面我们一起来看看上榜的项目都有哪些:     1) TensorFlow Models     如果你对机器学习和深度学习感兴趣,一定听说过TensorFlow。TensorFlow Models是一个开源存储库,可以找到许多与深度学习相关的...

大禹编程的博客 6523

labview高低拼接的理解

计算机的一个字节由8位组成,无符号的8位整形表示的范围为0~255,范围太小了,所以用双字节,即16位整形表示更大范围的数字0 ~65535。2.labview中的高低拼接实质是高8位字节左移8位与低8位字节相加,结果是双字节整形。

qwerqwerdhr的博客 838

【数字孪生与仿真技术】06:航天器系统建模与验证全流程实战:从多学科建模到数字孪生(附完整代码与工业案例)

摘要:航天器系统开发面临多学科耦合强、验证流程复杂、可靠性要求极高的挑战。本文基于MATLAB/Simulink平台,系统阐述航天器从多域建模、动力系统开发到任务验证的全流程技术框架。内容涵盖Modelica统一建模规范、光伏-电池联合供电系统仿真、基于模型的需求追溯方法、蒙特卡洛可靠性分析及硬件在环测试等核心技术,并结合James Webb太空望远镜电力系统案例,展示工业级应用实践。文中提供完整的Simulink模型代码、仿真结果及流程图,最后探讨数字孪生与AI增强技术在航天器在轨运维中的未来应用。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1373

DB-Engines 3 月份流行度排行已更新(基于 2 月份的整体数据变化)

DB-Engines 3 月份流行度排行已更新(基于 2 月份的整体数据变化)。 从总榜来看,排名前十数据库唯一的变动是 Microsoft Access 从二月份的第 11 名上升至现在的第 10 名,分数较上个月增加了 3.97 分,总分为 118.14。若保持这种趋势,下个月有望再上升至第 9 名。 排名前六的依旧保持不变:Oracle、MySQL、Microsoft SQL Server、PostgreSQL、MongoDB 和 IBM Db2,由于这几个数据库各自都拉开了不小的差距,相信这个排名

心猿问道的博客 875

uniapp - 实现扫码功能自定义扫描二维码/条码界面+手电筒轻触照亮+扫码屏幕添加手动输入框,手机扫描二维码并跳转过程,调用手机原生摄像头进行扫码且自动识别执行事件(uniApp安卓苹果App端)

uniapp,app端,安卓app,苹果ios,uniapp扫码识别,二维码展示和扫码,uniapp如何实现扫码功能,uni-app实现扫码功能,二维码和一维码/条码扫描,UniApp实现扫描二维码,uniapp开发原生app页面的扫码功能,自定义扫码界面,uniapp怎么调用扫一扫功能,app自定义扫码界面,uniapp 自定义扫一扫页面,扫码手电筒功能,自定义扫描框,扫码报错怎么办,扫码黑屏,扫一扫摄像头黑屏,uniapp扫码原生插件,最新扫码组件,连续扫码,uniapp APP扫码,扫码后如何处理跳转

✅ 精选推荐文章 1万+

MySQL VS PostgreSQL,谁是世界上最成功的数据库?

# 关注并星标腾讯云开发者# 每周1 | 鹅厂工程师带你审判技术#第5期|成江东:谁是世界上最成功的数据库?StackOverflow《2023 技术调查》中,PostgreSQL 超越 MySQL 成为了最受欢迎的数据库。专业的开发者更倾向于使用 PostgreSQL(有50%的人选择使用),而那些正在学习编程的人则更喜欢使用 MySQL(有54%的人选择使用)。于是有同学得出结论:Po...

QcloudCommunity的博客 879

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

2019年最流行的50款开源软件

大数据 1. Hadoop Apache 主持的这个项目是最广为人知的大数据工具。众多公司为 Hadoop 提供相关产品或商业支持,包括亚马逊网络服务、Cloudera、Hortonworks、IBM、Pivotal、Syncsort 和 VMware。知名用户包括:阿里巴巴、美国在线、电子港湾、Facebook、谷歌、Hulu、领英、Spotify、推特和雅虎。 支持的操作系统:Window...

liinux-Talk is cheap,show me the code. 1330

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

2021 年最新数据库排行榜出炉!看到 Redis 排名,我笑了。。

点击关注公众号,Java干货及时送达授权转自:OSCHINA,作者:局长 原文:https://www.oschina.net/news/135658/db-engines-ranking...

Java技术栈,分享最主流的Java技术 2247

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

DB-Engines 5月数据库排名:MySQL或将超越Oracle?

导读:DB-Engines最近发布了2021年5月份的数据库排名。该网站根据数据库管理系统的受欢迎程度对其进行排名,实时统计了371种数据库的排名指数。前20名的排行情况详见下图来源:华章...

华章IT官方博客 1371

GitHub上50个最受欢迎的PHP开源项目【2019】

2019年过去一大半了,PHP中文网为你总结整理下GitHub上在2019年都有哪些流行的PHP相关开源项目,以下是按照GitHub Stars排序的,欢迎参考! GitHub上50个最受欢迎的PHP开源项目【2019】 1、Laravel Laravel是一个为Web开发者打造的PHP开发框架。 GitHub Stars: 43.5k+ 网址:https://github.com/larave...

weixin_44056915的博客 7307

2024年04月数据库流行度最新排名

一个数据库被搜索的次数越多,这个数据库就被认为越受欢迎。原始数据来自谷歌Trends。如果您相信集体智慧,那么TOP DB索引可以帮助您决定在软件开发项目中使用哪个数据库。

AI的博客 2137

2023 年6月开发者调查统计结果——最流行的技术(1)

这是开发人员的声音。有趣的是,Heroku是去年学习编码的人使用最多的云平台,但它下降到第五位。

逆境清醒的博客 2486

2023年01月数据库流行度最新排名

一个数据库被搜索的次数越多,这个数据库就被认为越受欢迎。原始数据来自谷歌Trends。如果您相信集体智慧,那么TOP DB索引可以帮助您决定在软件开发项目中使用哪个数据库。

AI的博客 615

DB-Engines:Snowflake荣获2021年的年度DBMS

根据 DB-Engines 网站的数据,Snowflake 荣获2021年度数据库。主要信息如下:在去年的DB-Engines排名中,Snowflake是在参选的383个监测系统中最受欢迎...

Enmotech的博客 267

世界上最流行的软件,抛弃了 Git!

你好,我是坚持分享干货的 EarlGrey,翻译出版过《Python编程无师自通》、《Python并行计算手册》等技术书籍。如果我的分享对你有帮助,请关注我,一起向上进击。世界上使用最流行的软件是什么?Windows ? Android? Office ?都不对!答案是 SQLite !一个嵌入式数据库。你可能没听说过它,但是它就在你身边的:每一台智能手机中(Android 和iOS),Mac电脑...

codingpy的博客 127

2021 年最新数据库排行榜出炉!Oracle 稳坐第一,MySQL 穷追不舍。。

授权转自:OSCHINA,作者:局长**原文:https://www.oschina.net/news/135658/db-engines-ranking-202104 DB-Engines 4 月份流行度排行已更新,基于 3 月份的整体数据变化。 从总榜来看,前十数据库的排名和上个月保持一致。 虽然排名没有变动,但单个数据库的分数却变化不少。 稳居前三的 Oracle、MySQL 和 Microsoft SQL Server 分数出现了较大幅度的下跌,分别减少 46.82、34.14 和 7.33 分。

Java技术栈,分享最主流的Java技术 2301

2024年9月中国数据库流行度排行榜:TiDB重回前三,GoldenDB问鼎前五

9月墨天轮排行榜解读新鲜出炉!本月榜单前五变动较大,TiDB时隔半年重归第三,GoldenDB再次攀升跻身第五,此外亦有部分产品表现不俗,一起来看更多排名情况与解读!

Era666的博客 8599

2023年11月数据库流行度最新排名

一个数据库被搜索的次数越多,这个数据库就被认为越受欢迎。原始数据来自谷歌Trends。如果您相信集体智慧,那么TOP DB索引可以帮助您决定在软件开发项目中使用哪个数据库。

AI的博客 643
上一篇: 我和李想的差距,从初中就彻底拉开了!
下一篇: 新一代操作系统来了,普通人三分钟就造出一个App!
码农翻身
码农翻身 《码农翻身》作者 《码农翻身》作者
博客等级 码龄8年 3万+粉丝 1084原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值