云時(shí)代,我們到底需要怎樣的數(shù)據(jù)庫?
在數(shù)據(jù)量持續(xù)爆增、數(shù)據(jù)日益多樣化的今天,傳統(tǒng)數(shù)據(jù)庫的迭代速度已經(jīng)追不上數(shù)據(jù)的增速,且企業(yè)對數(shù)據(jù)庫計(jì)算和存儲能力的要求越來越高。面對當(dāng)前的挑戰(zhàn)和機(jī)遇,國產(chǎn)數(shù)據(jù)庫廠商的研發(fā)創(chuàng)新速度不斷加快,可以說云計(jì)算時(shí)代的到來,扭轉(zhuǎn)了國外商業(yè)數(shù)據(jù)庫一家獨(dú)大的局面。
目前,國產(chǎn)數(shù)據(jù)庫領(lǐng)域正處于百花齊放的狀態(tài),已經(jīng)有越來越多的行業(yè)巨頭參與到了數(shù)據(jù)庫的建設(shè)中,騰訊云便是其中之一。為了更深入地了解騰訊云數(shù)據(jù)庫的發(fā)展歷程,從而進(jìn)一步透視國產(chǎn)數(shù)據(jù)庫的發(fā)展方向,InfoQ 和騰訊云數(shù)據(jù)庫專家工程師竇賢明就云數(shù)據(jù)庫的發(fā)展、前景與挑戰(zhàn)進(jìn)行了深入探討。
單一數(shù)據(jù)庫
不能解決所有問題
進(jìn)入基礎(chǔ)軟件領(lǐng)域已有十余年光景,竇賢明親歷了云數(shù)據(jù)庫從零到一的建設(shè)過程,作為整個(gè)浪潮的參與者和見證者,他對技術(shù)、產(chǎn)品以及市場都有著更加深刻的認(rèn)識。據(jù)他介紹,當(dāng)開發(fā)人員在部署一個(gè)傳統(tǒng)數(shù)據(jù)庫時(shí),需要涉及購買硬件、部署機(jī)房、建立網(wǎng)絡(luò)、部署實(shí)例、規(guī)劃資源等等一系列操作;在維護(hù)傳統(tǒng)數(shù)據(jù)庫時(shí),還需要進(jìn)行擴(kuò)容、監(jiān)控、告警、日志、參數(shù)設(shè)置等等操作,而云數(shù)據(jù)庫的出現(xiàn)便能夠更加輕松、簡單地實(shí)現(xiàn)上述工作。
開發(fā)人員可以直接在云數(shù)據(jù)庫控制臺完成數(shù)據(jù)庫的申請和創(chuàng)建,幾分鐘內(nèi)便能準(zhǔn)備就緒、投入使用,通過云數(shù)據(jù)庫提供的控制臺,還可以對所有實(shí)例進(jìn)行統(tǒng)一管理。云數(shù)據(jù)庫還支持物理備份、邏輯備份、備份恢復(fù)及秒級回檔等功能,以此來保障數(shù)據(jù)的安全性。此外,傳統(tǒng)數(shù)據(jù)庫的價(jià)格高昂,動輒就需要投入數(shù)十萬元的成本采購設(shè)備,而云數(shù)據(jù)庫則能夠按需付費(fèi),用多少付多少。
盡管相較于傳統(tǒng)數(shù)據(jù)庫,云數(shù)據(jù)庫已經(jīng)能夠幫助企業(yè)解決大部分問題,但竇賢明告訴 InfoQ:“單一數(shù)據(jù)庫不可能解決所有問題,云數(shù)據(jù)庫在存儲成本、HA 切換、網(wǎng)絡(luò)瓶頸方面依然存在優(yōu)化的空間。”
如下圖所示,Master 和 RO 雖然對應(yīng)的是同一份數(shù)據(jù),但在存儲上實(shí)際有六份數(shù)據(jù);而每多加一個(gè) RO 節(jié)點(diǎn)就會多出三份數(shù)據(jù),也使得整個(gè)集群的存儲副本數(shù)近一步放大;高吞吐的數(shù)量會使網(wǎng)絡(luò)問題成為瓶頸,在共享存儲側(cè)也有大量網(wǎng)絡(luò)浪費(fèi)。

云原生數(shù)據(jù)庫應(yīng)運(yùn)而生
目前,竇賢明與他團(tuán)隊(duì)研發(fā)的云原生數(shù)據(jù)庫TDSQL-C便能夠很好地解決存儲成本、彈性擴(kuò)容等問題。作為新一代企業(yè)級云原生分布式數(shù)據(jù)庫,它的初衷是為了讓運(yùn)維人員更省心,讓數(shù)據(jù)庫的運(yùn)維變得簡單,具體來說,TDSQL-C 有以下產(chǎn)品特點(diǎn):
TDSQL-C的MySQL版和PostgreSQL版基于共享存儲實(shí)現(xiàn)了存算分離架構(gòu),Master 和 RO 是基于一份數(shù)據(jù)放在共享存儲中,RO 只從共享存儲中讀取所需的 page,不需要寫入存儲,并且 RO 可以從主庫接收 WAL 在緩存中重放,以此保持緩存中 Page 持續(xù)更新。這樣一來,云原生數(shù)據(jù)庫便解決了業(yè)務(wù)容量和計(jì)算節(jié)點(diǎn)的擴(kuò)容的問題。TDSQL-C 還能夠自動判斷計(jì)算層面的資源,實(shí)現(xiàn)計(jì)算關(guān)停和熱啟動,且啟動時(shí)間大概在 3s 以內(nèi)即可完成。

在 11 月 4 日的騰訊數(shù)字生態(tài)大會 Techo Day 上,騰訊云副總裁李綱還宣布了云原生數(shù)據(jù)庫 TDSQL-C 全新升級:吞吐率提升 50%、將 IO 延遲降低 80%,整體性能提升 85%;帶來全新形態(tài) Serverless,通過全局工作流預(yù)測以及動態(tài)擴(kuò)縮資源,進(jìn)一步降低成本,做到真正的按需計(jì)費(fèi)。
攻克最嚴(yán)苛的領(lǐng)域
在竇賢明看來,現(xiàn)階段云數(shù)據(jù)庫能夠解決企業(yè)怎樣的問題想必已經(jīng)沒有分歧,但對于一些傳統(tǒng)企業(yè)來說,畢竟要將自己所有的業(yè)務(wù)數(shù)據(jù)遷移到公有云上,安全性成了他們最大的顧慮。關(guān)于這一點(diǎn),他表示:“扭轉(zhuǎn)行業(yè)內(nèi)的固有認(rèn)知是當(dāng)下的一大挑戰(zhàn),云是一門信任的生意,需要長期積累的過程才能扭轉(zhuǎn)這樣的局面。”
那么,對于騰訊云數(shù)據(jù)庫來說,怎么做才能加速對行業(yè)的滲透?“只要攻克了最為嚴(yán)苛的領(lǐng)域,就能證明我們可以滿足絕大多數(shù)企業(yè)的需求?!备]賢明給出了這樣的答案。而由于金融領(lǐng)域本身的業(yè)務(wù)特點(diǎn),使其在數(shù)據(jù)一致性、高可用,性能成本以及水平伸縮等方面都有非常嚴(yán)苛的要求,也因此,金融領(lǐng)域成為騰訊云數(shù)據(jù)庫勢必要攻克的一塊高地。
騰訊云副總裁李綱也曾公開表示:“國產(chǎn)數(shù)據(jù)庫的發(fā)展一般會經(jīng)過互聯(lián)網(wǎng)企業(yè)、民生政務(wù)、傳統(tǒng)行業(yè)應(yīng)用、金融核心業(yè)務(wù)這幾個(gè)階段的打磨,其中金融行業(yè)對數(shù)據(jù)庫要求最為苛刻,不僅數(shù)據(jù)容錯(cuò)度低,而且還要符合信息安全等級規(guī)范。”
作為國產(chǎn)分布式數(shù)據(jù)庫的重磅產(chǎn)品,TDSQL 在背后支撐了全國第七次人口普查、防疫健康碼、張家港農(nóng)商行核心系統(tǒng)的落地應(yīng)用等等,且服務(wù)了國內(nèi)前 10 大銀行中的 6 家;在政務(wù)、電信運(yùn)營商等領(lǐng)域,也已經(jīng)服務(wù)了超過 3000 家金融政企客戶。此外,在保險(xiǎn)行業(yè),TDSQL 正在幫助太平洋保險(xiǎn)集團(tuán)實(shí)現(xiàn)全面數(shù)據(jù)庫國產(chǎn)化。在這些金融及政務(wù)項(xiàng)目中,TDSQL 的 Oracle 兼容性得到了充分驗(yàn)證,兼容度高達(dá) 98% 以上,這能幫助業(yè)務(wù)在極短時(shí)間內(nèi),極小業(yè)務(wù)改動量的情況下,快速完成測試驗(yàn)證和上線。
在采訪過程中,竇賢明還為我們介紹了一個(gè)“微服務(wù) + 國產(chǎn)分布式數(shù)據(jù)庫”的架構(gòu)案例:昆山農(nóng)商行將新核心系統(tǒng)劃分成公共服務(wù)微服務(wù)集群、賬務(wù)微服務(wù)集群和歷史微服務(wù)集群,并把這三個(gè)微服務(wù)集群運(yùn)行在一套 TDSQL 集群中。由于 TDSQL 保障了微服務(wù)間一致性讀的問題,使得企業(yè)在應(yīng)用微服務(wù)組織結(jié)構(gòu)的同時(shí),也能解決存儲分布式擴(kuò)容的問題。

在騰訊云發(fā)布的Q3財(cái)報(bào)中,也首次提到數(shù)據(jù)庫對企業(yè)服務(wù)的貢獻(xiàn),財(cái)報(bào)顯示:“我們的PaaS解決方案TDSQL數(shù)據(jù)庫已經(jīng)被3000多個(gè)來自金融、公共服務(wù)和電信垂直行業(yè)的客戶采用。我們?yōu)橹袊筱y行中的六家提供服務(wù),并在不同金融機(jī)構(gòu)的核心系統(tǒng)中不斷增加滲透,展示了我們在數(shù)據(jù)安全、可靠性和一致性方面的能力”。李綱表示,國產(chǎn)數(shù)據(jù)庫即將進(jìn)入規(guī)?;A段,未來五年,騰訊云數(shù)據(jù)庫即將助力1000家金融機(jī)構(gòu)實(shí)現(xiàn)核心系統(tǒng)數(shù)據(jù)庫國產(chǎn)化。
持續(xù)迭代數(shù)據(jù)庫
的五個(gè)基本能力
縱觀騰訊云數(shù)據(jù)庫產(chǎn)品家族,包含了關(guān)系型數(shù)據(jù)庫、非關(guān)系型數(shù)據(jù)庫以及數(shù)據(jù)庫遷移、智能運(yùn)維、可視化平臺等相關(guān)應(yīng)用。除了兼容主流的 MySQL、MariaDB、Redis、Mongo 等開源技術(shù),騰訊云數(shù)據(jù)庫也有內(nèi)部自研的產(chǎn)品分布式數(shù)據(jù)庫 TDSQL 和云原生數(shù)據(jù)庫 TDSQL-C,基于這樣多點(diǎn)開花的局面,也讓我們不禁產(chǎn)生了一個(gè)疑問:面向未來,騰訊云數(shù)據(jù)庫重點(diǎn)突圍的方向會是什么?
“穩(wěn)定、安全、易用,高效、成本低”竇賢明這樣告訴 InfoQ,由于基礎(chǔ)軟件與應(yīng)用軟件在迭代速度上有著很大的不同,所以它不可能一天一個(gè)新概念。在他看來,做數(shù)據(jù)庫要學(xué)會坐冷板凳,需要朝以上五個(gè)基本能力持續(xù)演進(jìn)、迭代并逐步做到極致。竇賢明介紹說:“當(dāng)前我們已經(jīng)做到了 99.95%,未來需要朝 99.99%,甚至更高的目標(biāo)去努力。”因?yàn)楫?dāng)云數(shù)據(jù)庫沒有了穩(wěn)定性、可靠性、安全性等最基本的東西,一切都將成為空談,也勢必會被市場所拋棄。
“在接下來的 5~10 年里,國內(nèi)數(shù)據(jù)庫行業(yè)將會出現(xiàn)一個(gè)很大的變化,相信過不了多久,大家會認(rèn)可國產(chǎn)數(shù)據(jù)庫是更好的數(shù)據(jù)庫?!倍@句話背后,不僅僅代表了騰訊云數(shù)據(jù)庫的信心,更體現(xiàn)出了國產(chǎn)數(shù)據(jù)庫從業(yè)者的底氣與實(shí)力。
﹀
﹀
﹀

騰訊云李綱:TDSQL已助力20余家金融機(jī)構(gòu)完成核心替換


金融級數(shù)據(jù)庫新坐標(biāo):騰訊云TDSQL發(fā)布全自研新敏態(tài)引擎
↓↓點(diǎn)擊閱讀原文,了解更多優(yōu)惠
