国产数据库行业,从未像今天这样热闹。
6 月 1 日,蚂蚁集团自主研发的分布式数据库 OceanBase 宣布正式开源,并成立 OceanBase 开源社区,社区官网同步上线,300 万行核心代码向社区开放。就在几天前,阿里云也对外宣布开源了 PolarDB for PostgreSQL。
而在之前,腾讯云发布首款全自研分布式分析型数据库 TDSQL-A;国产数据库厂商 PingCAP 也发布了 TiDB 5.0 版本……
成型于上个世纪 80 年代,数据库是计算机领域三大基础软件系统之一。早期的关系型数据库以甲骨文数据库为代表,取得了巨大的商业成功。后来出现了 MySQL、PostgreSQL 等开源的关系型数据库。
作为基础性软件以及企业 IT 系统的关键支撑产品,数据库具有牵一发而动全身的特性。
你可能想不到的是,就是这样一个重要的技术,在 2014 年以前,全球数据库市场份额名单中,几乎找不到中国厂商的身影。
如今,随着众多企业入局,国产数据库正在打着一场激烈的翻身仗,在此背景下,国产数据库如何崛起?如何抓住历史的机遇,掌握自己的命脉?成为当前数据库从业者所要思考的问题。
国产数据库不应该只想着替代
最近几年,国产数据库在替代潮流中看到了机遇,无论是互联网阵营的阿里、腾讯,通信厂商华为、中兴,还是达梦、人大金仓等老牌国产数据库,都把主战场放在了“去 O”的存量替代领域,几乎所有的国产数据库都把金融行业的国产化作为最重要的战场,从大型银行、中小城商行、保险公司、证券基金公司,过去几年国产数据库掀起了一个“替代”潮。
这也让笔者想到了刚接触数据库行业时的一个困惑:为什么数据库厂商都喜欢分享自己的数据库产品如何通过测试,最终替换 Oracle 等传统数据库的故事。
后来一些行业从业者对笔者答疑表示,金融行业对于数据库的要求是最高的,可用性要达到 99.999%,这意味着,全年数据库发生故障的时间不可以超过 5 分钟。
而这个要求说白了就是数据库产品要具有高稳定性、强容错性和高安全性。
也正是由于这个原因,取代 Oracle(去 O)等传统数据库成为了多数国产数据库时至今日的奋斗目标。
对此,我们不禁提出了疑问,国产数据库的目标难道只是要替代 Oracle 等传统数据库,换句话来说,我们取代了 Oracle 等传统数据,就代表着我们的数据库产品就已经超越了他们了嘛?
答案当然是否定的。
从 Gartner、DB-Engines 等研究机构最新的报告中不难发现,数据库市场正在出现一个新的趋势:以 Oracle、DB2 和 Microsoft SQL Server 三大巨头为代表的传统商业数据库的市场份额不断下降,而开源数据库和云第三方数据库市场在持续增长。
在这个背后,是数字化转型的浪潮向前涌进。据知名咨询机构统计,到 2025 年全球数据总量将超过 160ZB,全球数据总量的近 20% 将成为影响日常生活的关键数据,近 10% 将变为超关键数据。
伴随这个而来的,除了对数据库有不变的高稳定性、强容错性和高安全性之外,企业在数字化时代又提出了海量,实时、在线的数据分析的能力,这些反而是传统数据库不擅长的。
因此,这对于那些只将目标瞄在替代 Oracle 等传统数据库的国产数据库厂商来说,面对当前数字化转型浪潮下的海量、实时、在线的数据分析的能力则有所欠缺。
数字化暴涨的海量、实时、在线需求,最终落在了分布式数据库和大数据技术栈的肩头上,中长期看又以各种云服务模式的部署为主流。“开源、融合、云化”成为破解数字化时代数据需求的三大法宝。
因此,以后当企业用户提出:你的产品是否有应用在大型互联网公司核心交易系统中嘛?又该如何做解?
开源将成国产数据库重头戏
就在最近几天,阿里云的 PolarDB 和蚂蚁的 OceanBase 相继宣布开源,加上作为先行者的 TiDB,中国数据库第一集团的 TOP ( TiDB,Oceanbase, PolarDB) 都将开源作为战略选择,在业内引发了巨大的讨论。“开源的拐点到了”、“开源成为新一代数据库的主流选择”,有的人甚至因此发问:开源会改变世界吗?
对于这个问题,实在难以找到答案。
但我们可以预见的是,开源将加速成为中国未来发展基础软硬件技术的关键路径。
就在今年 3 月,开源正式被列入十四五规划发展纲要,在数字经济加速发展的大背景下,中国未来五年会“支持数字技术开源社区等创新联合体发展,完善开源知识产权和法律体系,鼓励企业开放软件源代码,硬件设计与应用服务”。
而从全球范围来看,开源也正在成为引领基础软件发展的决定性力量,以全球数据库产品为例,2021 年 1 月,开源数据库首次超过商业数据库,代表着开源数据库已经成为支持数字技术创新和数字经济发展的重要支撑力量。
除此之外,开源也正从互联网公司逐步扩展到了大型企业其他企业中,如戴姆勒集团 CIO 坚定把“开源优先”作为推动创新变革五大举措中的首要举措,可以预见,“开源优先”未来十年不只是互联网公司的专利,也将成为所有企业,所有公共机构未来十年的重要趋势。
在全球科技领域,开源软件成为吸引最牛开发者的法宝,开源软件更酷、更快、更领先的特质吸引着新一代开发者,成为企业获取”工程师红利“的关键。在软件定义世界的时代,得开发者得天下,只有依靠开源的“群众路线”。
但在此前,行业内外对于开源软件是有争议的。
首先是关于开源软件知识产权的纠纷。譬如在国内,个别企业会根据相关规则对开源软件进行修改、衍生,然后发行自己的版本,并把它变成闭源软件。这不但可以看成是具有负面影响的道德问题,还可能面临侵犯知识产权遭受法律追诉的风险。
其次是安全隐患。虽然很多开源项目都由企业或资深专家开发维护,但由于不完全是自己使用,导致贡献者容易对安全性造成疏忽。譬如,知名开源项目爆出安全漏洞的例子多不胜数:OpenSSL Heartbleed、Fastjson 远程代码漏洞、Antd 圣诞彩蛋等等。
最后在商业化方面,有些公司会先行开源,而在产品完成之后又进行闭源进行商业化。同时也因为中国开源文化的不规范,小型技术公司会把开源的东西拿过来加一层界面,然后就说这是自主研发的产品。
此前,虽有不尽人意的地方,但一些基础软件厂商也在一直坚持开源,并取得了一些成绩。
就在今年 4 月,PingCAP 联合创始人兼 CEO 黄东旭就曾表示,他们自主研发并在研发支出就进行开源的分布式数据库 TiDB 经过几年的努力,已经跨越了开源软件的鸿沟。并且高度活跃的开源社区为 TiDB 产品发展带来了飞轮效应。
而之所以会从研发之初,就选择将源代码进行国际开源,因为在其看来,基础软件太过于通用又非常重要,因此获取用户的信任成本非常高。如果选择不开源,一来传播速度会很慢,二来对方的信任成本会很高。第三个最致命的是用户的增长并不会是一种病毒传播式的增长,进而导致产品的迭代速度会变得很慢。
而基于开源的数据库研发迭代版本更快,极端场景的打磨客户更多,社区反馈和贡献更及时,今天全球数据技术的顶级公司都基本以国际开源开发为主。
开源可以为数据库带来了什么?
在探讨这个问题之前我们不妨了解一下数据库的未来发展趋势。
随着数字经济的不断发展,在 Gartner 看来未来数据库发展有着四个趋势:开源、HTAP、云原生以及和大数据技术融合。
面对这样的未来发展趋势,开源则可以完全可以帮助数据库向前发展,我们不妨还以 TiDB 为例。
就在今年 4 月,TiDB 发布了 5.0 版本,而最新发布的 5.0 版本在原有 HTAP 引擎 TiFlash 的基础上引入 MPP 架构,可以为其提供与存储匹配的分布式计算引擎,进一步提升海量数据下的并行计算与分析能力。
同时,TiDB 5.0 基于分布式架构,支持云原生与多云,可以弹性扩展吞吐或存储,轻松应对高并发、海量数据场景,实现一栈式数据服务。企业级用户和互联网用户都可以通过一套 TiDB 系统构建数字场景应用,而不必关注底层架构。
此外,目前市面上大部分的大数据技术也都是基于开源来进行研发的。如 Hadoop、Spark、Flink…… 而由于 TiDB 一直坚持国际开源,这也让 TiDB 为代表的数据库可以融合当前大数据技术栈。
而这也让企业用户,只需要通过在数据库之上采用增加大数据“外挂”的方式,就可以应对未来企业所需要进行的结构化数据、半结构化数据、以及非结构化数据的融合分析处理。只需要一个接口,就可以解决未来企业面临的数据问题。
当了解到这些趋势之后,我们要清楚的是,PingCAP 也才成立于 2015 年,虽然成立的时间很短,但其能够却能够保持着一年一个版本的更新。并在现在能够在技术上取得领先,并在全球获得了 1500 家用户认可的。
而在这背后则正是开源自主创新所带来的回报。
因为,数据库产品作为一个“需要被用出来”的基础软件,国际开源场景可以为其发展提供三个方面的助力:一是全球领先的规模化场景,二是开放透明的协作机制,三是汇集全球创新智慧。
而国际开源社区的运营和高效协作是实现三大因素汇聚的载体,在这个“开源创新”的飞轮里面,规模化场景推动了开放协作,开放协作带来了全球智慧,然后进一步推动规模化场景的扩大和用户的增加,再进入更大范围的开放协作,带动更多全球工程师的参与,形成了一个飞轮效应,推动产品的向前发展,从而行程技术领先。
国产数据库应该有国际梦
业界总是喜欢在我国企业自主研发的基础软件前加上“国产”两个字,如 OceanBase、Polar DB、TiDB 以及昨天刚刚发布的鸿蒙系统……
但头顶着国产的标签,就只能在国内使用嘛?
黄东旭此前说到:“我们做的东西有点像在做一把锤子,中国人需要锤子,美国人也需要锤子,尤其是基础软件,我觉得是一个属于全人类的东西。”
当前数字化技术正在推动各个企业向前发展,进行数字化转型。
如果说此前由于用户不了解,需要本地部署是的国产数据库无法出海的话,国际开源社区和云化部署则将可以将其变为现实。
因为随着开源潮流不断的从互联网公司流入到传统大型企业,开源也就成为了国产数据库,为获取规模场景,社区人才,进而加速打磨和迭代产品的最佳模式,尤其是降低了海外用户对数据库产品的信任门槛。
同时随着数据库云化趋势的加快,数据库的部署也将可以足不出户,直接远端的部署在公有云的基础服务上面,通过云端方式服务全球客户,实现可以可以跨越地理限制的云原生部署模式。
类似地,基于云原生架构的数据库产品可以数据库提供商直接提供跨公有云,混合云的数据库产品,大大降低了数据库厂商在软件授权时代需要全球重度部署销售与技术服务团队的成本,使得云端出海成为轻量化,高效服务的创新模式。