從資料庫開源商業版本差異談起
資料庫,作為基礎軟體產品,其研發資源及成熟應用,需要較大投入和較長週期。開源作為一種新的軟體開發協作模式,可大大加速這一過程。從上世紀九十年代,以 MySQL 和 PostgreSQL 為代表的開源資料庫興起;到近些年來國內資料庫也紛紛走向開源道路。的確,開源能為企業及產品帶來很大的收益,如加快研發週期、加速產品成熟、促進生態建設等。當然,出於商業化訴求,企業也紛紛摸索在開源條件下的商業模式,大部分企業在開源的同時也提供了商業版本。作為終端使用者,是選擇社群開源版本還是商業閉源版本,是個值得思考的問題。本文收集資料庫領域幾家代表性企業開源(社群)版本與商業(企業)版本產品功能及差異,並對這一差異背後的原因加以思考。本文部分資料來自阿里雲、甲骨文、PingCAP、OceanBase 公司朋友提供,特表示感謝。
1).MySQL
MySQL 作為最為流行的一款開源資料庫,其社群版是完全免費的;企業版則需要支付許可證費用且提供了更強功能。針對社群版本,功能大家已經比較熟悉了,下面重點說明下企業版的增強功能。總體來說,MySQL 企業版的功能比社群版更豐富,而且有更高的安全性、可管理性及配套服務等。其具體增強功能如下:
2).TiDB
TiDB 是 PingCAP 公司自主設計、研發的開源分散式關係型資料庫,是一款同時支援線上事務處理與線上分析處理 (HTAP) 的融合型分散式資料庫產品,具備水平擴容或者縮容、金融級高可用、實時 HTAP、雲原生的分散式資料庫、相容 MySQL 5.7 協議和 MySQL 生態等重要特性,支援在本地和雲上部署。其產品在誕生之初,就秉承開源理念,其核心多款開源專案合計 Star 數突破50K。其企業版和社群版產品差異如下:
3).OceanBase
OceanBase 一款開源分散式 HTAP 資料庫管理系統,具有原生分散式架構,支援金融級高可用、透明水平擴充套件、分散式事務、多租戶和語法相容等企業級特性。自2021年6月開源以來,秉承核心完全開放的原則,已開源超 300 萬行程式碼。其希望透過開源讓更多的上下游廠商、夥伴和開發者參與進來了解和使用產品,使產品發展的更快、更好、更普及,旨在共同將OceanBase打造成全球最具競爭力的分散式資料庫。其提供企業版和社群版兩種形態:
OceanBase 資料庫企業版:OceanBase 企業版是一款完全自研的企業級原生分散式資料庫,在普通硬體上實現金融級高可用,首創“三地五中心”城市級故障自動無損容災新標準,重新整理 TPC-C 標準測試,單叢集規模超過 1500 節點,具有云原生、強一致性、高度相容 Oracle/MySQL 等特性。
OceanBase 資料庫社群版:相容 MySQL 的單機分散式一體化資料庫,具有原生分散式架構,支援金融級高可用、透明水平擴充套件、分散式事務、多租戶和語法相容等企業級特性。OceanBase 社群版資料庫核心開源,與 MySQL 相容,對接虛擬化和大資料技術及產品,支援多種圖形化的開發工具、運維監控工具和資料遷移工具;同時社群版提供開放的介面和豐富的生態能力,支援企業或個人更好的實現定製化業務需求。
4).PolarDB-X
阿里雲,近些年來非常重視開源生態建設。在資料庫領域開源了多款產品,以 PolarDB-X 產品為例,是在2021年的雲棲大會正式開源。其負責人表示“我們將阿里最核心的雲原生資料庫技術進行開源,希望開發者和客戶透過開源版本快速使用阿里雲資料庫產品技術,並參與到技術產品的迭代過程中來,共建雲原生分散式資料庫生態。”PolarDB-X是由阿里自主研發的原生MySQL分散式資料庫,相容MySQL協議與客戶端,具備自動負載均衡、高可用、HTAP混合負載、支援分散式事務、全域性二級索引等重要特性,專注解決超高併發吞吐、海量資料儲存、大表瓶頸等資料庫瓶頸難題,歷經各屆天貓雙11及全行業客戶業務的考驗。從範圍上看,PolarDB-X 開源較為徹底,開發的新功能在經過三個月的線上試用後,就會合入到開源分支中。除了阿里系其他生態工具類產品外,其自身功能全部實現了開源。其主要功能包括:
從上面幾款資料庫產品可見,開源產品與商業產品在大體功能上相差不大,重點是在部分企業級功能和服務上面。這其中主要包括幾個方面:
1).安全
安全功能,是企業選擇一款產品的重點考慮要素之一,特別是資料庫這種承載資料,擔負企業核心業務的基礎平臺。關於安全還可細分為三類功能:一是訪問行為類,如審計、白名單、防火牆;二是資料儲存展示類,如加密、脫敏、簽名;三是安全擴充套件類,如對接第三方安全系統。上述三類功能,重點是解決資料庫平穩執行、資料合規使用及管理便利性問題。企業版可以很好地滿足此類需求,如使用者使用社群版本則需透過外購第三方或自研的方式解決。
2).運維
運維能力,是企業能否用好產品的關鍵因素之一。好的產品,還需要好的運維支撐能力來輔助。企業版軟體在這部分功能上主要是提供視覺化、便捷的運維方式為主,包括常見的安裝部署、備份恢復、監控告警、異常診斷、效能最佳化等。重點是解決資料庫的運維效能問題。這部分相對難度不大,如使用者使用社群版本可透過自研方式去解決;而且對於中大型企業來說,往往都有一套成熟運維體系,即使企業版提供也許融入自有體系中,因而相對不是很剛需。
3).生態
生態功能,主要是指企業的上下游及關聯方使用好此產品所需要的功能。這其中可細分為幾種情況:一是開發者生態,提供好的設計、開發平臺供開發者使用,方便開發者快速上手;二是資料生態,即資料如何流入、流出此平臺,企業內往往不止一種資料庫,需要資料在多平臺間流動;三是相容生態,即為了充分享受其他產品的生態能力二提供的相容性功能,如協議、語法、工具等方面的相容。上述功能是重點解決企業使用資料庫開發好系統的問題。這部分相對難度較大,但有些功能屬於非剛需。特別在相容性上做的很好的產品,通常可利用原有生態上的部分能力,可解決一定問題。
4).服務
只有好的產品,沒有好的服務,是無法保證能夠使用好的。特別是對於承載企業關鍵業務的資料庫,是不允許出現任何閃失的。這也是很多使用者考慮購買企業版,希望能得到的“兜底”服務效果。企業版提供的服務,不僅在範圍上、時效性、預防類等多方面比社群版本更有保障,而且有公司能夠擔責對使用者也是一種解脫。當然現在也有一種"開源商業服務"的形式,即提供對開源產品的商業服務,能在一定程度上解決企業使用開源的問題。這種情況,則需重點考慮服務企業的資質能力(特別在此開源專案上)。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024922/viewspace-2938996/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mpp 資料庫greenplum官方商業版本與開源版本的差異資料庫
- 開源資料庫license數量首次超過商業資料庫資料庫
- 不同資料庫SQL語法差異資料庫SQL
- 談談後設資料、主資料和參考資料的差異、相互作用以及對商業智慧和決策的影響
- 從一個資料庫連線數計算公式談起資料庫公式
- java 如何從零實現一個資料庫差異對比工具?Java資料庫
- 從資料庫角度談業務連續性資料庫
- 開源資料庫商業化加速,雲端計算助推開源軟體發展資料庫
- 微信終端開源資料庫 WCDB – Swift 版本資料庫Swift
- 資料庫和資料湖的關鍵概念性差異資料庫
- java比較mysql兩個資料庫中差異JavaMySql資料庫
- 大咖說·開源人說|資料庫 PolarDB 開源的商業邏輯與價值思考資料庫
- 從Kubectl Top說起,談談Kubernetes是如何進行資源監控的?
- 從原始碼分析JSONObject因版本差異導致toString格式異常問題原始碼JSONObject
- 一起玩轉開源資料庫!OceanBase DevCon 之開源生態全景解析資料庫dev
- 談談 mysql和oracle的使用感受 -- 差異MySqlOracle
- 廠商支援的開源資料庫是否已死? - Dotan資料庫
- 開源資料庫流行度首次超過非開源資料庫Confluent資料庫
- 開源與商業化的愛恨糾葛,從自由軟體運動說起(上)
- Golang 針對 MySQL 資料庫表結構的差異 SQL 工具GolangMySql資料庫
- 大咖說·對話開源|企業如何用好開源資料庫資料庫
- 談談資料資產和資料產品的異同
- Java版本功能差異一覽指南 - marcobehlerJava
- sqlserver 透過壓縮bak檔案實現從伺服器還原資料庫《資料差異數個小時》SQLServer伺服器資料庫
- 從影像融合談起
- 【譯】框架與庫的差異框架
- 從原始碼解析 Spring 資料庫異常抽理原始碼Spring資料庫
- 從《風起隴西》看企業資料安全
- openGauss資料與PostgreSQL的差異對比SQL
- 分散式資料庫火了 開源填補資料庫空白分散式資料庫
- 時序資料庫TDengine的叢集使用經驗分享,附上開源版本資料庫
- SQL Server 2017 各版本之間的差異SQLServer
- 商業化之路怎麼走,一家開源分散式資料庫廠商的答案|愛分析調研分散式資料庫
- 20190312_淺談go&java差異(一)GoJava
- 大資料開發:剖析Hadoop和Spark的Shuffle過程差異大資料HadoopSpark
- indexedDB 資料庫版本Index資料庫
- 開源走向世界(下):從資料庫技術演進看開源力量丨BDTC 2021資料庫
- 從原理開始分析全息投影與幻影成像的差異