▉ 常见的数据库管理系统排名(DBMS)
目前互联网上常见的数据库管理软件有Oracle、MySQL、MS SQL Server、DB2、PostgreSQL、Access、Sybase、Informix这几种。以下是2024年1月7日DB-Engines Ranking 对各数据库受欢迎程度进行调查后的统计结果:(查看数据库最新排名:db-engines.com/en/ranking)
▉ 为什么要发展国产数据库?
数据库是企业的核心资产,其中存储了大量的敏感信息和重要数据。国外数据库产品存在被国外政府或商业机构窃取、篡改数据的潜在风险,这就需要国产数据库来确保数据的完整性和安全性。
当时九十年代,Oracle席卷中国,占据了中国很大的市场。说到Oracle历史,这里提到一个小事,那就是:
1997 年 1 月 27 日,埃里森乘专机飞临北京,冯星君通过关系安排国宾车队去接,国宾车队的车一直开到跑道上,一大队车闪着灯很威风。机舱门开了,但人总是不出来,等了 20 分钟,从飞机上跳下来一个穿防弹衣的黑人保镖,他对迎接的车队说:「所有的车门全部打开,我要检查有没有炸弹。」一边是美国来的大老板,一边是同样惹不起的国宾车队,这哥们太难受了,他忍了。
第二天,埃里森要到长城拍推广网络计算机的电视片,事前吩咐冯星君找了 20 个小学生参与拍摄。约好早上 8 点,直到 9 点,埃里森都不起床。当天零下 20 多度,大巴没有暖气。冯星君去求埃里森:「那些小孩要冻死了。」冯星君眼泪都快流出来了,埃里森才勉强答应启程。
去了没多久,埃里森让副手打回电话给冯星君说:「埃里森挺喜欢长城,玩得挺高兴,中午就不回来了,你取消下午 3 点跟XX(某位领导人)的会面吧。」这哥们差点晕过去。「下午的会面不是开玩笑的,如果我 2 点钟看不见埃里森,我辞职,我要走了,这个责任我担不起。」那边一听怕了,埃里森一行匆匆赶回人民大会堂,那个黑人保镖还要跟着进去,说要保护老板,吵闹得不可开交。
虽然是一件疯传的小事,但足可以看到Oracle在当时有多牛,而随着国产数据的发展。2019年,甲骨文干脆裁掉了北京研发中心的500名员工。甲骨文走到这一天也不奇怪,一方面是甲骨文在中国的业绩在走下坡路;另一方面是埃里森的傲慢和偏见,他之前说过一句很现实的话:"中国工程师绝不能超过美国工程师,因为中国是美国最大的竞争对手"。
小了,格局真的小了。
所以说,无论是芯片、操作系统的国产化发展史,还是数据库的国产化经历,都在提醒着我们,核心东西没有捷径,市场换技术在绝大多数时候都是一厢情愿,你能依靠的永远只有自己。
▉ 国产数据库的分类
由于国产数据库发展较晚,所以大多会仿照国外数据库来发展。经过一段时间的整理后,发现虽然国产数据库种类很多,但归根结底,都是参考了国外大厂数据库来开发的,因此,根据收集来的国产数据库,我们进行了归类总结,各位看官向下看:
可以看到基本上可以分为Oracle、MySQL、Postgresql、Informix等四个系列。
Oracle系
K-DB由浪潮和韩国第一大企业级软件提供商Tmax公司共同研发的企业级数据库系统,这个库和Oracle很像很像,要是不提醒你,在操作的时候可能你会觉得,这不就是Oracle么,具体Tmax是如何能够开发出这么牛掰的数据库,这不是咱们今天的话题,只要清楚,他和Oracle很像很像就行了,况且还和浪潮共同研发,国产之中跑不了了。
达梦MD达梦一直宣传自己很像Oracle,包括集群,DG,包括开发的SQL,运维的命令。这和K-DB有一拼的,他们到底是不是亲兄弟,我们也无从而知。稳定性有待测试,功能上和Oracle比较像。它自己都说就是为了去O的发展战略。
MySQL系(均分布式)
SequoiaDB 巨杉数据库,官网称已经有超过50家银行核心生产系统规模使用,100%兼容MySQL语法。从根源上来讲,MySQL数据库处理事务关键在于存储引擎,我们常用的是Innodb(MySQL 5默认存储引擎),归Oracle所有。而巨杉自研数据库,是将存储引擎换为巨杉自己的,因此也不难理解100%兼容MySQL语法了。
GoldenDB 中兴研发的数据库,基于MySQL开发,据了解中信银行核心使用的就是GoldenDB。
TDSQL 腾讯自研数据库,基于MySQL开发,分布式,主打云上
TIDB 由PingCAP研发,GO开发,兼容MySQL协议和生态,分布式。目前亿联银行以其为主。
OceanBase阿里出品,阿里内部据说目前已经用OB完全替代了Oracle,能够支撑起双十一真的是很厉害了。但具体能否应用到传统金融上,那还要去实践。
PolarDB阿里出品,到底和OB啥关系,有人说是内部竞争,但从介绍来看,PolarDB主打的还是云上,定位和腾讯的TDSQL差不多。
PostGreSQL系
GaussDB 华为出品的高斯数据库,已经在工行进行了大量的实践,将Teradata进行了充分的替换,恐怖吧,华为确实是干大事的企业。相信不久的将来也能像做手机一样,厚积薄发!
KingBaseES 人大金仓数据库,由中国人民大学及一批最早在国内开展数据库教学、研究与开发的专家基于PG研发的。
HighGo DB 关于瀚高的资料不多,从百度百科上找到瀚高是中国唯一一家涉及基础数据库系统软件开发研究的民营企业,是国内优秀软件企业、高新技术企业。
Informix系
Informix 老牌数据库了,为什么也纳入国产了呢?这是因为IBM将Informix源代码出售给了中国的南大通用。话又说回来,这不是买断,是授权!后期IBM再将Informix升级改造,南大通用要想使用,还得再拿票子。早期Informix被Oracle已经替换的差不多了,现在再替换会Informix系,还是挺难。
Gbase 南大通用基于Informix研发的国产数据库,又收了Informix源代码,可谓如虎添翼。就看中国用户买不买账吧!
▉ 国内数据库迎来井喷发展?
数据库系统的萌芽出现于20世纪60年代。当时计算机开始广泛地应用于数据管理,对数据的共享提出了越来越高的要求。传统的文件系统已经不能满足人们的需要。能够统一管理和共享数据的数据库管理系统(DBMS)应运而生。
随着关系模型有了完善的理论支撑后,以Oracle、DB2到SQL Server为代表的数据库开始在各大企业中应用,商业数据库迎来了第一波高速发展。
但关系数据库有一个比较大的问题就是贵,只有那些比较大的企业才能用得起数据库,对于一些中小企业来说,随着业务的增长,也急需要一款能用的数据库出现,于是MySQL、PostgreSQL 等数据库以开源、免费和简化版的形态推动了数据库历史上第二波更加广泛而影响深远的发展,形成了数据库发展的第二波浪潮。
2000 年左右,基础架构还没有反应过来,从应用层到中间件层开始解决集中式解决不了的问题,以 Cobar,MyCAT 为代表的中间件方案的分布式架构出现。一直到 2010 年左右,以 Google Spanner、 OceanBase 等为代表的原生分布式架构出现,陪伴互联网高速发展的十余年,产品逐渐打磨成熟并开始商业化。
随着互联网的发展,现代应用处理的数据量更大,也会经常面对脉冲业务的冲击,应用架构通过服务化架构和容器技术具备了更大的数据处理能力和弹性伸缩能力,从而间接要求数据库具备海量数据处理能力和弹性伸缩能力,同时业务的分布式和垂直拆分会要求数据库也是分布式的,但分布式有状态数据如何保证一致性,又如何应对大量数据库实例管理的复杂度,这在传统集中式数据库的架构上是极大的挑战。
所有这些新的问题表明,互联网时代的架构已经无法用传统的数据架构和思路来解决这些新问题了。如果还是治标不治本,通过外挂或者各种外部软件和数据库软件拼装组合的方式来应对这些复杂问题,只会让复杂度和风险变得更高。因此,要构建现代应用架构的摩天大厦必须彻底重构数据架构的地基。
近年来,国际局势复杂多变,国外持续加大对中国科技产业的制裁力度,先后将数百家中国高科技企业列入出口管制实体清单;俄乌冲突爆发后,众多头部 IT 厂商陆续停止对俄罗斯的产品供应。在不可控国际因素及国内数字经济转型需求的驱动下,我国IT 产业自主可控的紧迫性愈加凸显,为了解决核心技术"卡脖子"的问题,科技自立自强已是我国的一项国家战略,通信、计算机、军工和医疗器械行业将成为国产替代产业的重要领域。
如今,国产数据库已是百花齐放。
除了传统数据库厂商(人大金仓、达梦、神舟通用、南大通用等),也有大厂的"云数据库"(阿里云、腾讯云、华为云等),还有新兴数据库,比如PingCAP的通用数据库TiDB,涛思数据的时序数据库TDengine、欧若数网的图数据库Nebula Graph。此外还有巨杉、中兴、浪潮、易鲸捷等的数据库产品,都登上了国内外流行度榜单。
国产数据库的发展,将迎来属于自己的时代!