羅杰
近日Gartner公布了全球數(shù)據(jù)庫最新排名,全球格局和十年前相比發(fā)生了巨大的變化,除了老牌的甲骨文、IBM、微軟、SAP和Teradata外,有5家新秀進入了全球前十。國內(nèi)廠商里成績最好的阿里云,第一次入圍Gartner報告時僅排名全球第26名,用了不到6年時間,已殺到全球第7的位置,超過了老牌數(shù)據(jù)倉庫廠商Teradata,呈現(xiàn)不斷上升的趨勢。
數(shù)據(jù)庫與中間件和操作系統(tǒng)并列為全球三大基礎(chǔ)軟件技術(shù),也是企業(yè)IT系統(tǒng)必不可少的核心技術(shù),銀行、電信、制造、互聯(lián)網(wǎng)等所有行業(yè)都依賴于數(shù)據(jù)庫技術(shù)。這二十年來,商業(yè)數(shù)據(jù)庫市場仍然是IT行業(yè)最穩(wěn)定、最具黏性的領(lǐng)域之一。由于其技術(shù)的高難度,數(shù)據(jù)庫長期以來被少數(shù)公司控制了絕大部分市場份額。據(jù)不同的統(tǒng)計口徑,全球數(shù)據(jù)庫市場在300億到600億美元之間,商用數(shù)據(jù)庫的領(lǐng)導(dǎo)廠商主要是Oracle、微軟、IBM和SAP。
數(shù)據(jù)庫并非新興行業(yè),在50多年的發(fā)展過程中經(jīng)歷了多個時代的演進,從傳統(tǒng)商業(yè)數(shù)據(jù)庫演進到了如今的云原生數(shù)據(jù)庫,到現(xiàn)在已經(jīng)是百億美元的產(chǎn)業(yè)。
故事要從上世紀60—70年代講起。與現(xiàn)在硬件發(fā)展的步伐落后于軟件、算法截然不同,早期的科技發(fā)展幾乎都是硬件驅(qū)動軟件。當時計算機由晶體管時代進入集成電路時代,計算能力、內(nèi)存容量都得到了大幅提升,計算機也不僅僅用于軍事領(lǐng)域,不少中小企業(yè)也開始使用它做數(shù)據(jù)管理。但遺憾的是,傳統(tǒng)的文件系統(tǒng)在面對更為復(fù)雜的數(shù)據(jù)時捉襟見肘,這主要因為數(shù)據(jù)共享性差并且無法描述數(shù)據(jù)之間的關(guān)系,而數(shù)據(jù)庫就是在這一背景下誕生的。
1970 年,關(guān)系數(shù)據(jù)庫之父、IBM研究員E.F.Codd發(fā)表了一篇名為《A Relational Modelof Data for Large Shared Data Banks》的論文,首次提出了關(guān)系模型的概念,并成為現(xiàn)代數(shù)據(jù)庫產(chǎn)品的主流,這是數(shù)據(jù)庫歷史上的一個重要轉(zhuǎn)折點,今天,我們看到的主流數(shù)據(jù)庫幾乎都是圍繞這一模型做研究。
事實上,市場上的相關(guān)數(shù)據(jù)庫產(chǎn)品直至1976年才誕生,霍尼韋爾公司開發(fā)了Multics Relational Data Store,開啟了商用關(guān)系數(shù)據(jù)庫的時代。彼時Larry Ellison正在一家名為Ampex的軟件公司工作,該公司正為美國中央情報局工作。
1977年,Ellison與 Bob Miner 和 Ed Oates創(chuàng)辦了一家名為軟件開發(fā)實驗室(Software Development Laboratories,SDL)的計算機公司(Oracle前身),并在創(chuàng)辦后的第三年里推出了第一個商用SQL關(guān)系數(shù)據(jù)庫管理系統(tǒng)。
而關(guān)系數(shù)據(jù)庫的提出者,IBM起了個大早,趕了個晚集,1983年終于將DB2帶入了商業(yè)市場;軟件巨頭微軟在1989年推出了另一個明星產(chǎn)品SQL Server。
傳統(tǒng)商業(yè)數(shù)據(jù)庫幾乎成為這些企業(yè)的專利,壟斷了整個數(shù)據(jù)庫行業(yè)市場。在市場驅(qū)動下,商業(yè)數(shù)據(jù)庫成為和操作系統(tǒng)一樣重要的軟件,幾乎每家大型企業(yè)都需要從Oracle買來大量的數(shù)據(jù)庫軟件,盡管價格居高不下,企業(yè)怨聲載道,但當時并沒有可替代方案。例如,在電商場景中,幾百萬人甚至是千萬人的同時在線購買,這樣的并發(fā)量跟過去的傳統(tǒng)業(yè)務(wù)場景相比是幾個數(shù)量級的增長,按照這個數(shù)量級去買商業(yè)數(shù)據(jù)庫,那是天文數(shù)字。
游戲規(guī)則從2000年開始改變。這時開源文化在美國和歐洲正濃,工程師們開始考慮一個新的問題——數(shù)據(jù)庫軟件是否也可以走出一條開源的路徑,于是MySQL、PostgreSQL等開源數(shù)據(jù)庫逐漸誕生,并吸引了大量擁躉,正式終結(jié)了關(guān)系型數(shù)據(jù)庫只能用 Oracle、SQL Server這些收費軟件的歷史。毫無疑問,對于很多對成本敏感的公司而言開源數(shù)據(jù)庫成為替代商業(yè)數(shù)據(jù)庫的另一種選擇。
另一方面,數(shù)據(jù)庫的應(yīng)用場景正在發(fā)生改變。由于移動互聯(lián)、物聯(lián)網(wǎng)技術(shù)的發(fā)展,結(jié)構(gòu)化與非結(jié)構(gòu)化數(shù)據(jù)爆發(fā)。海量數(shù)據(jù)瞬間涌來,那些安裝在企業(yè)IT系統(tǒng)里的傳統(tǒng)數(shù)據(jù)庫系統(tǒng)早已不堪重負,云被認為是最好的解決方案。
在這一節(jié)點,云廠商逐漸成為數(shù)據(jù)庫領(lǐng)域的主要玩家,他們擁有兩種選擇,其一是把傳統(tǒng)的數(shù)據(jù)庫以及開源的數(shù)據(jù)庫搬到云上來,給客戶以租用的方式提供服務(wù)。
這種方式在短期內(nèi)確實可以滿足用戶的需求,但單純地將現(xiàn)有數(shù)據(jù)庫產(chǎn)品移植到云上這條道路并不長久,從最近開源項目修改協(xié)議的趨勢可見一斑,Redis、MongoDB以及Kafka等都在修改協(xié)議,未來企業(yè)要在云上使用這些開源數(shù)據(jù)庫難度必然增加。
隨著互聯(lián)網(wǎng)時代流量的劇增,企業(yè)對數(shù)據(jù)庫的要求也在不斷提升,完全為云打造的數(shù)據(jù)庫才能更好地滿足業(yè)務(wù)快速增長的需求。于是,云廠商撕裂了傳統(tǒng)商業(yè)數(shù)據(jù)庫固若金湯的防線,將云原生數(shù)據(jù)庫帶入了IT行業(yè)。據(jù)Gartner預(yù)測,到2023年,全球3/4的數(shù)據(jù)庫都會跑在云上。
2014年,AWS發(fā)布了業(yè)內(nèi)首個云原生的關(guān)系型數(shù)據(jù)庫Aurora;2017年9月,阿里云在國內(nèi)率先發(fā)布了自主研發(fā)的云原生數(shù)據(jù)庫PolarDB,并于2018年4月正式商用。
相比傳統(tǒng)數(shù)據(jù)庫,云原生數(shù)據(jù)庫的優(yōu)勢如下:云原生數(shù)據(jù)庫,天然擁有云計算的彈性能力,開源數(shù)據(jù)庫的簡潔易用和開放生態(tài),以及傳統(tǒng)數(shù)據(jù)庫的SQL管理和處理性能等各方面的優(yōu)勢,通過融合創(chuàng)新,換道超車,在云環(huán)境下能夠為用戶提供更好的數(shù)據(jù)庫服務(wù)。
舉例來說,企業(yè)搭建的傳統(tǒng)商業(yè)數(shù)據(jù)庫通常承載了ERP、CRM、OA等一系列系統(tǒng),而數(shù)據(jù)模型也是基于老系統(tǒng)開發(fā),如果沒有與之兼容的云數(shù)據(jù)庫,上云幾乎要重寫代碼。
阿里云用云原生數(shù)據(jù)庫PolarDB破解了這一難題,相對于傳統(tǒng)的數(shù)據(jù)庫,PolarDB實現(xiàn)了高性能、高容量兼具低成本特性,為互聯(lián)網(wǎng)海量數(shù)據(jù)以及超高并發(fā)場景而生,這些實實在在的好處,未來也需要通過更多客戶的采用,讓它的價值真正充分發(fā)揮出來。