基礎軟件掀起資本暗戰:被盯上的國產數據庫
基礎軟件之風正在掀起一場資本暗戰。而這場競爭又在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的分佈式緩存開源軟件,讓人意外的是,這個軟件吸引了很多開發者使用,收穫了一定口碑。也就是這個時候,劉奇和黃東旭也第一次切實感受到了開源軟件帶來的強大勢能。
“我們自己也開始有點膨脹了”,黃東旭半開玩笑地說道。
另外,當時國內互聯網公司都或多或少遇到同一個困難——隨著業務量的不斷增長,以傳統關係型數據庫為代表的如Ter ADATA、甲骨文等產品,由於傳統架構可擴展性較差,所以對硬件的要求非常高。而當計算的數據量達到千萬、億級別時,數據庫的計算就會出現延時,使得用戶不能及時得到響應,更別提“高並發”(同時處理數以億計的請求)了。
譬如,像甲骨文這樣的傳統數據庫需要耗費大量的人力和財力去維護,十分勞民傷財。
新學術論文帶來的理論支撐,以及上一個項目帶來的強大信心,再加上長期受傳統數據庫的“折磨”,如此一來,似乎沒有什麼能夠阻擋這三個愣頭青的創業步伐了。
但是,這件事的難度也不可小覷。
從業務難度上來講,作為基礎軟件,數據庫本就是所有軟件中門檻最高的。在數據庫領域有一句名言——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也超過了甲骨文。
所以,像甲骨文這樣的典型閉源數據庫的市場份額一直在萎縮,這個潮流甚至在加速,在很多國家已經沒有新增用戶了。
可以預見,不管是國內市場還是全球市場,一場浩浩蕩蕩的開源變革正在或者即將吞噬著整個基礎軟件市場,而這之中,勢必會長出新時代的“蘋果”公司。