什么是云原生數(shù)據(jù)庫(kù)(Cloud Native Database)?
突然間,云原生數(shù)據(jù)庫(kù)就火了。
根據(jù)IDC《2021年下半年中國(guó)關(guān)系型數(shù)據(jù)庫(kù)軟件市場(chǎng)跟蹤報(bào)告》顯示,2021下半年中國(guó)關(guān)系型數(shù)據(jù)庫(kù)軟件市場(chǎng)規(guī)模為15.8億美元,同比增長(zhǎng)34.9%,其中,公有云關(guān)系型數(shù)據(jù)庫(kù)規(guī)模8.7億美元,同比增長(zhǎng)48.7%。Gartner 數(shù)據(jù)顯示,2020 年全球企業(yè)數(shù)據(jù)庫(kù)市場(chǎng)規(guī)模達(dá) 648 億美元,其中90%的企業(yè)數(shù)據(jù)庫(kù)市場(chǎng)規(guī)模增量來(lái)自云原生數(shù)據(jù)庫(kù),2020 年云原生數(shù)據(jù)庫(kù)市場(chǎng)規(guī)模增長(zhǎng)率超 50%。
什么是“云原生”?
作為一個(gè)正在蓬勃發(fā)展的新興技術(shù),隨著云原生的不斷發(fā)展,關(guān)于它的定義可謂是百花齊放。
在2015年,谷歌與Linux基金會(huì)聯(lián)合創(chuàng)辦了非盈利組織:云原生計(jì)算基金會(huì)(Cloud Native Computing Foundation, CNCF),成立初衷為推廣孵化和標(biāo)準(zhǔn)化云原生相關(guān)的技術(shù)。根據(jù)云原生計(jì)算基金會(huì)的描述,Cloud Native的定義如下:
云原生技術(shù)有利于各組織在公有云、私有云和混合云等新型動(dòng)態(tài)環(huán)境中,構(gòu)建和運(yùn)行可彈性擴(kuò)展的應(yīng)用。云原生的代表技術(shù)包括容器、服務(wù)網(wǎng)格、微服務(wù)、不可變基礎(chǔ)設(shè)施和聲明式API。
通過(guò)上面的定義,我們可以看到云原生概念提出的大背景其實(shí)是針對(duì)應(yīng)用層的,即我們常說(shuō)的“云原生”是“云原生應(yīng)用”,而非“云原生數(shù)據(jù)庫(kù)”。于是很多非數(shù)據(jù)庫(kù)領(lǐng)域的技術(shù)人事會(huì)將“云原生數(shù)據(jù)庫(kù)”拆解為“云原生”+“數(shù)據(jù)庫(kù)”,甚至提出基于容器部署的數(shù)據(jù)庫(kù)才是“云原生數(shù)據(jù)庫(kù)”,這是一個(gè)常見的錯(cuò)誤認(rèn)識(shí)。
那么什么是“云原生”的數(shù)據(jù)庫(kù),它是不是“云上的數(shù)據(jù)庫(kù)”呢?
云原生數(shù)據(jù)庫(kù)≠云上數(shù)據(jù)庫(kù)
隨著概念的熱炒,很多數(shù)據(jù)庫(kù)把軟件搬遷到云上便聲稱為“云原生數(shù)據(jù)庫(kù)”。我們還是要區(qū)分一下,云原生數(shù)據(jù)庫(kù)≠云上數(shù)據(jù)庫(kù)。
要想了解什么是云原生數(shù)據(jù)庫(kù),我們要知道云原生數(shù)據(jù)庫(kù)產(chǎn)生的背景。
近年來(lái)的數(shù)字化轉(zhuǎn)型使數(shù)據(jù)的處理和存儲(chǔ)發(fā)生了巨大變化。這既是商業(yè)邏輯的變化,也是以用戶體驗(yàn)為中心的轉(zhuǎn)變。全球各地的企業(yè)處理著比以往更多的數(shù)據(jù),迫切需要靈活、實(shí)用并且可靠安全的數(shù)據(jù)庫(kù)解決方案。大量的技術(shù)正在有效地利用云,并在這個(gè)過(guò)程中改變我們所有人的業(yè)務(wù)方式和生活方式,比如,突如其來(lái)的疫情使得在線會(huì)議會(huì)成為商業(yè)世界各個(gè)組織溝通的“新常態(tài)”。
因此,云原生數(shù)據(jù)庫(kù)是一種通過(guò)云平臺(tái)構(gòu)建、部署和交付的數(shù)據(jù)庫(kù)服務(wù),可提供可擴(kuò)展的、可靠的數(shù)據(jù)庫(kù)解決方案。云數(shù)據(jù)庫(kù)是一個(gè)作為服務(wù)的云平臺(tái),這種模式允許組織、最終用戶及其各自的應(yīng)用程序在云上存儲(chǔ)、管理和檢索數(shù)據(jù)。
與應(yīng)用層面相似但卻不同,應(yīng)用層云原生將數(shù)據(jù)剝離給緩存、數(shù)據(jù)庫(kù)、文件存儲(chǔ)和消息隊(duì)列,而數(shù)據(jù)庫(kù)的云原生只能將數(shù)據(jù)庫(kù)本身進(jìn)行存儲(chǔ)和計(jì)算分離,存算分離架構(gòu)是滿足數(shù)據(jù)庫(kù)彈性擴(kuò)展的重要和必要條件。只有具備彈性擴(kuò)展能力才能充分利用云技術(shù)的優(yōu)勢(shì),因此彈性可擴(kuò)展是云原生數(shù)據(jù)庫(kù)的本質(zhì)。云上的無(wú)限資源為數(shù)據(jù)庫(kù)擴(kuò)展至成千上萬(wàn)個(gè)節(jié)點(diǎn)成為可能,而只有計(jì)算存儲(chǔ)分離架構(gòu)才能將這種可能變成現(xiàn)實(shí)。
“原生”表示數(shù)據(jù)庫(kù)的架構(gòu)從設(shè)計(jì)之初就考慮到云的環(huán)境,原生為云而設(shè)計(jì),在云上以最佳態(tài)勢(shì)運(yùn)行,充分利用和發(fā)揮云平臺(tái)的彈性+分布式優(yōu)勢(shì)。所以說(shuō),云原生架構(gòu)的本質(zhì)是存算分離技術(shù)。如果只是把傳統(tǒng)數(shù)據(jù)庫(kù)搬到云上,而不從架構(gòu)上進(jìn)行優(yōu)化,就不是真正的“云原生”的數(shù)據(jù)庫(kù)。
云原生數(shù)據(jù)庫(kù)的價(jià)值
說(shuō)了這么多,那么,基于云原生架構(gòu)的數(shù)據(jù)云平臺(tái)會(huì)為企業(yè)帶來(lái)哪些價(jià)值呢?
我們可以概括為四個(gè)方面:降低技術(shù)門檻、減少維護(hù)成本、提升用戶體驗(yàn)、節(jié)省資源費(fèi)用。
- 降低技術(shù)門檻:無(wú)論是自建機(jī)房還是使用公有云,都離不開底層大數(shù)據(jù)技術(shù),大數(shù)據(jù)技術(shù)儼然成為了企業(yè)的標(biāo)配技能,然而并不是每個(gè)企業(yè)都能組建專業(yè)的人才團(tuán)隊(duì),尤其是一些傳統(tǒng)行業(yè)和中小企業(yè)。像集群性能調(diào)優(yōu)等較為硬核的能力,更是很多已經(jīng)搭建數(shù)據(jù)平臺(tái)的企業(yè)所缺失的。云原生技術(shù)使得 dbPaaS 為企業(yè)提供更好的數(shù)據(jù)平臺(tái)服務(wù),正如 Snowflake 所倡導(dǎo)的:用戶不需要調(diào)優(yōu),只要按需設(shè)置性能參數(shù)。
- 減少維護(hù)成本:即便勉強(qiáng)跨過(guò)技術(shù)門檻,全方位的運(yùn)維也是需要企業(yè)投入大量精力和資源的。技術(shù)運(yùn)維主要包括但不限于:
- 集群搭建
- 集群擴(kuò)縮容
- 日常運(yùn)維
- 監(jiān)控告警等
而這些其實(shí)都可以作為服務(wù)從云上的供應(yīng)商獲得。
- 提升用戶體驗(yàn):假如一個(gè)分析查詢使用 10 個(gè)節(jié)點(diǎn)需要跑 1 個(gè)小時(shí)得到查詢結(jié)果;如果將計(jì)算節(jié)點(diǎn)擴(kuò)大 10 倍至 100 個(gè)節(jié)點(diǎn)的話,同樣一個(gè)查詢則只需要跑 6 分鐘。這兩種配置在公有云按量計(jì)費(fèi)模式下的成本是相同的,但是用戶的體驗(yàn)和效率卻可以提升 10 倍。
- 節(jié)省資源費(fèi)用:首先我們先要清楚資源是怎么浪費(fèi)的,這主要來(lái)自兩個(gè)方面:
- 數(shù)據(jù)不斷增長(zhǎng)讓技術(shù)負(fù)責(zé)人不得不為今后的數(shù)據(jù)管理留出資源冗余,在數(shù)據(jù)規(guī)模接近資源邊界之前,企業(yè)的資源都一直處于未完全利用的狀態(tài),這就造成了早期投資的浪費(fèi),而當(dāng)企業(yè)數(shù)據(jù)規(guī)?;蛘邞?yīng)用場(chǎng)景增多,往往是計(jì)算資源提前耗盡而無(wú)法有效支持業(yè)務(wù)場(chǎng)景;
- 另一方面,即便在一段時(shí)間內(nèi)數(shù)據(jù)規(guī)模和應(yīng)用場(chǎng)景變化不大,不同時(shí)段的資源利用水平和需求也不一樣,比如白天和夜晚、工作日和休息日,平臺(tái)資源都處于不同程度的閑置狀態(tài)。
因此,節(jié)省資源費(fèi)用必然要從彈性擴(kuò)容縮容出發(fā),云原生技術(shù)在彈性方面具備天然優(yōu)勢(shì),這也是為什么國(guó)外各大云廠商和獨(dú)立數(shù)據(jù)庫(kù)廠商都提供了云原生數(shù)據(jù)庫(kù)。
云技術(shù)和數(shù)據(jù)庫(kù)的融合,正在突破過(guò)去基于物理服務(wù)器部署的傳統(tǒng)數(shù)據(jù)庫(kù)存在的高成本、低效率、穩(wěn)定性差等諸多問(wèn)題,為用戶提供高彈性、分布式、低成本的使用體驗(yàn)。
云原生數(shù)據(jù)庫(kù)中的模范生 - OushuDB
新一代極速云數(shù)據(jù)庫(kù)OushuDB 由偶數(shù)科技自主開發(fā),偶數(shù)科技的核心研發(fā)團(tuán)隊(duì)曾主導(dǎo)國(guó)際頂級(jí)的數(shù)據(jù)庫(kù)開源項(xiàng)目。依托與OushuDB的云原生特性、計(jì)算存儲(chǔ)分離架構(gòu)、強(qiáng)事務(wù)特性、完整SQL標(biāo)準(zhǔn)支持、高性能并行執(zhí)行能力等一系列底層技術(shù)的變革,可以實(shí)現(xiàn)高彈性、高性能、強(qiáng)擴(kuò)展性、強(qiáng)兼容性等上層技術(shù)的變革,最終幫助企業(yè)有效應(yīng)對(duì)大規(guī)模、強(qiáng)敏態(tài)、高時(shí)效、智能化的趨勢(shì),輕松構(gòu)建核心數(shù)倉(cāng)、數(shù)據(jù)集市、實(shí)時(shí)數(shù)倉(cāng)以及湖倉(cāng)一體數(shù)據(jù)平臺(tái)。
相對(duì)于其他傳統(tǒng)數(shù)據(jù)庫(kù)廠商,OushuDB 有非常多的優(yōu)勢(shì),其中Top3為:
- 彈性。OushuDB 包含計(jì)算層和存儲(chǔ)層,存儲(chǔ)和計(jì)算分離,可以獨(dú)立擴(kuò)容。一個(gè) OushuDB 的計(jì)算層有多個(gè) OushuDB 主節(jié)點(diǎn),內(nèi)部包含了資源管理服務(wù)等。
- 高性能。基于領(lǐng)先的性能優(yōu)化技術(shù)打造的世界上最快的分析型數(shù)據(jù)庫(kù)。具有極速執(zhí)行器,提供PB級(jí)數(shù)據(jù)交互式查詢能力,比傳統(tǒng)數(shù)倉(cāng)/MPP快5-10倍,比Hadoop SQL引擎要快5-30倍。
- 云中立。支持 AWS、Azure、阿里云、騰訊云、金山云等大廠的統(tǒng)一數(shù)據(jù)管理方案,也可結(jié)合私有云進(jìn)行混合管理。不同于Snowflake只提供公有云領(lǐng)域的云原生服務(wù),偶數(shù)科技的云原生架構(gòu)既能夠滿足公有云、也能夠支持私有云服務(wù),尤其對(duì)于國(guó)內(nèi)市場(chǎng)如今依舊占比較高的私有云領(lǐng)域,偶數(shù)科技也可以提供優(yōu)秀的支持。
OushuDB 還有很多其他的特性,大部分都是為了提高資源利用率,進(jìn)而為客戶降本增效。偶數(shù)科技認(rèn)為,一個(gè)優(yōu)秀的云原生數(shù)據(jù)庫(kù)應(yīng)該具備良好的彈性擴(kuò)展能力,而“是否做到存儲(chǔ)和計(jì)算的完全分離”以及“產(chǎn)品執(zhí)行引擎是否完全彈性”是判斷一個(gè)云原生數(shù)據(jù)庫(kù)的基本標(biāo)準(zhǔn)。只有具備這兩點(diǎn),一款數(shù)據(jù)庫(kù)產(chǎn)品才能稱得上真正發(fā)揮了上云的優(yōu)勢(shì),才可以將數(shù)據(jù)和云更好地融合在一起,就可以說(shuō)自己做好了云原生”。