天天看點

媒體專訪 | 做難而正确的事,OceanBase 的取舍

作者:老魚,本文轉載自公衆号老魚筆記。

6月1日,OceanBase 宣布正式開源,采用木蘭公共協定 MulanPubL-2.0 版,開放近300萬行代碼,同時成立 OceanBase 開源社群及技術委員會,社群官網同步上線。

媒體專訪 | 做難而正确的事,OceanBase 的取舍

OceanBase 是螞蟻集團完全自主研發的金融級分布式關系資料庫。具有高可用、可拓展、高相容、低成本、強一緻及高性能等特點。經曆過阿裡超大規模業務場景、支付寶金融級場景以及雙11等戰役的曆練。

目前,OceanBase 已在多家機構落地應用,包括中國工商銀行、山東移動、福建移動、數字江西、中國石化、中華财險、人保健康、浙商證券、天津銀行、西安銀行、常熟農商行、東莞銀行等。

OceanBase 為何開源?開了什麼?這次開源能否堅持到底?這都是老魚想知道的問題,為此,老魚特别采訪了 OceanBase CEO 楊冰和 OceanBase CTO 楊傳輝。

一天 Github Star 破兩千

作為國内自研資料庫的标杆,OceanBase 開源顯然備受矚目。此次開源采用業界通用 Open Core 模式。也就是核心(core)開源,周邊付費。好處在于開源和非開源子產品界限分明,難在取舍度上的把握。如果開源部分太弱,開發者會覺得雞肋,如果開源部分尺度太大,顯然會影響周邊。

媒體專訪 | 做難而正确的事,OceanBase 的取舍

從實際情況來看,開源僅一天,OceanBase 就已在 Github 上拿下2100+個Star,火爆程度可見一斑,也從側面證明開發者對 OceanBase 開源誠意的肯定。

有開發者表示,OceanBase 代碼值得一看,顔值高,是 DB 中的“大美女”。也有開發者說,看代碼量,OceanBase 确實有誠意,隻看了一天代碼就學到很多。

更有開發者表示,能夠開發出一個300萬行代碼的軟體充分說明了 OceanBase 團隊的實力,大型國産軟體還得靠這樣的大團隊。

OceanBase CEO 楊冰說:“OceanBase 開源是有真材實料的,也是真心實意的。相信開發者很快就會發現這點。”

OceanBase 社群版包含完整的資料庫核心、分布式元件和接口驅動層。企業版與社群版的差别僅在于進階功能,如商業特性相容、圖形化管理工具、操作審計、安全加密、高可用擴充等。OceanBase CTO 楊傳輝告訴老魚。

開源初心 做難而正确的事

時間回撥到一年前,2020年6月8日,螞蟻集團宣布将自研資料庫産品 OceanBase 獨立進行公司化運作,公司名為北京奧星貝斯科技有限公司。

從獨立公司成立這一天起,OceanBase 管理團隊就一直在思考,接下來到底應該怎麼走?取什麼?舍什麼?是不是隻做線下的?線上的要不要做?雲是趨勢,作為獨立的資料庫公司,中立性是需要保持的,如何去做多雲的适配?這些都非常難決策。

“作為公司的 CEO,我考慮最多的是公司生死問題,OceanBase 不做什麼會死?”楊冰告訴老魚。OceanBase 不開源并不一定會死,但活的肯定不如想像中的美好,因為,時間視窗很重要,OceanBase 必須抓住這個時間視窗。如果隻是為了賺點錢,OceanBase 不一定要開源,但 OceanBase 的夢想是成為最優秀的世界級資料庫。

OceanBase 從誕生之初就一直在“做難而正确的事”,楊冰說。做資料庫難,選擇自研這條路就更難了,打榜拿世界第一也很難,OceanBase 一直在選擇最難啃的骨頭去啃,是因為 OceanBase 團隊覺得這些事值得做,并且正确的事。因為,隻有這樣才能真正做到國産化的核心替代。

楊冰表示,在中國并不缺一家資料庫的公司,但卻缺少一家真正能夠完成核心替代的高端資料庫。

事實上,目前國産化的挑戰依然非常大,OceanBase 在國産資料庫中并不算差,但僅靠今天的能力想要真正達到全面國産化還有差距,OceanBase 作為國産資料庫的一個重要的參與者,希望可以發展的更快。而開源可以幫助 OceanBase 更快的應用起來,促進産品更快的成熟和落地,是以, OceanBase 選擇開源,這個決策在團隊和集團高層中沒有任何糾結。楊傳輝說。

表個态 開源會一直做下去

事實上,OceanBase 早期版本曾經開過源,隻是之後又閉源了,那麼,這次開源與早期有何不同,曆史還會重演嗎?

顯然,這是個很尖銳的問題。但老魚還是問了。因為,這一定是衆多開發者非常關注的問題。

楊傳輝表示,OceanBase 早期0.4版本确實曾經做過開源,不過,那時的開源是技術性開源,也就是就純技術層面的分享和貢獻,另外,也有跟風的成分。因為,當時阿裡開源了不少項目,OceanBase 作為技術之一也就開源了,但無論是從架構、代碼成熟度上看,還有營運規劃上,其實當時都沒有做好充分的準備。

但這次 OceanBase 開源與早期的開源完全不同。楊傳輝說,今天開源已經上升為 OceanBase 重要的技術戰略。這次開源是充分考慮了技術和商業發展做出的戰略決定。

“這裡表個态,OceanBase 開源一定會持續下去,并且有專門的團隊去營運維護,而且這個團隊人還很多。”楊冰說。雖然,OceanBase 沒有很豐富的開源營運經驗,還有很多東西需要去學習。但楊冰相信,沒有邁不過的坎,團隊擅長解決問題,畢竟連支付寶場景、TPC-C 也都過了,是以,隻要定好方向,大家去做就好了,隻是做事方式方法需要學習。

值得強調的是,OceanBase 是自研的資料庫,這與基于開源 MySQL 或 PostgreSQL 二次開發的自研資料庫并不一樣,沒有現成的生态,需要完全建構一個與 MySQL 平行的第三個生态。楊傳輝說,是以,OceanBase 開源起步會更艱難。因為,所有代碼都是第三方體系,而不是以前熟悉的 MySQL 和 PostgreSQL。是以,前期陡峭的成本是存在的。

為了降低陡峭成本,OceanBase 還誕生了“春風十裡”計劃,樹立10大标杆客戶,主動上門布道,主動提供 VIP 服務,不求客戶回報,隻為扶上馬送一程,幫客戶成功,讓客戶真正把 OceanBase 用起來。楊傳輝說。為此,他還給自己定了個小目标,每兩個月一次直播,不是講理念,而是分享技術和代碼。

總的來說,OceanBase 此次開源是認真的而非作秀,其開源目的和路線圖很清楚,更為關鍵的是,對于開源,OceanBase 有着長期持續投入的打算和足夠耐心,剩下的就交給時間來檢驗。

開源,能否助力 OceanBase 達成世界級資料庫的夢想,我們拭目以待。