對抗還是融合?當開源3.0 遇上雲計算2.0

語言: CN / TW / HK

作者劉松 PingCAP 副總裁

劉松先生擁有20多年的IT領域從業經驗,曾經擔任甲骨文大中國區技術戰略部總經理,阿里雲副總裁等職務,長期服務中國IT產業的企業軟件解決方案,數據庫產品市場,雲計算生態發展,開源生態產學研智庫,數字化轉型研究等等領域,對於前沿技術與行業轉型的結合有長期深入的諮詢與智庫經驗,在數字化轉型,產業互聯網領域主導了多個圖書與研究報吿。

01 從Google AlloyDB 的發佈説起

2022年5月,Google 發佈了新一代的數據庫產品AlloyDB, 除了在技術架構上實現了新一代的HTAP,還明確向開源數據庫PostgreSQL社區敞開了懷抱。Google Cloud目標是成為“Best Home for your PostgreSQL workloads” ,就是在Google AlloyDB這個數據庫雲服務產品上,集成開源數據庫PostgreSQL、開源的雲原生技術以及開源的AI框架,最終使其成為新一代數據庫雲服務。

這似乎代表了一種趨勢,作為軟件生產側的開源和“軟件分發+部署側”的雲服務,現在找到了一個比較好的分工界限:開源負責軟件的原創和迭代,雲服務負責將開源產品服務化,組合集成後,就成為企業用户可以使用的雲服務。這似乎是一個雙贏的局面。

然而,事情遠沒有那麼簡單。拉大鏡頭,我們會看到,Google其實是一個特例,它是唯一一個既是開源的主流推手,又是主流公有云廠商的技術公司,它有能力實現自閉環。

在更大的市場上,近年來,開源軟件公司與雲廠商之間也有很多基於商業利益的競爭和指責。開源技術公司指責雲廠商打包開源項目獲得收入但不回饋社區,雲廠商指責開源技術公司為了自我保護修改開源許可證違背開源精神。

2018年以來,很多知名開源公司如MongoDB, Confluent,Databricks 都通過雲服務獲得了高速增長。我們已經來到了一個新的交叉點。在開源方面,經歷了Linux 的第一代開源,以及互聯網大數據時代的第二代開源,開源運動在2010中期以後藉助雲原生和場景驅動進入第三代;而在雲方面,經歷了IaaS 層為基礎的雲計算 1.0也吿一段落,以多雲/雲原生為主的雲計算2.0時代已經到來,多雲背景下的PaaS 層和SaaS 層生態成為雲 2.0的增長主體,開源技術公司和雲廠商自身的PaaS、SaaS 之間的關係,逐步演化成為頗為複雜的競合關係。

由於雲廠商自身研發的產品有很大比重來自開源項目,大廠開源也成為一種趨勢並在逐步加速。似乎大家已經形成隱性的共識:開源是軟件技術創新的主要源頭,而作為服務企業的載體,雲服務是效率最高的分發和服務模式。至於中間的技術與產品形態,則要開源技術公司和雲廠商各自發揮能力去競爭。但到今天為止,這些都還是非常模糊的。我們只有梳理一下開源技術和雲計算的發展歷史,才能大致明白這些支配軟件行業的趨勢是怎麼出現並發展的,大的邏輯脈絡可以參考下圖

02 開源1.0到2.0:互聯網的興起和數字平台的誕生 (1990年代到2000 年代)

ESR的《大教堂與集市》和在上世紀90年代誕生的Linux都是開源運動的代表性作品,相信大家已經耳熟能詳,這裏不再贅述。需要指出的是,Linux誕生的背景是對微軟授權時代的一個反制,但開源潮流力量的真正規模化得益於2000年後LAMP開源技術棧成為了互聯網技術棧,並籍由Google的三篇論文奠定了大數據的基礎。開源技術棧成為數字平台公司的技術基礎,這是開源進入2.0 時代的標誌。

在這個階段,開源技術棧成為數字平台的主力支撐,開源的影響力從 1.0 時代的Linux擴展到整個互聯網技術棧。到了2010年代移動互聯網爆發,移動互聯網時代的數字平台幾乎完全以開源技術棧支撐了整個 2010 年代的數字經濟,包括搜索、電商、社交、支付、視頻、本地生活等最重要的互聯網應用領域。

縱觀整個互聯網時代,開源在開發效率與協同創新模式上的優勢完勝商業軟件,並在移動操作系統、分佈式技術、大數據、人工智能等創新技術領域形成了開源佔據主導地位的態勢。

更為重要的是,移動互聯網時代讓開源的版圖從 Linux 社區擴展覆蓋到整個互聯網領域的工程師羣體,懂開源的軟件工程師人數上升了幾十倍,全球開源的工程師已經達到數千萬人。作為開源項目的最大載體,GitHub 剛好也是在2010 年代問世的,目前還在持續增長,開源成為軟件工程師趨之若鶩的方式,因為它“酷技術好有社會價值”。(感興趣的讀者可以從OSSinsight.io 看到GitHub 創建以來所有項目的發展情況。)

03 數字平台:開源技術棧的隱性商業化

開源技術棧成為互聯網技術棧的2.0時代與開源1.0時代一個最大的不同點,是開源技術工程師在數字經濟領域創造了巨大的商業價值。

90 年代的 Linux 還只能在與微軟等商業巨頭抗爭的被擠壓階段勉強站穩腳跟,商業價值和公眾影響力也非常有限。互聯網數字平台的商業價值很大程度就是靠“創新的商業模式+開源技術棧”來完成的,開源技術棧是數字平台模式得以發展的兩大支點之一,並藉助網絡效應和數據智能完成商業模式的閉環。

“互聯網技術棧=開源技術棧”,開源技術棧藉助互聯網數字平台完成了自閉環,這是開源進入2.0的主要特徵。

由此,開源技術棧成為數字平台高歌猛進的技術底座,在這個時代沒有任何一個數字平台是靠商業基礎軟件來支撐的因為商業基礎軟件無法應對海量用户,迭代速度慢,單位成本高。在 2000 年代,亞馬遜和阿里巴巴在起步階段都曾經長期使用 Oracle 的商業軟件,但移動互聯網導致的數據暴增使得亞馬遜和阿里巴巴都放棄了 Oracle 數據庫,轉而使用開源技術棧搭建技術體系,並且後來又都構建了自己的雲計算體系。

在移動互聯網主導的數字經濟時代,開源技術棧就是支撐數字經濟的隱形冠軍,開源技術棧的商業價值,互聯網工程師的價值,就在服務數十億人口的數字經濟的價值創造中得以兑現。在移動互聯網的數字平台時代,開源技術已經積累足夠多的商業影響力和人才基礎,在綜合影響力方面已經超過商業軟件,只是未被以軟件授權的收入統計成收入罷了。

移動互聯網留下的最重要的資產是全球數字平台中熟悉開源技術的軟件工程師羣體。這些人本身就是很多開源項目的發起者和貢獻者,分佈式數據庫、大數據、雲原生、人工智能等領域的發起方都是這羣互聯網工程師,互聯網工程師也始終都是開源社區的活躍分子,他們也被稱為新一代開源創業公司中的主要支撐,如 Confluent 的三個創始人來自 Linkedin ,如PingCAP 的三個創始人來自豌豆莢,他們都把互聯網公司的基礎軟件部門的項目獨立開源出來,逐步成為新一代開源商業化的推動者。

04 雲計算催生開源3.0:互聯網技術棧的溢出和雲計算成為數字化基礎設施 (2010年代)

移動互聯網留下最重要的沉澱是雲計算。雲計算就是互聯網公司為了將分佈式資源外化,並服務企業 IT 的一種服務形態,是 C 端已經驗證的分佈式開源技術棧向 B 端市場的一次跨越,不管是 AWS,還是 Google 提出 Cloud 概念,都是對分佈式服務形態的一個構想。這個構想的本質,是把互聯網驗證過的分佈式架構變成服務 B 類企業的一種計算模式和服務模式。

在開源軟件和商業軟件之前的競合關係中,有一個沉默的羣體是中大型企業用户。這些中大型企業 IT 用户在過去 40 年,使用的企業應用主要依託商業軟件,比如 ERP、供應鏈、CRM、HRM 等,基礎軟件也都是IBMOracle,微軟等公司提供的。他們基本上旁觀了移動互聯網時代,並與開源技術棧絕緣。

直到移動互聯網的後期,才因為這些企業要做各種面向消費者的移動 App,才開始接觸互聯網技術棧。這個時候,雲計算應運而生,成為轉化互聯網技術棧為企業服務的“擺渡者”。雲計算的出現也剛好可以填補大中型企業不熟悉互聯網技術棧的缺憾,大中型企業作為用户不需要類似互聯網公司的龐大工程師團隊。以公有云為代表的雲服務模式可以把複雜的技術棧封裝成服務,讓企業用户僅僅作為資源的使用者就可以使用這些技術,為他們的數字化、以用户為中心等業務戰略服務。

雲計算的誕生,還催生了一件非常有趣的事情,就是公有云服務讓開源軟件與商業軟件之間的差異變得不再重要。就雲服務的某個特定能力而言,客户在乎的是可以隨時兑現的使用價值——這個使用價值是可以按分鐘、按秒支付的服務費,開源軟件可以與雲服務商分成,商業軟件也可以與雲服務分成。

在雲服務時代,軟件的許可已經轉化為開源技術公司與雲服務商之間的法律與商業協議,與最終企業用户無關。在雲服務的世界生存,只剩下一個問題,哪種軟件更能高效解決用户的問題?作為用户,就只關注誰好用,誰能創造價值。開源軟件也因此找到了一個與雲服務“共生”的商業模式。無論是開源還是閉源,在公有云的大舞台是平等的,因為雲服務本身,已經變成一個更大的服務集市。所有的大型公有云廠商都會有一個Marketplace 的雲市場,各種軟件,無論開源與否都可以上架被用户隨時選購。

05 商業軟件巨頭向雲和開源轉身

現在,我們把目光投向商業軟件供應商,看看他們為什麼也要關注雲計算和開源

微軟 CEO 薩蒂亞主政微軟後,雲優先戰略得以貫徹,微軟在 7 年的時間裏市值成長了五倍。那麼,從微軟上一代 CEO 鮑爾默的那句“開源是軟件行業的癌症”,到薩蒂亞把雲優先之後又對Github 進行數十億美金的收購,背後到底發生了什麼?商業軟件公司在錯失了移動互聯網之後,在雲計算和開源興起的時代是如何考量的?

在移動互聯網和數字平台的變革中,同他們的大中型企業用户一樣,商業軟件公司總體上也是旁觀者。當移動互聯網延伸到雲計算,亞馬遜Google等數字平台藉助雲服務模式開始服務 B 端用户,就開始與微軟、Oracle、IBM 等商業軟件公司的 IT 服務直接競爭,於是一場新舊勢力的競爭因此開始。IBM 和 Oracle 都因為商業軟件存量市場的包袱在雲計算領域進展緩慢,只有微軟的薩蒂亞相對果斷地進行了切換,成為雲計算時代的三巨頭之一。

近年來,微軟收購 GitHub ,IBM 收購 Red Hat 的動作也證明,想要在雲時代獲得軟件領先優勢必須擁抱開源。這來自商業軟件一直以來的隱痛——商業軟件一直保持非常低的使用價值和非常慢的迭代速度。

以基礎軟件為例,在滿足用户在操作系統、數據庫、中間件、開發工具等等基礎需求之後,商業軟件研發模式往往導致了極低的創新效率。尤其是在移動互聯網爆發後的雲計算、分佈式數據庫、大數據、雲原生等技術方面,商業軟件公司的創新力基本停滯,不僅新增的功能有數年期的單邊規劃,常常有超過 90% 的新功能無法引起用户的重視。因為不是開源,商業軟件的研發部分和用户需求的聯繫完全斷裂,產品經理聽不到用户聲音。以數據庫為例,大多數傳統數據庫的用户使用的功能還停留在十多年前的版本。在這種模式下,一些商業軟件公司轉型的雲服務出現了 “ShelfWare”(擱置軟件) 的現象,就是大量新增的特性即使用户購買了也從未激活。在雲服務時代,商業軟件公司必須重新思考擁抱開源的創新模式,也只有擁抱開源模式才有可能找到通向未來的路徑。

06 多元的雲2.0時代:開源和雲的競合關係成為常態化的博弈,參差多態成為常態

在2018年以後,以IaaS層為主導的雲計算1.0時代吿一斷落,作為算力的沃爾瑪,雲計算已經為成千上萬的用户提供了足夠便利的資源。與此同時,雲計算廠商在競爭中也逐步進入2.0時代。

進入2.0時代的典型標誌是多雲和雲原生的興起,進而使得PaaS/ SaaS 的雲中立廠商和雲廠商自己的PaaS/SaaS 可以同場競爭。如果把雲計算的Marketplace 比做電商賣場的話,獨立廠商的雲中立產品和雲計算廠商自產的雲產品都構成了生態的主要部分,開源軟件由於豐富的功能性和迭代速度顯示出更強大的生命力,成為雲廠商Marketplace上面的重要提供方。

藉助雲原生,開源軟件普遍在跨雲和集成性方面擁有更大的開放性,這使得開源軟件在與雲廠商自主產品的競爭中擁有優勢,這也使得雲廠商和開源軟件公司的競合關係常態化。這可能是短期內沒有終點的博弈。

沒有永恆的敵人,只有永恆的利益,開源和雲的競合關係是非常動態的,是一種持續的博弈和進化。正是基於這種競爭,才能保持着雲生態的持續生命力,這個遠好於此前純粹的商業軟件競爭和單純的開源生態。

回到文章開頭,Google AlloyDB 的發佈,面向的主要市場是開源的PostgreSQL用户, 筆者所在的PingCAP公司,開源數據庫產品TiDB 過去7年以兼容MySQL並提供高擴展性和HTAP能力獲得大量MySQL用户的認可,而作為其DBaaS 產品的TiDB Cloud,在多雲環境下給MySQL 用户提供一個雲端的強化版選擇。至此,就數據庫賽道來説,之前開源單機版數據庫的兩大陣營,PostgreSQL和MySQL,在經歷了雲計算1.0的RDS模式之後,現在都在雲端有了新的強化版選擇, 這是以雲服務模式擁抱開源的一種最新形態。這兩個是開源和雲結合向未來演進的例子。在更大的範圍,開源軟件和雲服務的廣泛融合剛剛開始。我們有理由相信,開源和雲的競合關係會帶來一個更為豐富的軟件產業生態,為各行各業的數字化用户提供一個開放而多元的生態選擇。

作者簡介

劉松先生擁有20多年的IT領域從業經驗,曾經擔任甲骨文大中國區技術戰略部總經理,阿里雲副總裁等職務,長期服務中國IT產業的企業軟件解決方案,數據庫產品市場,雲計算生態發展,開源生態產學研智庫,數字化轉型研究等等領域,對於前沿技術與行業轉型的結合有長期深入的諮詢與智庫經驗,在數字化轉型,產業互聯網領域主導了多個圖書與研究報吿。