1
| 本文作者: 張帥 | 2019-07-31 20:54 |
IT產(chǎn)業(yè)正在經(jīng)歷新的周期,離散的私有IT基礎(chǔ)設(shè)施轉(zhuǎn)向集中式,這在產(chǎn)業(yè)發(fā)展史上已經(jīng)不甚新鮮,主機(jī)時(shí)代、PC時(shí)代我們都曾經(jīng)歷過(guò)不同的轉(zhuǎn)變,從主機(jī)的集中到個(gè)人計(jì)算機(jī)的分散再到云計(jì)算,IT的發(fā)展似乎也在遵循著“否定之否定”的鐘擺定理。
數(shù)據(jù)庫(kù)作為計(jì)算機(jī)架構(gòu)的核心底層軟件,同樣處于變化之中,其歷史可以追溯到1970年,50年來(lái)數(shù)據(jù)庫(kù)領(lǐng)域廠商進(jìn)進(jìn)出出,但傳統(tǒng)數(shù)據(jù)庫(kù)廠商的地位從未動(dòng)搖,直到云計(jì)算的出現(xiàn)。
Gartner預(yù)測(cè),到2023年全球3/4的數(shù)據(jù)庫(kù)都會(huì)跑在云上,企業(yè)正將新應(yīng)用向云轉(zhuǎn)移,對(duì)數(shù)據(jù)存儲(chǔ)和計(jì)算分析的能力要求不斷加強(qiáng)。云數(shù)據(jù)庫(kù)天然具備云上靈活性,能夠提供強(qiáng)大的創(chuàng)新能力、豐富多樣的產(chǎn)品體系、經(jīng)濟(jì)高效的部署方式和按需付費(fèi)的支付模式。雷鋒網(wǎng)對(duì)話騰訊云數(shù)據(jù)庫(kù)產(chǎn)品總監(jiān)王義成,獲悉騰訊云在云原生時(shí)代的數(shù)據(jù)庫(kù)發(fā)展思路。

上圖顯現(xiàn)了騰訊云數(shù)據(jù)產(chǎn)品及工具的整體布局,最上層是數(shù)據(jù)庫(kù)的SaaS層,包括DTS數(shù)據(jù)遷移類(lèi)服務(wù),支持MySQL、Redis、PG等通用開(kāi)源協(xié)議;DMS數(shù)據(jù)管理層,幫助用戶實(shí)現(xiàn)圖形化數(shù)據(jù)管理;另外包括數(shù)據(jù)審計(jì)、數(shù)據(jù)訂閱等,審計(jì)支持實(shí)時(shí)記錄所有的增刪改查操作,訂閱可幫助用戶獲取云數(shù)據(jù)庫(kù)的實(shí)時(shí)增量更新數(shù)據(jù),支持動(dòng)態(tài)增減訂閱對(duì)象、在線查看訂閱數(shù)據(jù)、修改消費(fèi)時(shí)間點(diǎn)等特性;災(zāi)備,用于跨云容災(zāi)和構(gòu)建混合云場(chǎng)景。
另外,用戶僅需提交問(wèn)題和需求,即可獲得騰訊云數(shù)據(jù)庫(kù)專家的專業(yè)支持。騰訊云數(shù)據(jù)庫(kù)專家服務(wù)團(tuán)隊(duì)均有10年以上的 DBA 經(jīng)驗(yàn),擁有億級(jí)用戶產(chǎn)品的數(shù)據(jù)庫(kù)管理經(jīng)驗(yàn)。據(jù)了解,騰訊云數(shù)據(jù)庫(kù)推出的數(shù)據(jù)庫(kù)智能管理工具也即將上線,支持7×24小時(shí)的數(shù)據(jù)庫(kù)智能監(jiān)控告警。
往下是數(shù)據(jù)庫(kù)的PaaS層,包括關(guān)系型數(shù)據(jù)庫(kù)、非關(guān)系型數(shù)據(jù)庫(kù)、分布式數(shù)據(jù)庫(kù)和數(shù)據(jù)倉(cāng)庫(kù)、新一代數(shù)據(jù)庫(kù)。關(guān)系型數(shù)據(jù)庫(kù)包括MySQL、Redis、PostGreSQL、MariaDB、SqLServer,Tdata,非關(guān)系型包括Redis、MemCache,MongoDB、CKV等等。
很多數(shù)據(jù)庫(kù)其實(shí)離我們?nèi)粘I詈芙v訊自研的非關(guān)系型的數(shù)據(jù)庫(kù)CKV在微信紅包場(chǎng)景中大批量使用,按訪問(wèn)量來(lái)收費(fèi)的TcaplusDB在《王者榮耀》游戲中使用,很多游戲類(lèi)應(yīng)用或者騰訊系衍生的一些服務(wù)都會(huì)使用TcaplusDB。
據(jù)王義成介紹,騰訊數(shù)據(jù)庫(kù)的發(fā)展史從QQ起步,開(kāi)始是一種最早以的KV形式存儲(chǔ),當(dāng)時(shí)Redis還沒(méi)誕生,然后向CKV逐漸演變,再之后到財(cái)付通上線意味著騰訊有了純粹的金融業(yè)務(wù),也是MySQL在開(kāi)源社區(qū)萌芽時(shí)期,故而騰訊沒(méi)有選用傳統(tǒng)的商業(yè)數(shù)據(jù)庫(kù),而是在MySQL基礎(chǔ)上修改。
當(dāng)然,最初都是痛苦的,騰訊也不例外。比如單庫(kù)壓力太大或者說(shuō)主機(jī)延遲比較大等問(wèn)題,倒逼MySQL演進(jìn)到分布式數(shù)據(jù)庫(kù),就是如今的TDSQL。“最早是在騰訊內(nèi)部開(kāi)始演進(jìn),從單機(jī)節(jié)點(diǎn)到集群版,然后逐漸演進(jìn),再?gòu)囊恢饕粋洌缓笾苯友葸M(jìn)到三節(jié)點(diǎn),基于Raft模式,這就是騰訊數(shù)據(jù)庫(kù)自研的歷史。”
此外,騰訊內(nèi)部還有很多數(shù)據(jù)分析類(lèi)業(yè)務(wù),如廣告等業(yè)務(wù),需要混合OLTP和OLAP而成的HTAP數(shù)據(jù)庫(kù)系統(tǒng),基于OLTP的交易數(shù)據(jù)、OLAP的分析類(lèi)數(shù)據(jù),做整個(gè)廣告業(yè)務(wù)推薦、分析。
“騰訊整個(gè)大的策略也是整個(gè)集團(tuán)內(nèi)部上云,TDSQL、CKV本就是騰訊內(nèi)部演進(jìn)的一些產(chǎn)品,在目前逐漸地遷移到云化的機(jī)房來(lái),這是一類(lèi);還有一類(lèi)就是云數(shù)據(jù)庫(kù),完全基于云開(kāi)發(fā)的數(shù)據(jù)庫(kù), 比如像CynosDB、MongoDB,基于開(kāi)源的Redis也在騰訊內(nèi)部開(kāi)始云化,原來(lái)有些新興業(yè)務(wù)或者以前沒(méi)有用到開(kāi)源數(shù)據(jù)庫(kù)的業(yè)務(wù)也開(kāi)始逐步遷移上云。比如一些游戲場(chǎng)景和廣告部門(mén),他們可能原來(lái)自己沒(méi)有MongoDB或者Redis整體的底層架構(gòu),現(xiàn)在也自動(dòng)在騰訊內(nèi)部云化環(huán)境里開(kāi)始使用”。王義成介紹。
從某種程度上來(lái)說(shuō),AWS一篇論文開(kāi)啟了云原生數(shù)據(jù)庫(kù)時(shí)代,AWS認(rèn)為,高吞吐量數(shù)據(jù)處理的核心問(wèn)題已經(jīng)從計(jì)算和存儲(chǔ)移到了網(wǎng)絡(luò)IO,Aurora提出了一種新的關(guān)系型數(shù)據(jù)庫(kù)架構(gòu),將REDO日志的處理下沉到一個(gè)專門(mén)為Aurora定制的多租戶可擴(kuò)展的存儲(chǔ)服務(wù)上。
數(shù)據(jù)庫(kù)就此進(jìn)入下一個(gè)紀(jì)元——云原生。
2018年11月,騰訊云公布了新一代自研云原生數(shù)據(jù)庫(kù)CynosDB,目前處于公測(cè)階段,將于今年Q3正式推出商業(yè)版本。CynosDB數(shù)據(jù)庫(kù)100%兼容開(kāi)源數(shù)據(jù)庫(kù)引擎 MySQL 5.7和 PostgreSQL 10,幾乎無(wú)需改動(dòng)代碼,即可完成現(xiàn)有數(shù)據(jù)庫(kù)的查詢、應(yīng)用和工具平滑遷移;最高性能是 MySQL 數(shù)據(jù)庫(kù)八倍、PostgreSQL 數(shù)據(jù)庫(kù)的四倍;最高128TB的海量存儲(chǔ),無(wú)服務(wù)器Serverless架構(gòu),自動(dòng)擴(kuò)縮容。

騰訊云云原生數(shù)據(jù)庫(kù)CynosDB產(chǎn)品架構(gòu)
過(guò)去的云數(shù)據(jù)庫(kù)是在傳統(tǒng)數(shù)據(jù)庫(kù)之上擴(kuò)展一部分云的能力,把數(shù)據(jù)庫(kù)賦予一部分云的擴(kuò)展性,但沒(méi)有對(duì)數(shù)據(jù)庫(kù)本質(zhì)上做任何的改變,只是給用戶提供了一些基礎(chǔ)的運(yùn)維和初級(jí)DBA的能力,而CynosDB這類(lèi)數(shù)據(jù)庫(kù)走的是純粹的云原生路線。
數(shù)據(jù)庫(kù)真正的挑戰(zhàn)在內(nèi)核級(jí),以MySQL為例,傳統(tǒng)的MySQL數(shù)據(jù)寫(xiě)在內(nèi)存,然后再刷到REDO里去,通過(guò)REDO再去刷內(nèi)存頁(yè),再輸?shù)酱疟P(pán),這樣帶來(lái)一個(gè)明顯問(wèn)題,擴(kuò)容磁盤(pán)就必須要導(dǎo)數(shù)據(jù),因?yàn)檎麄€(gè)緩存和數(shù)據(jù)都是在一臺(tái)機(jī)器上。CynosDB把計(jì)算和存儲(chǔ)分開(kāi),REDO層面不在本機(jī)內(nèi)刷,而是通過(guò)網(wǎng)絡(luò)傳到共享存儲(chǔ),讓存儲(chǔ)層去感知MySQL REDO日志,在存儲(chǔ)層做日志回放。計(jì)算只負(fù)責(zé)計(jì)算,不再負(fù)責(zé)存儲(chǔ)數(shù)據(jù)了。
“為什么做CynosDB?傳統(tǒng)的數(shù)據(jù)庫(kù)+云的模式?jīng)]有給用戶帶來(lái)很多驚喜,我們認(rèn)為,未來(lái)方向是“云+數(shù)據(jù)庫(kù)”,數(shù)據(jù)庫(kù)將會(huì)發(fā)生根本性變革。云原生、超融合、自治是帶領(lǐng)騰訊云數(shù)據(jù)庫(kù)發(fā)展的三駕馬車(chē)。CynosDB就是云原生時(shí)代的產(chǎn)物。”
王義成形象地比喻,傳統(tǒng)數(shù)據(jù)庫(kù)如SQL Server或者云+數(shù)據(jù)庫(kù)形式,類(lèi)似于買(mǎi)寬帶,放到云計(jì)算領(lǐng)域則是實(shí)例,不管用多少,怎么用,都要使用租用的方式,但實(shí)際使用量級(jí)可能比購(gòu)買(mǎi)的要小很多。
“CynosDB是商業(yè)模式上的一種變化,但商業(yè)模式的變化一定是技術(shù)架構(gòu)或者說(shuō)技術(shù)的重新改造。以前是基于物理基因的模式去搞一個(gè)實(shí)例去做,用戶做一次升級(jí)或者搬遷,都要全面要把數(shù)據(jù)搬走。CynosDB實(shí)現(xiàn)存儲(chǔ)跟計(jì)算分離,存儲(chǔ)是一個(gè)大的共享磁盤(pán),并且讓磁盤(pán)存儲(chǔ)能夠感知MySQL或者數(shù)據(jù)庫(kù)的協(xié)議,然后把日志下沉,在存儲(chǔ)的擴(kuò)展性和性能上經(jīng)過(guò)良好的一個(gè)中和。”
“云原生數(shù)據(jù)庫(kù)市場(chǎng)可能在未來(lái)的兩三年內(nèi)就會(huì)爆發(fā)”,王義成給出了兩個(gè)原因。
第一,公有云的增量市場(chǎng)可能不會(huì)像以前那么快,達(dá)到之前的100%、200%,在這種市場(chǎng)條件下,云原生數(shù)據(jù)庫(kù)更迎合市場(chǎng)需求,云廠商需要逐漸教育市場(chǎng)。
另一方面,當(dāng)前國(guó)外數(shù)據(jù)庫(kù)廠商的技術(shù)壟斷逐漸被打破,國(guó)產(chǎn)數(shù)據(jù)庫(kù)崛起勢(shì)頭強(qiáng)勁有望進(jìn)一步發(fā)展,數(shù)據(jù)庫(kù)市場(chǎng)即將開(kāi)始下半場(chǎng)角逐,云廠商是影響這場(chǎng)戰(zhàn)役新的變量。與Oracle對(duì)標(biāo)并做到Oracle這種程度是很長(zhǎng)的過(guò)程,當(dāng)下并不現(xiàn)實(shí)。
廠商如何用對(duì)數(shù)據(jù)庫(kù)市場(chǎng)的理解,或者在數(shù)據(jù)庫(kù)技術(shù)上的優(yōu)勢(shì)來(lái)去打動(dòng)價(jià)值20-40億元的市場(chǎng)客戶,是擺在數(shù)據(jù)庫(kù)廠商面前的現(xiàn)實(shí)問(wèn)題。雷鋒網(wǎng)雷鋒網(wǎng)
相關(guān)文章:
傳統(tǒng)商業(yè)數(shù)據(jù)庫(kù)躊躇 云數(shù)據(jù)庫(kù)借道云原生
上海AI研究院完成招募;倡導(dǎo)數(shù)據(jù)庫(kù)自由;云服務(wù)降價(jià)丨AWS技術(shù)峰會(huì)
10 萬(wàn)個(gè)名人,1000 萬(wàn)張照片,全球最大人臉識(shí)別數(shù)據(jù)庫(kù)被刪除了
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。