新的一年,新的开始,2020年1月的 DB-Engines 数据库流行度排行已然出炉。这个月的榜单可以用八个字来形容,那就是:波澜不惊,万里挑二。
在前十名的榜单上,本月各数据库产品的波动都相当微弱,很多产品环比分值仅有1分左右的变化。
一个较为显著的变化是 SQLite 超过了 Cassandra ,跻身第10名;而相较 2019 年1 月,Redis 则是超越了 Elasticsearch ,成为第 7 名。
SQLite 是什么数据库?可能很多人并不了解。我曾经问云和恩墨的小伙伴:你认为世界上装机量最多的数据库是什么?
是 Oracle 、MySQL … ?
都不是。
是 SQLite,它无处不在,而你又可能从未察觉。在每个人的手机上,可能都存在几十个 SQLite,我们最熟悉的微信,客户端所有的聊天记录,就都存储在 SQLite 数据库中。
它非常稳定、快速,正如他们官网上所描述的:Small. Fast. Reliable. Choose any three!
是不是很 Cool ?
那么 SQLite 的可靠性有多高呢?你是否遭遇到过微信记录损坏和丢失的情况?(欢迎留言交流)
这就和 SQLite 数据库相关了,一旦这个数据库损坏,用户的聊天记录就会丢失(话说,我修过这个库的)。
根据微信的官方数据:SQLite 全网的损坏率大概是0.02%,也就是万里挑二。虽然概率很低,但是微信用户基数太高,所以也不得不专门去解决这个问题。
在 SQLite 的官网上,他们这样描述自己:SQLite是世界上最常用的数据库引擎。SQLite内置于所有手机和大多数计算机中,并捆绑在人们每天使用的无数其他应用程序中。
那么这个神奇的数据库有什么奇特之处呢?我摘录了官网上的一些文字以为致敬:
SQLite的代码是公开的,可以免费用于任何目的,无论是商业目的还是私人目的。
SQLite是世界上部署最广泛的数据库,其应用程序数量超出我们的想象。
SQLite直接读取和写入普通磁盘文件。具有多个表,索引,触发器和视图的完整SQL数据库包含在单个磁盘文件中。数据库文件格式是跨平台的-您可以在32位和64位系统之间或在big-endian和little-endian体系结构之间自由复制数据库。
SQLite 不是Oracle的替代品,而是fopen()的替代品
SQLite是一个紧凑的库。启用所有功能后,库大小可以小于600KiB
SQLite代码库由一支全职从事SQLite工作的国际开发人员团队支持。开发人员继续扩展SQLite的功能并增强其可靠性和性能,同时保持与已发布的接口规范,SQL语法和数据库文件格式的向后兼容性。源代码对于任何想要它的人都是绝对免费的,但也可以提供专业支持。
SQLite项目于2000-05-09开始。未来总是很难预料的,但是开发人员的目的是要在2050年之前支持SQLite。设计决策时要牢记这一目标。
我们的开发人员希望您发现SQLite有用,并且恳请您很好地使用它:制造快速,可靠和易于使用的优质产品。当您宽恕他人时,请寻求自己的宽恕。就像您免费获得SQLite一样,您也可以免费付出您的产品。
致敬了 SQLite,再让我们致敬 DB2 。IBM 作为关系型数据库理论的缔造者,却在这一领域节节后退,未免令人扼腕。
言归正传,从 DB2 的增长曲线来看,自2017年9月开始至今,DB2 就处于持续的衰退之中,如果说 DB-Engines 更侧重英语语言国家,那么在中国 DB2 的市场更在持续萎缩之中,传统金融行业的存量 DB2,也在快速的被替换当中,在去 DB2的过程中,Oracle 和 MySQL 成为了受益者。
可以预见,在很长的历史周期内,Oracle、MySQL、Microsoft SQL Server 三足鼎力的情况仍然不会改变:
数据江湖风波盛,群雄逐鹿未知雄?