被资本盯上的国产数据库

报道 1个月前 (05-13)

经授权转自微信公众号 虎嗅APP(ID:huxiu_com)

作者 | 张雪

基础软件之风正在掀起一场资本暗战。

而这场竞争又在2020年被一家名为Snowflake的美国软件公司推向了高潮。

2020年9月,Snowflake在纽约证券交易所上市,紧接着,它迎来了一个又一个高光时刻,上市首日股价大涨超110%,估值翻了一番多,从330亿美元增至700多亿美元,并一举成为了美国有史以来IPO规模最大的一家软件公司。

在股市之外,Snowflake带来的行业影响更为深远,因为Snowflake是第一个完全跑在多云环境的软件,它代表着计算机进入了下一个时代。

这场突如其来的爆发,不仅Snowflake没想到,资本市场更是没有想到:赛点来了吗?还有没有下注的可能?一时间,开源及数字基础设施项目聚集了众多投资机构的目光,尤其是to D(面向开发者)市场的热度堪比四年前的AI投资热潮。

在大洋彼岸这一头,一家做着类似事情的中国开源数据库公司开始受到资本追捧。

它在2020年11月,宣布完成2.7亿美元的D轮融资,刷新了全球数据库历史。除了经纬中国和云启资本两个老股东,还有十家投资机构选择下注,甚至有机构称“想投但挤不进来”。

据了解,PingCAP的此次融资本没有打算融这么多的金额,后来随着投资机构越来越热情,权衡之下,控制在2.7亿美元上下。

PingCAP受到如此高的关注,一方面是PingCAP自身产品和技术在基础软件市场有一定知名度,另一方面也是受到了Snowflake的影响。他们还一度被看做是中国的“Snowflake”。

不过在实际业务上,两者还是存在明显差别。

Snowflake是一个云原生的数据仓库分析服务,主要支持云上的OLAP(联机分析处理,主要是数据查询)服务。而PingCAP的产品是一个数据库产品,除了支持云服务形态,在业务类型方面,既支持OLTP(联机事务处理,主要是数据增删改查),也支持OLAP,具备完整能力的HTAP(混合事务 / 分析处理)。

更直白一点,Snowflake做的事情是在云上建个数据仓库,把数据存起来,用户可以直接在云端进行数据查询和分析,而PingCAP的产品除了实现Snowflake的功能外,还可以对数据进行金融级别的强一致性保障操作以及实时分析和处理功能,是一个具有完整数据处理能力的数据库产品。

所以有投资人保守估计称,PingCAP如果未来上市,市值应该能闯过500亿美元的关口。

与此同时,国内数据库市场进入全新发展阶段。

2020 年 11 月,Gartner 发布了 2020 年度的数据库厂商评估报告,中国数据库厂商占据三席。同时Gartner预测,到 2022 年,世界上 3/4 的数据库都会跑在云上。

同样,IDC预计到2021年,年产值296亿美元的商业数据库市场会收缩20%~30%,原因是认为甲骨文无法足够快地从传统的商业数据库转向基于云的订阅模式,以实现转型。

一位开源软件资深从业者告诉虎嗅,国内也有“数据库付费理念”普及加速的趋势。

虽然到目前为止,中国的互联网公司很少为开源软件付费,但传统企业或者非互联网企业在使用开源数据库时付费意愿还是很强的,原因在于数据库中的数据价值要比软件贵得多。

同样,海外的互联网客户,从公司治理角度,作为公司生产系统用的软件,如果没有付费保证,就通不过审计,所以不管是国内的传统企业还是海外的互联网用户,一般都会主动付费,而这笔费用实际上相当于买了一份保险。

开源市场的争议

除了踩准了基础软件——数据库这个风口,PingCAP还赶上了开源软件的大浪潮。

“感觉是TiDB选择了我们,而不是我们选择了TiDB”,PingCAP创始人之一黄东旭如此回忆当时的创业情景。这里的“TiDB”,指的是PingCAP的企业级开源分布式数据库产品。

分布式数据库,可以理解为将物理上分散的多个数据库单元连接起来组成的数据库,大都可以部署在云上。数据库,顾名思义,就是存放数据的仓库,不过是需要遵循一定的结构来存储和管理数据,也是每个手机APP背后不可或缺的通用软件,大众用户手指的每一个点击背后都有数据库的数据处理操作。

而“开源”则是相对于闭源来讲,指代“开放源代码”。即企业或个人开发者在网上分享某个自己项目的源代码。这样一来,会有更多人使用。

而更多人贡献和使用代码,就会有更多的人发现和解决问题。这样一来,软件变得更稳定,整个软件质量就会变高。

埃里克·史蒂文·雷蒙德(Eric Steven Raymond)在其开源运动先驱著作《大教堂与集市》中,将商业软件和开源软件分别比作大教堂和集市:

 教堂是按照精心设计的图纸修建的建筑,圣人巨匠呕心沥血,历数十年方始完成;集市则是人人可以参与建设,没有固定模式,也不知道完成的结果如何。

然而很长时间以来,行业内外对于开源软件是有争议的。

首先是关于开源软件知识产权的纠纷。譬如在国内,个别企业会根据相关规则对开源软件进行修改、衍生,然后发行自己的版本,并把它变成闭源软件。这不但可以看成是具有负面影响的道德问题,还可能面临侵犯知识产权遭受法律追诉的风险。

正是因为多数人在认识上存在误区,所以开源软件迄今尚存的一些争议问题,在法律上也存在一些灰色地带。

其次是安全隐患。虽然很多开源项目都由企业或资深专家开发维护,但由于不完全是自己使用,导致贡献者容易对安全性造成疏忽。譬如,知名开源项目爆出安全漏洞的例子多不胜数:OpenSSL Heartbleed、Fastjson 远程代码漏洞、Antd 圣诞彩蛋等等。

而最重要的一点,则是开源软件的商业化问题。

目前在国内跑出商业模式的开源软件寥寥无几,而且国内还存在着一些产品开源后又闭源的情况。比如一个公司在最开始做产品时,觉得自己做的不够好,所以就尽量开源,吸纳别人的营养,但等到这个产品已经达到了一定门槛时,公司会希望商业化,所以就闭源了。

另外,有行业人士表示,中国确实在开源文化方面有一些不规范的地方,开源的文化氛围和商业情况还有待加强。比如,现在很多小型技术公司会把开源的东西拿过来加一层界面,然后就说这是自主研发的产品。

不过,一位长期看To B赛道的资深投资人告诉虎嗅:“开源市场已经在井喷了,它还会持续上涨,甚至到最后,所有基础软件都会是开源的。”

“就像当年雷军说小米要超越苹果一样”

似乎所有的创业故事,都是围绕着一个好的想法展开的。

据悉,创始人刘奇、黄东旭和崔秋是在豌豆荚的同事,他们分别在技术架构团队和业务团队。值得一提的是,这三个人都是同一个编程语言的爱好者。

被资本盯上的国产数据库

剧情的加速,发生在2015年的一个周五。

三个人聊起了一篇新发表的Google Spanner论文,在讨论过程中,他们发现这是一个近乎完美的系统,而且在技术上存在可行性,但奇怪的是,国内外却没有一个人去做。

更早之前,刘奇和黄东旭曾共同做过一个名为Codis的分布式缓存开源软件,让人意外的是,这个软件吸引了很多开发者使用,收获了一定口碑。也就是这个时候,刘奇和黄东旭也第一次切实感受到了开源软件带来的强大势能。

“我们自己也开始有点膨胀了”,黄东旭半开玩笑地说道。

另外,当时国内互联网公司都或多或少遇到同一个困难——随着业务量的不断增长,以传统关系型数据库为代表的如Teradata、甲骨文等产品,由于传统架构可扩展性较差,所以对硬件的要求非常高。而当计算的数据量达到千万、亿级别时,数据库的计算就会出现延时,使得用户不能及时得到响应,更别提“高并发”(同时处理数以亿计的请求)了。

譬如,像甲骨文这样的传统数据库需要耗费大量的人力和财力去维护,十分劳民伤财。

新学术论文带来的理论支撑,以及上一个项目带来的强大信心,再加上长期受传统数据库的“折磨”,如此一来,似乎没有什么能够阻挡这三个愣头青的创业步伐了。

但是,这件事的难度也不可小觑。

从业务难度上来讲,作为基础软件,数据库本就是所有软件中门槛最高的。在数据库领域有一句名言——Nobody wants to change database,(没有人会愿意去换数据库)。数据库就像一个企业的心脏一样,没有人会闲得想做一个心脏搭桥手术。

因为数据库里面装着客户的数据,这些数据可能是银行的存款交易,也可能是电商的订单,但不管是什么,它们对客户都非常重要,这也就要求用户选择数据库的时候要万分谨慎,做到数据不能错,不能丢,遇到高峰期的大量的用户请求时,不能瘫痪,否则将造成巨大的业务损失

一位投资人告诉虎嗅:“做数据库本身就很难,而且PingCAP创始人还口出狂言,说要做到世界第一,就像当年雷军说小米要超越苹果一样,最开始基本上也是没人信的。”

但也有人认为,PingCAP的独特之处,是在业务创新之余,拿“开源、数据库”这样不太性感的名词开刀。

为什么今天的数据库软件必须要开源?

因为基础软件太过于通用又非常重要,因此获取用户的信任成本非常高。如果选择不开源,一来传播速度会很慢,二来对方的信任成本会很高。第三个最致命的是用户的增长并不会是一种病毒传播式的增长,进而导致产品的迭代速度会变得很慢。

事实上,像数据库这种通用的技术软件并不是天才程序员写代码写出来的,而是被千百个用户用出来的,这是一个生长的过程,基础软件,一边是成百上千的用户场景打磨,另一边是数以千计的工程师参与,想要在这个时代同时让两者紧密互动基本只有开源一条路。

需要指出的是,数据库产品最大的竞争壁垒不完全是产品本身,而是一个连接大量用户场景和技术工程师的生态体系,TiDB的独特性就在于此,而这也就成为了一个难以复制的竞争门槛。

回顾开源发展的历史,在第一代Linux为代表的自由软件运动,第二代Hadoop代表的技术栈驱动之后,TiDB则是以用户场景驱动,形成的“场景—社区—产品”的模式,快速积累的顶级用户驱动了社区大量的顶级开发者,打磨的产品迭代后再进入更多的用户。

找到愿意“先吃螃蟹”的人

这三个人表示,一开始除了会写代码之外,他们在做公司这件事上,几乎别无所长。

因此,他们的第一个选择,是找到上级,希望豌豆荚能够投入资金和资源把这个项目做大。可正如前文所说,这个项目的成功率太低了,豌豆荚并不愿意为这三个人的想法冒险。

无奈之下,这三个人只能硬着头皮向前走。通过朋友的关系,他们找到了经纬中国的熊飞。在三个小时的见面时间里,有两个半小时都在讲论文,“别人可能都是拿出一个非常完善的商业计划什么的,我们啥都没有,连PPT都没有。”

关于为什么会投PingCAP的天使轮,熊飞在接受虎嗅采访时,给出了这样的回答:“当时他们想基于Google Spanner的论文,做一个可以替代甲骨文的数据库。这个野心是非常大的,因为那时候市面上真的没有人想去做这个事情,去挑战甲骨文,怎么可能?但万一做出来,将会是国内开源软件的首个实践。”

一个背景是,从上个世纪到80年代到2010年代,甲骨文一直是数据库市场的老大,长期的市场份额接近50% ,产品打磨除了数十年的技术积累,数十万的用户基础,经过了众多行业的锤炼。

天使轮之后,PingCAP很快在2016年的春天就开始募集A轮融资,但是,见过的很多美元基金都拒绝了他们。因为不同于天使轮阶段,在A轮投资时,投资人除了看创始团队背景,还非常关注产品形态、技术落地和商业模式,所以当时没有产品,没有用户,还要做“免费”开源的这三个年轻小伙子,显然不能成为投资人下注的理由。

这时,第二个愿意吃螃蟹的人出现了,云启资本的合伙人陈昱。简单了解之后,陈昱作为一个工程师的直觉告诉他,这是一个好项目。因为他曾是Google的工程师,做过上市公司CTO,认识Google Spanner的第三作者,知道分布式存储系统的前景有多大,但这帮人能不能做出来,陈昱心里仍存疑虑。

于是,跟创始团队第一次见面时,陈昱直接就去看了PingCAP产品的代码。当时PingCAP的产品还是一个大框架,但他基于代码判断,PingCAP的创始团队是懂行的,周五见面,周一就决定投资:“技术水平过硬,而且开源模式有一定的杠杆作用,早期可以赌一赌,未来是很有可能做成的。” A轮融资就这样最终落定。

在采访中,我们希望黄东旭用最通俗的比喻来形容他们所做的事情。他是这样回答的:

“假设杯子是数据库软件,水是数据。普通的杯子,杯子倒满了,再要装水就要加杯子,这样一来,水被区分开装在不同的杯子里,这也是之前单机数据库的时代行业现状。

“但一旦用户有需求,既要去查询a杯子里的数据,又要去查询b杯子里的数据,这个就很难。尤其是面临海量数据的挑战的时候,比如面对一万个杯子,应该怎么去分配,怎么去管理,甚至每天这个杯子可能都会破,有很多新问题,工程师每天都要焦头烂额去解决问题。

“所以PingCAP就发明了一种杯子——表面上看它就是一个杯子,但是你会发现不管怎么倒水,它都不会溢出来,也就是说不管数据量如何增长,用户A的数据都会自动存在A杯子里,不溢出;用户B的数据都会存在B杯子里,不溢出,如果需要查询用户A或者用户B的数据,只需要找到对应的杯子,输入关键词即可。

“举例来讲,假设电商要处理一个订单,比如我今天买了一件粉色的短袖,同时买了一双白色的鞋子,可能一个星期后又买了一块地毯,那么关于“我”的所有电商数据就都会存在杯子A里,如果需要找到我买的白色鞋子的信息,那么只需要找到杯子A,输入鞋子即可。

“如果反过来想,换另外一种方式去访问数据,假设要统计货品门类当中买冰箱有多少人,那只需要分别查询各个杯子中是否有冰箱这个数据即可。

“但是,如果用传统的数据库产品,首先关于“我”的数据会存在不同的杯子中,而且并不确定白色鞋子的信息存放在哪个杯子里,所以需要每个杯子都访问一遍,这样一来时效性就会变差。作为使用者,唯一需要关心的就是杯子的容量,换言之,就是根据需求加入服务器。话说回来,增加服务器节点总比修改业务要简单得多。”

拿下第一个付费客户:死马当活马医

开源数据库的另一个难度,在于在成立初期需要投入资源、投入金钱去做产品,所以商业化要比想象的来得更晚。

回忆PingCAP的商业化之路,就不得不提到刘奇和黄东旭之前做的Codis项目,当时因为PingCAP根本没有名气,所以一开始,PingCAP的销售就借用了Codis的名气,跟企业说是Codis的作者来进行技术交流,然后顺带着推广一下PingCAP的产品。

据黄东旭回忆,五年前第一次做出产品后,找一个客户去交流。于是,就有了这样的对话。

客户:“你们做什么的?”

我:“我做了一个数据库叫 TiDB。”

客户:“没听说过。有人用过吗?”

我:“没有…但是%&*%”

客户:“……”

虽说新产品总得有第一个客户,但数据库这种东西必须得别人用过,客户才敢用,这就是做数据库的现状,因为这个东西实在太过于重要了,没有人愿意当小白鼠。但对于PingCAP来讲,这就很尴尬了,很多用户看都不看。

没想到,机会就在一次次试探中出现了。

第一个客户其实是个“救命”的故事,当时黄东旭去找他的朋友,盖娅互娱(一家游戏公司)的CTO,盖娅互娱的CTO跟黄东旭说:“我这边真有个场景可能需要你这个东西。”

被资本盯上的国产数据库

原来,当时盖娅互娱已经做了一个智能实时广告投放系统,实时分析哪个渠道引流效果更好。但这个系统是用MySQL去做的,随着数据积累的越来越多,系统就变得非常卡顿。据盖娅互娱透露,做一个查询要20分钟,一点儿都不实时;此外,这个业务逻辑也十分复杂,所以也没有办法去拆分。

于是,也就有了摆在PingCAP和盖娅互娱面前的两个事实,一是PingCAP的产品还没有人用过,风险与收益不可预知;二是彼时,盖娅互娱没有更好的选择,如果不用,也无异于“等死”。但想想TiDB是兼容MySQL的,代码不用改。

“试一试,万一救活了呢?”

这让PingCAP的产品有了第一次商用的机会。没想到,在数据库正式上线后,查询时间从原来的20分钟一下冲进了10秒钟,初战告捷。

有了第一个客户以后,PingCAP出去逢人就说:“我们有人用了”。得益于盖娅互娱这个案例,PingCAP就先在游戏圈子里捞了一群客户。但也就只有游戏公司用。

因为其他行业的客户会来问:“有没有金融行业的案例?”

在经历了四处求商务机会的“漫长”几年里,PingCAP先后做了一些北京银行的交易系统以及一些微众银行的案例,终于觉得可以挺直腰板觉得说自己的产品是企业级数据库了。但一些客户又会问:“你们有‘宇宙级大行’的核心交易支付系统的案例吗?”

PingCAP只能再回答:“抱歉,现在还没有。”

“这个东西没什么新用户用,也没什么增长,是不是要完?” 黄东旭在公司成立前两年特别焦虑,

“直到最近,我发现用户数据开始上涨,包括最近半年我们发现我们的社区用户在网上的讨论变得越来越多,甚至已经多到超出我们自己的视线。”

海外战事:找上门的生意

据了解,在做Codis项目时,有一些美国潜在用户曾经来问“自己能不能用”。在理论上是可以的,但因为最开始只做了中文文档,所以导致海外市场的人都用不起来。

这也成为了刘奇和黄东旭做那个项目时一个特别大的遗憾。“我们做的东西有点像做工具,就像做一把锤子,中国人需要锤子,美国人也需要锤子,尤其是基础软件,我觉得是一个属于全人类的东西。”黄东旭指出。

不像国内商业化这样着急,PingCAP发力海外市场是相对滞后的。

2019年的年中,刘奇找到时任技术VP的申砾,对他说:“现在这个时机已经开始成熟,我们希望你去探索海外市场。”

毕竟,当时国外的开源软件已经很赚钱了,有好多开源项目已经做到独角兽级别了,都有1亿美元以上的合同收入。据知情人士透露:“毫不夸张地讲,同样的单子,国内可能只能收100万人民币,但国外就能收100万美元。”

当时,遇到的第一个大难题是PingCAP的产品在海外没有标杆案例,也就没有办法去推广产品。但所幸,TiDB在全球的数据库的开源圈其实是有一些口碑和声望,也不是完全没有基础。

申砾谈到:“我们早期在海外没有做特别大的推广,但会有很多客户跑过来说,他们在做数据库的选型,其中,TiDB在他们的备选名单上,实际上这是由社区带来的一个价值。”

另外需要指出的是,数据库是每个应用软件100%的基石,当企业的应用规模小的时候,有很多方案可以选择,可一旦应用的数据量和并发量上到一定程度的话,那么可选择的数据库软件就不多了。

被资本盯上的国产数据库

举例来讲,一家日本最大的在线支付公司,当时他们拿了不少投资要通过积极的市场推广手段获取客户,但在市场推广活动中,系统先扛不住了。在痛苦中,它们选择在开源社区里找答案,就发现了TiDB。

2019年,日本的在线支付有点像中国之前“百团大战”的一个场景,玩家很多,谁跑得最快,那么谁就可能会赢得这个市场。当时,他们的系统已经用到了最顶配的方案,但他们业务发展实在太快了,所以数据库成为了他们业务增长的瓶颈之一。

所以,他们除了主动找数据库方案,也做了市面上主流数据库产品的对比。

原来,他们使用的是AWS上的 Aurora数据库,Aurora是一个OLTP类的数据库,随着他们整个交易的数据量增大,使用规模达到一定程度后,他们就无法再使用Aurora来承载这样的一套系统。

而在换成TiDB(上面提到过)之后,由于TiDB本身也是一个兼容MySQL的系统,所以他们不需要修改他们的业务,就直接替换上去。而结果就是,TiDB让他们脱离了关键增长节点的困境。

据申砾介绍,如果没有采用TiDB,这个客户只能选择放缓业务推广节奏,或者是通过大规模的业务改造来提升整体的性能,这个往往是耗时耗力的。无论哪种选择,都会让他们错过一个时间窗口。而当时,日本有十几家可能甚至二十几家的在线支付公司在同时在争抢市场份额。

这之后,他们也将这个产品推广给了其他几个业务线,最终他们的核心场景都在用TiDB。

当然,这只是海外市场的一个成功案例。

在数据库产品的实际推广过程中,谨慎的海外用户对PingCAP产品还是存在着一定顾虑,譬如很多客户会担心自己所在的区域不能得到及时支持。这也就导致早期PingCAP的产品在海外的用户非常少。

但值得一提的是,现在的PingCAP已经在海外多个区域建立团队,其海外营收也已经与国内持平,甚至有超过国内市场营收的趋势。

写在最后

在与多位采访对象的交谈中,有几个频繁出现的关键词,比如中国第一家走出来的开源公司、三年营收为0、获客方式等。

一位开源软件领域的观察者告诉虎嗅:PingCAP的产品是国产开源里面第一个跑出来的,所以基本上其他的开源项目,多多少少都有在模仿PingCAP的影子,包括社区运营和商业化。

而关于前三年营收为0,陈昱告诉虎嗅,一个开源的公司从0到上市,可能有10年的时间,可以分成几块,前三年,专注去做产品;中间三年,获取大量的用户;最后四年就是商业化的能力。

在开源软件中,还有一个比较特殊而又唯一行之有效的获客方式,那就是用To C的方法来去获取To B的生意。

一般来讲,传统软件的商业模式是,做好一个产品出来然后通过BD的模式去一个个谈客户,这样会相对慢一点。但开源来说,直接放到网上,喜欢就用,那就相当于同时养了一大池子鱼,养好以后去批量捕。

这样一来,在后期的商业化上,开源企业的营收每年可能有一个三倍的速度往上涨。

不过,从整个数据库市场的份额排名来看,PingCAP的产品还有很大的上升空间。可以看到,当前的市场份额前五名还是一些老牌的科技巨头,比如微软,甲骨文,AWS,IBM,SAP,此外阿里系的数据库产品、华为的数据库等也都榜上有名。

时势造英雄。

在当前的大环境中,在云计算的推动下,开源软件正在经历一个分水岭。

其实,开源软件产品也有众多分支,比如操作系统、开发工具、开源的中间件,不过开源数据库是最特殊的。因为,云上数据库大多是开源的,不管是AWS的Aurora还是阿里云的PolarDB,本质上都是开源MySQL的增强版变成的一种服务,所以开源数据库借助云服务是自然而然的。

去年,在很多国家云上的数据库超过了云下。比如国内阿里云的云上数据库市场份额超过了甲骨文,全球范围内AWS Aurora的市场份额也超过了甲骨文,在美国Aurora也超过了甲骨文。

所以,像甲骨文这样的典型闭源数据库的市场份额一直在萎缩,这个潮流甚至在加速,在很多国家已经没有新增用户了。

可以预见,不管是国内市场还是全球市场,一场浩浩荡荡的开源变革正在或者即将吞噬着整个基础软件市场,而这之中,势必会长出新时代的“苹果”公司。