在越來(lái)越多的會(huì)議、媒體、文章、報(bào)道上看到一種說(shuō)法:“未來(lái)的數(shù)據(jù)庫(kù)是云數(shù)據(jù)庫(kù)的時(shí)代,云數(shù)據(jù)庫(kù)廠商終將取代傳統(tǒng)數(shù)據(jù)庫(kù)廠商”。首先我并不否認(rèn)這種說(shuō)法,但是云數(shù)據(jù)庫(kù)是否真的推進(jìn)了數(shù)據(jù)庫(kù)技術(shù)的進(jìn)步有待商榷。本文我想談?wù)勛约旱囊稽c(diǎn)看法。
商業(yè)的成功
近幾年我們發(fā)現(xiàn)以亞馬遜aws、微軟azure、阿里云polardb等為主導(dǎo)的云數(shù)據(jù)庫(kù)突然興起,迅速占領(lǐng)了市場(chǎng),慢慢蠶食著以db2、oracle為首的傳統(tǒng)數(shù)據(jù)庫(kù)廠商的市場(chǎng)份額,雖然oracle公司也從oracle 12c版本開(kāi)始朝著云化的方向發(fā)展,但是鑒于oracle架構(gòu)的復(fù)雜性,這條路一直走的比較艱難,成效并不顯著。
\在2019年的Gartner全球數(shù)據(jù)庫(kù)魔力象限評(píng)選中,AWS、微軟、阿里云、谷歌云都出現(xiàn)在了這個(gè)榜單中,而且微軟云和亞馬遜azure已經(jīng)緊逼傳統(tǒng)巨頭oracle,在領(lǐng)導(dǎo)者象限齊頭并進(jìn)。同時(shí)阿里云已經(jīng)連續(xù)兩年入選數(shù)據(jù)庫(kù)魔力象限,2019年還首次入選挑戰(zhàn)者象限,距離領(lǐng)導(dǎo)者象限只有一步之遙。隨著阿里云、谷歌等云廠商強(qiáng)勢(shì)上升,IBM、SAP則出現(xiàn)了明顯下滑,IBM從領(lǐng)導(dǎo)者象限滑首次落至遠(yuǎn)見(jiàn)者象限。
下面這張圖Gartner的報(bào)告,顯示了2018年全球數(shù)據(jù)庫(kù)廠商份額對(duì)比。我們可以很清晰地看到云數(shù)據(jù)庫(kù)廠商呈現(xiàn)爆發(fā)式的增長(zhǎng),而且上漲勢(shì)頭不止。
\
Gartner的數(shù)據(jù)顯示,2018年,數(shù)據(jù)庫(kù)云服務(wù)已經(jīng)為整個(gè)數(shù)據(jù)庫(kù)市場(chǎng)貢獻(xiàn)了104億美元,整個(gè)市場(chǎng)是460億美元,這其中不包括托管licence。同時(shí)整個(gè)數(shù)據(jù)庫(kù)市場(chǎng)的增長(zhǎng)接近70%來(lái)自于云數(shù)據(jù)庫(kù)的增長(zhǎng)。
技術(shù)的倒退
我本身是一個(gè)做技術(shù)的,不是研究市場(chǎng)的。所以我深知數(shù)據(jù)庫(kù)作為基礎(chǔ)軟件設(shè)施上的“明珠”,技術(shù)門(mén)檻之高常人無(wú)法想象。
1977年IBM完成system R系統(tǒng)原型設(shè)計(jì),后來(lái)DB2數(shù)據(jù)庫(kù)于1983年推出,成為關(guān)系型數(shù)據(jù)庫(kù)的開(kāi)拓者;1977年拉里埃里森創(chuàng)辦oracle公司,同時(shí)于1979年推出oracle數(shù)據(jù)庫(kù);postgresql始于1986年,最初由伯克利的postgres軟件擴(kuò)展而來(lái)。還有infomix、mysql、sql server、sybase等數(shù)據(jù)庫(kù)其實(shí)都是經(jīng)過(guò)幾十年的漫長(zhǎng)發(fā)展。
DB2、oracle作為傳統(tǒng)數(shù)據(jù)庫(kù)廠商的代表,經(jīng)過(guò)這么多年的發(fā)展,其實(shí)給數(shù)據(jù)庫(kù)領(lǐng)域的研發(fā)帶來(lái)非常高的門(mén)檻,如果從頭開(kāi)始設(shè)計(jì)一款數(shù)據(jù)庫(kù)難度非常大,首先從最底層的模塊:sql引擎、數(shù)據(jù)庫(kù)對(duì)象、存儲(chǔ)引擎、事務(wù)管理、緩沖區(qū)設(shè)計(jì)、內(nèi)存設(shè)計(jì)、鎖管理等等都是難度非常大,而且要把這些模塊整合起來(lái)成為一個(gè)完備的數(shù)據(jù)庫(kù)系統(tǒng)更是難上加難,所以新型廠商如果想從頭做一套新的數(shù)據(jù)庫(kù)幾乎很難實(shí)現(xiàn)。
那么這些新型數(shù)據(jù)庫(kù)廠商是如何實(shí)現(xiàn)彎道超車(chē)的呢?答案其實(shí)是:“概念+整合”。
“概念”其實(shí)就是數(shù)據(jù)庫(kù)“云”的概念,其實(shí)我一直覺(jué)得數(shù)據(jù)庫(kù)是一個(gè)不適合云化的東西,云其實(shí)有兩層概念,代表著云化的兩條路,一是云廠商根據(jù)客戶資源需求提供基礎(chǔ)設(shè)施和軟硬件,類(lèi)似公有云,適合個(gè)人客戶或者體量不大的客戶;另外一種是大企業(yè)由于數(shù)據(jù)的重要性需要將云搬到自己的數(shù)據(jù)中心,或者自己建云,這里的云可以是實(shí)現(xiàn)一套管理平臺(tái),將所有數(shù)據(jù)庫(kù)管理起來(lái),實(shí)現(xiàn)資源的自助申請(qǐng)、自動(dòng)部署、自動(dòng)交付。
“整合”說(shuō)的是云廠商并不自己研發(fā)底層的數(shù)據(jù)庫(kù)內(nèi)核,或者研發(fā)出一套新的數(shù)據(jù)庫(kù),而是將現(xiàn)有的開(kāi)源數(shù)據(jù)庫(kù)進(jìn)行整合,云廠商的研發(fā)重點(diǎn)在于如何將這些開(kāi)源數(shù)據(jù)庫(kù)整合起來(lái),實(shí)現(xiàn)統(tǒng)一管理,形成自己的一套大的云數(shù)據(jù)庫(kù),在用戶角度來(lái)看,用戶不知道或者不關(guān)心底層是什么數(shù)據(jù)庫(kù),用戶只需要給云廠商提出cpu,內(nèi)存,容量等需求,云廠商那邊實(shí)現(xiàn)了IaaS,PaaS,自動(dòng)的數(shù)據(jù)庫(kù)實(shí)例創(chuàng)建,交付給用戶,數(shù)據(jù)庫(kù)維護(hù)、數(shù)據(jù)備份等維護(hù)類(lèi)工作由廠商完成。所以說(shuō)云廠商其實(shí)是看到了市場(chǎng)的機(jī)會(huì),個(gè)人客戶和小公司其實(shí)占據(jù)絕大多數(shù),他們是沒(méi)有能力或者必要去購(gòu)買(mǎi)高額的licence,反而選擇云廠商是一個(gè)很好的選擇,同時(shí)還節(jié)省了很大部分維護(hù)費(fèi)用。
那么我為什么說(shuō)數(shù)據(jù)庫(kù)云是技術(shù)的倒退呢。拋開(kāi)市場(chǎng)不說(shuō),單看技術(shù),數(shù)據(jù)庫(kù)云其實(shí)就是實(shí)現(xiàn)了一套數(shù)據(jù)庫(kù)管理平臺(tái),不管是公有云還是私有云,最終技術(shù)的研發(fā)都還是在圍繞著如何更高效地交付、管理用戶的數(shù)據(jù)庫(kù)。其實(shí)底層真正能稱(chēng)為數(shù)據(jù)庫(kù)的那部分內(nèi)核是沒(méi)有改動(dòng)的或者改動(dòng)很小的。
現(xiàn)在的云廠商底層數(shù)據(jù)庫(kù)幾乎都是mysql或者postgresql,將它們進(jìn)行整合,提供兼容mysql或者postgresql的服務(wù)。當(dāng)然不否認(rèn)很多廠商做了很多技術(shù)創(chuàng)新,比如說(shuō)存儲(chǔ)計(jì)算分離,計(jì)算層的mysql或者pg可以無(wú)限擴(kuò)展,存儲(chǔ)層共享,同時(shí)使用rdma進(jìn)行計(jì)算層和存儲(chǔ)層的互聯(lián),實(shí)現(xiàn)高速訪問(wèn),還有一些針對(duì)mysql做了優(yōu)化,比如基于redo的物理復(fù)制,使用全局內(nèi)存取代log shipping提供一致性讀等。這些功能雖然也觸碰到了數(shù)據(jù)庫(kù)的內(nèi)核,但是也只是很小的一部分,而且說(shuō)到底只是為了使云上更高效而做的創(chuàng)新,還是向市場(chǎng)看齊的。
我們想象一下,如果這些云廠商未來(lái)真的取代了db2、oracle這類(lèi)公司,到底是好事還是壞事呢?Db2、oracle是從最底層的數(shù)據(jù)庫(kù)模型的設(shè)計(jì)一步一步走過(guò)來(lái)的,這些技術(shù)門(mén)檻非常高,這些東西才是數(shù)據(jù)庫(kù)的根基,如果根基都沒(méi)了,“云”只是一團(tuán)空氣。
責(zé)編AJX
-
云計(jì)算
+關(guān)注
關(guān)注
39文章
7702瀏覽量
137116 -
數(shù)據(jù)庫(kù)
+關(guān)注
關(guān)注
7文章
3752瀏覽量
64233
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論