博客 大卫与巨人的战争:国产数据库的挑战之路

大卫与巨人的战争:国产数据库的挑战之路

   卓袋鼠   发表于 2022-03-29 21:10  441  0

这两年,作为基础软件三驾马车之一的数据库赛道突然火热了起来。

先是数据仓库Snowflake以史上最大软件IPO的700亿美元上市,接着PingCAP、巨杉网络等数据库科创公司接连刷新融资记录,传统大厂阿里、华为等也在市场上高举高打,推广自己的数据库系统,在国产替代的大背景下,大家都致力于去O化,把目标共同指向了数据库行业巨头:Oracle。

挑战在数据库领域称霸了几十年的巨人Oracle?未免太自不量力了吧。

其实不然。

科技行业没有长盛不衰的巨人,在这片不断涌现新技术与新思想的土壤上,总能孕育出革命的火种,想当初Oracle也是踩着蓝色巨人IBM的肩膀上位的,谁又能断言不会出现下一个大卫来挑战巨人歌利亚呢?

01 挑战巨人的三个条件

一个创业公司想要挑战行业巨头,必须具备三个前提条件:①技术革命,②市场浪潮,③人才红利。

  • 技术革命的涵义是,需要有全新的技术发展思路,能够从更高的维度突破旧有的生产力瓶颈。

这个技术发展思路可以是技术层面的,比如涡轮喷气式发动机轻松突破音障,从而取代活塞发动机,也可以是产品层面的,比如苹果和安卓阵营,用个人移动网络终端产品来重新定义手机,最终打败诺基亚。

  • 市场浪潮的涵义是,由于经济、文化、社会环境、思想观念的诸多变化,以及新一代人的逐渐成长,导致市场形势发生了翻天覆地的转变。

比如这两年国内新消费品牌逐步取代国际品牌,背后就是新一代95后与00后的成长,以及对品牌认知的思想观念上深刻变化。

  • 人才红利的涵义是,由于高等教育的发展,产业政策的扶持,与产业迁移带来的溢出效应等因素,大量人才从四面八方汇聚到某个大行业之中,可以使该行业中的绝大部分企业获益。

比如过去二十年互联网的快速发展,不仅是互联网行业本身之功,也要考虑到历史进程:高校扩招,城市化进程,以及国民经济结构发生大幅调整,导致大量应届生与社会人才涌向信息产业与服务业。

纵观现代商业科技发展史,以上三个条件一旦同时具备,就将会孕育革命的火种,几乎是必然的催生出挑战保守巨头的新势力,并掀起一场全新的产业革命。从微软挑战IBM(微机业务),苹果挑战诺基亚,Google挑战雅虎,Amazon挑战购物中心,Tesla挑战车厂巨头,Space X挑战波音与洛克希德,莫不如此。

2021年,在基础软件最核心的数据库领域,也出现了这样千载难逢的机遇。

  • 首先是技术上的革新。

Google发表的Spanner/F1论文,为新型数据库打开了新世界的大门,大家第一次发现原来数据库还可以这样搭建。这也为后来的各家创业公司指明了前进的方向。

  • 其次是数据库市场的新趋势。

由于互联网、物联网的崛起与大数据时代的来临,海量、高并发且指数增长的业务需求成为很多厂商的心头痛,传统的关系型数据库成本高昂效率低下,业界迫切需要一个全新的产品来支撑业务。

  • 最后是人才的汇聚。

随着互联网行业的多年发展,大规模数据业务培养了一大批优秀的数据库人才,尤其是巨头公司,一直在行业最前沿。另一方面,自GitHub于2008年创建以来,开源思想早已深入人心,即便是创业公司,技术交流与共同开发已不再是障碍。

挑战Oracle这样的数据库巨头,在十年前根本不敢想。

但如今的数据库领域,拥有天时(新型数据库的技术革命)、地利(大数据时代的市场趋势)、人和(互联网的人才培养与开源),已经具备了孕育革命火种的土壤,在不远的未来,必定会诞生一家挑战巨头的创业公司,如同《撒母耳记》中记载的大卫挑战巨人歌利亚一样,虽然弱小,却拥有非凡的勇气与智慧,最终将巨人斩落剑下。

只是,这会是国产数据库吗?

02 历史上大卫与巨人的三次战争

Oracle的创始人Larry Ellison,曾经也是个少年大卫。

http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/6100f58ebdd4d13cc65ec1b33c8526fb..jpg

*Larry Ellison

历史总是惊人的巧合。Ellison也是在看了一篇IBM的论文《A Relational Model of Data for Large Shared Data Banks》,萌生了创业做一家数据库公司的想法。

上世纪70年代的数据库行业还处于草莽江湖的年代,市场上充斥着各种模型,比如层次模型和网状模型,我们现今视为天经地义的关系型数据库还上不了台面。

正所谓天下武功出少林。在那个年代,关系型数据库的正统鼻祖是IT行业的巨无霸IBM。

历史上第一款关系型数据库出自IBM研究院的SystemR系统,不过这只是一个研究项目,由于自家的IMS(层次型数据库)市场销路不错,出于商业利益的考量,IBM一直未能下决心推出关系型数据库,这也给Ellison等人提供了一个市场机会。

SystemR对数据库领域的两大贡献是确立了SQL语言,以及证明了关系型数据库的价值。SQL奠定了数据库代码哲学:声明式语言,帮助用户实现处理过程,越便捷越好

这个思路影响深远,决定了数据库之后几十年的发展路径,数据库不是给专业开发者用的,而是给那些有业务需求的运营、数据分析和财务等外行人使用,因此数据库这个产品从一开始就注定要走向大众市场。(与之相对的是Unix/Linux哲学:命令式语言,相信用户的能力,越开放越好。因而Linux始终不能像Windows一样为大众所用。)

从IBM论文中受益的不止是Ellison,还有伯克利大学的Michael Stonebraker教授,他在读了SystemR项目论文后,大感兴趣,于是便开发了一个ingres项目,这个项目后来演变为PostgreSQL。

与此同时,参与开发ingres项目的工程师Robert Epstern,也对关系型数据库的市场价值深具信心,并和Mark Hiffman一起创立了Sybase,之后又与微软联合,开发出MS SQL Server。Sybase的主要贡献是提出了Client/Server数据库体系结构。

可以说,Ellison,Stonebraker,Epstern们都是站在IBM巨人肩膀上的第一代大卫。

凭借在处理数据上的巨大优势,Oracle、PostgreSQL、Sybase等关系型数据库一经问世就大受市场青睐,把IBM曾经充斥市场的层次型和网状型数据库打得溃不成军。

虽然巨人IBM也及时反省,推出了DB2,但弱小的大卫们已经在市场上站稳了脚跟,在当时占据了金融、电信、航空、汽车等传统行业的诸多市场。

在整个80-90年代,Oracle从一个数据服务商,进化成包括数据库、中间件、应用软件在内的全线软件产品与服务商,成为了比肩微软的商业帝国,昔日的对手IBM DB2和昔日的战友Sybase,都成为了其手下败将,以至于Ellison得意到把公司甩手给职业经理人,自己长年悠哉玩帆船去了。

不过Ellison同学也不要太得意。第二代大卫就快登场了。

几乎在IBM那篇经典论文发布的同时,加州的一群天才,包括提出通信网构想的Larry Roberts,发明TCP/IP协议的Robert Kahn,创立包交换技术的Paul Baran,以及建立分组交换理论的Leonard Kleinrock,正在秘密研究一个新型通信项目,谁也没想到这个不起眼的小项目将掀起第二次数据库革命,并开创一个波澜壮阔的新信息时代。

这个项目就是ARPANET,互联网的前身。

http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/be554d91845708061a71e389c4a0e590..jpg

*ARPANET核心结构图

在21世纪的头10年间,互联网的崛起对当时的整个IT产业产生了颠覆性的冲击,首当其冲的就是数据行业。

互联网与传统行业不同,是第一个完全建立在数据之上的行业,所有的业务都是数字化的,查询、通信、传输、交互、支付,各种业务带来了海量的高并发数据,传统的关系型数据库从来没处理过这么庞大且实时的业务量(金融是个例外,但金融市场相对规范,不如互联网这么驳杂)。

更愁人的是,与传统行业的大金主如银行、电信等客户不同,刚刚诞生不久的互联网行业个个都是穷光蛋,根本买不起昂贵的服务器,更交不起天价的数据服务费。

虽然当时很多公司都迫于形势,不得不咬牙切齿购买Oracle产品服务,但都萌生了一旦有合适的便宜货就赶紧换掉的想法。

便宜货其实早就有了。就在Ellison刚开始玩帆船时,远在欧洲瑞典,一个天才程序员Monty Widenius为了解决大型零售商的数据仓库服务需求,和mSQL的发明者David Hughes一起写了数据库,并起名叫MySQL。

http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/1cdda05e2f402c38c362a2ffd66528a9..jpg

*Monty Widenius

由于服务对象是数据仓库,因此MySQL非常擅长数据的查询性能,而不是事务处理。相比叶茂根深的参天大树Oracle,MySQL就如同一株小草般渺小,根本不是一个量级的竞争。不过这株小草稍微有些特别,它脚下的土壤叫做开源。

MySQL从1996年第一个版本就宣布开源,这需要非凡的勇气,在那个年代开源思想还远未统一,甚至连Open Source这词还没有。

不过正如古希腊神话中的英雄安泰,只要MySQL双脚不离开源这片大地,就能拥有无穷的力量。开源意味着技术可控,而且免费,这让一众穷日子苦熬的互联网公司不禁热泪盈眶。

从雅虎开始,Google,Facebook,Twitter,包括国内的一大堆公司都开始用上了MySQL,大家一起为MySQL社区添砖加瓦,共同创建开源(免费)数据库的未来。

和微软对开源的敌视不同,Oracle对开源的态度要开明的多,虽然出于商业利益的考量,Oracle本身不可能开源,但Ellison一直在关注互联网浪潮所带来的冲击,并于2000年结束帆船生涯回归公司,亲自掌舵,以应对开源数据库的挑战。

Oracle的应对策略很简单,收购。

经过旷日持久的垄断审查与诉讼,Oracle终于在2009年收购了硅谷传奇公司Sun,不巧的是,Sun此前刚收购了MySQL。

虽然Oracle对外宣称Sun的核心硬件技术是收购的主要原因(这也不完全是说辞),但从当时开源界一片哀嚎中,还是不难看出此事在数据库领域的巨大影响。可怜MySQL这个大卫还没来及掏出宝剑,就被巨人拿钱直接砸死了。

当然了,MySQL在商业上可以说获得了前所未有的成功,10亿美金是当时开源界的收购天价,这个价格记录保持了很多年。

不过战争远未结束,一众穷苦的互联网公司又把目光转向了第三代大卫:NoSQL数据库(非关系型数据库)。

03-06年,作为互联网大数据处理的领头羊Google,连续发表了划时代的三篇论文:GFS、MapReduce、BigTable。

GFS解决了数据大规模存储问题,MapReduce解决了计算问题,BigTable解决了在线实时查询问题。

这是Google第一次打开了数据库新世界的大门(后面还有第二次),这让互联网公司们忍不住又一次热泪盈眶。

第一个站出来吃螃蟹的公司是雅虎。

在看了Google论文后,雅虎迅速跟进,开发了大名鼎鼎的分布式文件系统Hadoop,并以一种雷锋般的奉献精神给开源了,也因此成就了Apache基金会。

http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/a6d63a20ba6e401bc1d10b12f671e38c..jpg

*Apache基金会

随后Apache主持开发了Hadoop数据库HBase,真正实现了Google Bigtable,Facebook也添砖加瓦,在Hadoop基础上开发了数据仓库工具Hive,使之学习成本大为降低。

HBase和之前的Oracle或MySQL等关系型数据库在架构上有很大的不同,它是一个面向列存储的分布式存储系统,没有复杂的表和表之间的关系,为了更高的可用性牺牲了一部分的一致性,这也就意味着可以支持海量的高并发读写操作。

偏巧,互联网的业务其实并不在乎强一致性,比如社交场景,用户实时数据量极大,对于数据读写速度要求非常高,但数据之间却并不需要频繁的相互计算,相反,业务对低成本、大数据量、以及廉价硬件上水平扩展等方面更加敏感。NoSQL正好满足这些需求。

在此背景下,轰轰烈烈的No-SQL运动开始了。

MongoDB、Redis、CouchDB等诸多优秀的产品相继问世,受Oracle收购Sun的影响,Twitter、Digg、思科等公司都纷纷从MySQL阵营跳槽到NoSQL阵营,改用Facebook开发的NoSQL型数据库Cassandra。

顺便说一句,第三代大卫同样在商业上收获匪浅。尤其是MongoDB,如今市值已达334亿美金,当然了,比起Oracle高达2685亿的市值,连零头都不到。

回到No-SQL运动,这一次巨人又是如何应对的呢?

没应对,还没等巨人出手,大卫们自己就开始内讧了。

起因是一众穷苦的互联网公司开始赚钱了,一个个都翻身成为了巨头,追求的目标自然也是越来越高。在使用NoSQL型数据库的过程中,大家逐渐发现了各种问题,无法适应不断发展的新业务需求。

比如对于电商的支付业务,有非常强的事务性和读写一致性,社交场景丢了几句聊天记录无太所谓,但支付场景丢了几笔钱,业务就别想做了。

除此之外还有诸如不兼容SQL,功能有限,不支持Join复杂查询等问题。

然后再回过头来审视关系型数据库,似乎也不是一无是处,有些能力还是可以拿来借鉴的。这也导致轰轰烈烈的No-SQL运动最终演变成了“Not Only SQL”。

关系型数据库和非关系型数据库各有各的好,前者犹如稳定的老战士,能力强大,久经风雨考验,而后者像是高效的魔法师,大规模魔法物美价廉,可以驾驭宏大的战争场面。

但往往玩家打怪的时候,老战士和魔法师都需要,这可怎么办?

SQL or NoSQL?这真是个问题。

03 大卫与巨人的第四次战争:国产数据库的机遇与挑战

回顾历史,挑战的大卫一代又一代,而巨头常在。如今的创业公司们,还有机会吗?

历史大潮,浩浩汤汤,第三次数据库革命浪潮正在不断酝酿,将在不远的未来掀起惊涛骇浪。

2011年,Matthew Aslett首次提出了“NewSQL”术语,以定义新出现的“可横向扩展的OLTP关系型数据库”。

12-13年,Google接连发表2篇论文《Spanner: Google’s Globally-Distributed Database》和《F1: A distributed SQL database that scales 》,18年,再次发表论文《F1 Query: Declarative Querying at Scale》。在论文中,Google非常霸气的设计了一个可以扩展到几百万个节点,跨越成百上千个数据中心,具备几万亿数据库行规模的全新数据库架构设计,即NewSQL型数据库,又一次打开了数据库新世界的大门。

由于NewSQL吸收了传统关系型数据库和NoSQL数据库的优点,既有SQL支持强一致性分布式ACID事务,又如NoSQL支持水平弹性扩展,成为解决海量数据环境下高并发OLTP交易的最有希望和前景的技术方向,在业界引起极大轰动。

不过这里需要说一句,NewSQL并不比关系型数据库或NoSQL更“高级”,只是更适应如今的海量数据需求而已。不同的业务场景需要不同的数据库类型,不能一概而论。

另外,说到NewSQL,就不得不提云原生。

早在2004年,Google的MapReduce论文就解决了云计算的各种问题,而Hadoop的出现则给分布式计算带来了可靠性和容错性,从此开启了云计算的大门。

作为一款为云时代而生的产品,NewSQL型数据库从一开始就构建了分布式架构,这无疑是顺应时代的潮流。

从企业的业务角度来说,直接在云端部署比本地部署更加便捷与可靠,不仅降低了搭建数据库及后期运维的成本,还省却了迁移数据的巨大痛苦。

以Google Spanner/F1和AWS Aurora为代表的NewSQL数据库,可以跨越互联网业务,在各行各业大展拳脚,因而受到很多传统企业客户的青睐。

国内厂商也紧随其后,阿里云PolarDB,华为云GaussDB,腾讯TDSQL,都各自发展出了自己的生态。

不过,这些巨头体积庞大,利益分配复杂,经常不自觉的以邻为壑,所研发的数据库系统只能上自家的云,这让众多客户有些望而却步,毕竟没有人希望自己业务被一家云厂商绑定,反而是那些中立的数据库公司更值得信任,这就为创业公司提供了一个市场契机。

在这种环境下,新一代的大卫开始茁壮成长。

目前国际市场上比较有前景的是CockroachDB(这名字听起来就像打不死的大卫同学),这是由前Google工程师Spencer Kimball、Peter Mattis以及Ben Darnell在2015年创立的,其架构与代码深得Google精髓,资本市场也颇为认可,截至2020年已经融资1.95亿美金。

在国内市场,虽然国产基础软件仍处于落后局面,我们要正视核心技术并非原创的现实,要感谢Google等顶尖公司的技术论文与产品开源,不过这也正是我们奋起直追的动力。

也因此,这里必须要提及受到开源界广泛推崇的TiDB,几位创始人也是看到了Google的论文产生了数据库创业冲动(想想Ellison的创业,真是天道轮回),想要弥补国内在NewSQL领域中的空缺。

技术水平姑且不论,就凭几个创始人敢于挑战巨人,在打磨产品的同时,几年来不断做活动,四处演讲,授课解道,输出内容,竭尽全力为国产开源数据库点燃革命的火种,就必须给点一个大大的赞。

当然,优秀的创业公司和产品绝不止这两家,达梦DM、SequoiaDB、Kingbase、Gbase、Gridsum、Topling……这些头顶祥云(云计算)、披坚执锐(新型数据工具)、脚踏大地(开源)的勇士们,正在满怀理想的踏上征程,一步一个脚印的走向巨人的国度。

据艾瑞《2021年中国数据库行业研究报告》,2020年中国数据库市场总规模达247.1亿元,同比增长16.2%,20-25年中国数据库市场规模将持续增长,预期到25年市场规模将达688亿,年复合增长率24.3%。

在目前的市场份额中,关系型数据库高达90%,NoSQL和NewSQL领域还是未经开垦的处女地,大有可为,而且随着5G、AI、自动驾驶、产业互联网的高速发展,以及国家政策引导的新一轮信息产业创新,相信在未来,会有越来越多的大卫们获得产业与商业上的成功。


免责申明:

本文系转载,版权归原作者所有,如若侵权请联系我们进行删除!

0条评论
社区公告
  • 大数据领域最专业的产品&技术交流社区,专注于探讨与分享大数据领域有趣又火热的信息,专业又专注的数据人园地

最新活动更多
微信扫码获取数字化转型资料
钉钉扫码加入技术交流群