開源資料庫雖香,但需警惕風險勿淪為“韭菜”

lumin1020發表於2020-10-12
開源資料庫雖香,但需警惕風險勿淪為“韭菜”

最近,特斯拉因為割了一茬又一茬的“韭菜”從而引發使用者征討,當“韭菜”肯定不開心。但即便被割了“韭菜”,買電動車,相信很多人的首選,依然是特斯拉,為什麼,因為特斯拉的確是一輛好車,而這種好是建立在長期研發投入上的絕對技術優勢。

對於國產資料庫軟體,其實也一樣,如果不持續投入用心研發,實打實的做出自己的核心競爭力,只想投機,掙快錢,在開源資料庫基礎上穿個衣帶個帽,結局註定被割“韭菜”。

有人說,開源軟體怕是壓垮國產基礎軟體的最後一根稻草。雖有些武斷和悲觀,但充分體現出了一種對國產基礎軟體現狀的憂慮。

科技無國界,開源無國界,被事實證明就是個笑話。

中國是最大的開源技術受惠者之一,並正在成為最大的反哺者之一。開原始碼的貢獻率上,中國已經位居全球第二。中國科技公司成為美國開原始碼託管平臺的重要客戶,中國的GitHub使用者已居全球第二,僅次於美國。

有媒體資料顯示,截至2019年3月,阿里巴巴在GitHub的公司帳號旗下有專案有1243個,百度有746個,騰訊有131個,華為有247個,小米有113個,美團有131個。

遺憾的是,GitHub現已淪為了美國製裁其他國家的政治工具,在美國貿易管制政策下,去年,GitHub切斷了包括伊朗、敘利亞和克里米亞在內國家的某些服務,在全球範圍內一度引起恐慌和憤怒。

那麼,中國會不會在某一天突然被納入其中呢,誰也不敢打包票,但可能性是存在的。也正是出於這個考慮,7月14日,工信部選出碼雲Gitee,算是未雨綢繆。

開源中國此前釋出的一篇文章《開源界也要注意,Apache 基金會與 GitHub 都受美國法律約束》,其中就提到,Apache基金會官網明確說明遵循美國出口管制,這意味著旗下所有專案,諸如 Hadoop、Spark 都將受到出口管制。而GitHub、Google Code等之類的程式碼託管平臺也均明確宣告遵守美國出口管制條例。

Apache基金會有這樣的問題,那麼其他的基金會呢?我們不能忽視, 幾乎所有著名的開源軟體團體都位於美國,且有的許可證(例如MPL 1.1)規定了管轄法院為美國法院,且適用法律為美國法。

這些事實無不在提醒我們,開源軟體並不等於自由,同樣受到美國出口管制的影響,雖然開源軟體沒有高昂的商業授權許可費用,但使用開源軟體是有風險。這種風險不僅包含政治風險,還有法律風險和商業風險。

不僅斷供,開源專案也有閉源風險,鐵一樣的事實告訴我們,開源專案不僅會閉源而且這還並非個例,在資料庫領域就有不少。

2018年8月,Redis Labs 閉源了 RediSearch、Redis Graph、ReJSON、ReBloom、Redis-ML 等專案,當時引起了開源社群不小的騷動。

2018年10月,MongoDB宣佈其開源許可證將從GNU AGPLv3,切換到 SSPL,新許可證將適用於新版本的MongoDB Community Server 以及打過補丁的舊版本。

同年11月,圖資料庫Neo4j宣佈,從 Neo4j3.5版本開始,企業版將僅在商業許可下提供,不再在GitHub上提供原始碼,所有依賴Neo4j的開源專案全部受到影響;

2019年6月,CockroachDB核心程式碼的授權協議將從Apache License version 2 (APL)變更為Business Source License(BSL)。

眾所周知,Andriod開源是谷歌為了對抗蘋果iOS系統,但在超越iOS成為全球第一大移動作業系統後。谷歌也玩起了手段,以開源為幌子,再慢慢的透過一系列手法,掏空開源的Andriod,將手機廠商的命根子抓住了,雖然說是開源,但事實上,並不是真正的全開源,所以,Linux才一直譏諷Android是偽開源。

因依賴的開源專案閉源而導致下游專案受限這樣的事件雖是小機率事件,但也確實發生了不止一起。

回到資料庫領域,以國內最受歡迎的MySQL開源資料庫為例。

從授權協議看,MySQL有2種授權協議,一種是GPL授權協議,即不允許修改後和衍生的程式碼作為閉源商業軟體進行釋出和銷售,只要採用了開源軟體的介面和庫,哪怕沒有修改原始碼,也必須對自身程式碼開源。

另外一種是商業授權協議,針對OEM,ISV、VAR和分銷商,如果不想開原始碼,則必須與Oracle簽訂商用授權協議,依然受制於人。

事實上,國內一些“拿”開源資料庫的公司,很大一部分並沒有進行開源的計劃,那麼,隨時可能面對Oracle強大的法務團隊。

有些人,可能會說想多了,鹹吃蘿蔔淡操心,其實不然,看一看甲骨文和谷歌長達10年的Java版權案,就知道這種擔心並不多餘,要知道,谷歌只複製了少量的Java程式碼,而且僅僅是宣告部分。有報導顯示,在安卓系統的1500萬行相關程式碼中,複製的程式碼還不到0.1%。

甲骨文能在Java上這麼做,那麼,同等重量級的MySQL上也不是沒可能。現在甲骨文不搭理你,只是因為你還不夠大,還不到收割的時候。

事實上,Oracle收購MySQL後,國外就有很多人壓根就不信任Oracle,擔心其會將 MySQL閉源,因此,又搞出了MariaDB。

中國的資料庫軟體,多源自或者借鑑開源資料庫及其變種,大資料平臺,多源自或直接整合開源大資料生態元件,純自研的還是少數,這是事實。

可以透過開源資料庫,去學習別人的經驗,但絕不是簡單的“拿來主義”。因為,這沒有技術創新,也解決不了核心技術供應問題,還會造成“劣幣驅逐良幣”的惡性競爭發展趨勢。

如果不能技術自立,今天的韭菜,明天依然是韭菜,只是更為粗壯的韭菜而已。

從自主研發能力看,清華大學地球系統科學系副教授劉利就曾說過,長期使用國外免費開源基礎軟體,很大程度上制約了我國自主研發的積極性和創新能力,拉大了我國在相關領域與其他國家的差距。如果有一天被釜底抽薪,有的產業可能會崩塌。

他強調,“我們這一代人必須努力,用真正的自主創新去申請專利。如果現在打不好基礎,下一代人會過得更苦。”

無論是MySQL還是PostgreSQL,都是模仿的Oracle的架構,但在功能、穩定性上卻都比不了Oracle。幾十年過去了,也未曾超越Oracle,而且,還要受限其單機架構的短板,天生就不支援分散式事務。因此,作為追趕者,採用技術跟隨戰略是沒希望的。尤其是關鍵資訊科技基礎設施需要走向自主,而非一味的模仿和“拿來”,必須透過技術創新,用新的技術架構突破限制,走別人未走的路,才能有機會真的追趕、甚至超越,也才可能不被卡脖子。

如果技術不能自立,僅靠修改開源軟體的弊端是顯而易見的,國內的應用場景更為複雜,資料量也更大,開源改造的產品即便沒有政治或者國際環境的影響,也無法完全滿足企業級市場訴求。因為,對於傳統企業級客戶,IT能力往往不是他們的核心競爭力,他們更依賴通用資料庫產品來提供完整解決方案,保障服務級別SLA,而不是強迫業務修改程式碼。

好在,這些年,國內已經開始有幾家開闢了自己獨特技術路線的廠商

比如:在OLTP方面,有螞蟻金服純自研的分散式強一致性關聯式資料庫OceanBase,兩次登頂TPC-C榜首,並創造7.07億tpmC的效能記錄。

在OLAP方面,有星環科技的ArgoDB,2018年5月,TPC-DS打榜第一,是全球首家通關TPC-DS的廠商。事實上,星環科技早期基於Hadoop,因為Hadoop在技術和商業方面的侷限性,無法很好的滿足企業級市場。2015年星環完全脫離Hadoop技術路線,走向自研,重構五層架構。

在HTAP方面,有PingCAP的TiDB,國內最火HTAP資料庫,理論基礎來源於Spanner/F1論文 ,以及工業級分散式一致性協議演算法Raft論文,並透過開源方式獲取全球使用者的信任,定期持續輸出內容,使用者關注度非常高。這點值得其他資料庫廠商學習。

最後,國產基礎軟體的發展需要良好的市場環境,國家應該在保護智慧財產權方面加大力度,嚴厲打擊抄襲、盜版、破解等行為,建立公平公正的市場秩序,這樣才能讓從事基礎軟體開發的企業、開發者真正獲得收益,基礎軟體產業才能真正發展壯大並站在世界舞臺參與全球競爭。

作者:老魚


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69965512/viewspace-2726274/,如需轉載,請註明出處,否則將追究法律責任。

相關文章