焦旭
“你好,我是阿里云數(shù)據(jù)庫團(tuán)隊(duì)負(fù)責(zé)人,我叫鳴嵩(曹偉)?!背醮我娒娴挠∠?,讓筆者覺得鳴嵩并不像一個(gè)IT男,形象陽光、精神抖擻、嘴角帶著一點(diǎn)點(diǎn)微笑。就在筆者還在回味《復(fù)聯(lián)3》中小蜘蛛和奇異博士有關(guān)“花名”的梗時(shí),鳴嵩讓我有了新的認(rèn)識。
采訪過程中,鳴嵩的語速一直很快,語言簡練,思維清晰,不斷出現(xiàn)的術(shù)語和數(shù)據(jù)說明了他的專業(yè)性,喜歡列舉實(shí)例。整個(gè)人總是帶著一股濃郁的自信。好像,每一個(gè)阿里人都是那么的自信。
那些在一線才知道的
一位工作在云數(shù)據(jù)庫一線的開發(fā)和運(yùn)維人員,在云棲社區(qū)做了以下分享:
“我在4天前,手工做了一個(gè)備份,數(shù)據(jù)庫比較大,3T,你們說差不多要70個(gè)小時(shí)備份,這個(gè)…有沒有什么辦法加快一點(diǎn),我老板還著急要數(shù)據(jù)呢”
“你好,我們公司有個(gè)數(shù)據(jù)庫,想遷到阿里云RDS上,對RDS的產(chǎn)品品質(zhì)我們很滿意,只是我們的數(shù)據(jù)庫有10T,請問一下,支持這么大的實(shí)例么?”
“你好,我用了你們的MySQL數(shù)據(jù)庫,最近幾天在做活動,主庫壓力比較大,只讀實(shí)例就延遲了,現(xiàn)在看過去貌似很難跟上,有什么辦法么?”
這些抱怨也好,吐槽也罷,都來自云數(shù)據(jù)庫用戶的真實(shí)案例,總結(jié)起來,傳統(tǒng)的云數(shù)據(jù)庫由于自身架構(gòu)原因,會遇到很多問題:
讀寫實(shí)例和只讀實(shí)例各自擁有一份獨(dú)立的數(shù)據(jù),用戶購買只讀實(shí)例,不僅需要付出計(jì)算的成本,也需要付出存儲資源的成本;新建一個(gè)只讀實(shí)例需要重新拷貝數(shù)據(jù),考慮到網(wǎng)絡(luò)限流,速度不會很快;傳統(tǒng)備份技術(shù),由于涉及到拷貝數(shù)據(jù),并上傳遠(yuǎn)程存儲,速度因此也受網(wǎng)絡(luò)影響等等。
隨著數(shù)據(jù)庫數(shù)據(jù)量的增大,各行各業(yè)對云數(shù)據(jù)庫業(yè)務(wù)的需求增加,這些問題就會不斷加劇。鳴嵩說:“這些困擾大家已久的問題, PolarDB都可以從本質(zhì)上解決,而不是想個(gè)trick繞過去?!?/p>
核心優(yōu)勢有5個(gè)
PolarDB是阿里云數(shù)據(jù)庫團(tuán)隊(duì)過去3年間自主研發(fā)的一個(gè)企業(yè)級數(shù)據(jù)庫。鳴嵩總結(jié)了其5大核心優(yōu)勢。
第一,兼容性。PolarDB兼容了當(dāng)下最主流的、開發(fā)者最喜歡用的MySQL和PostgreSQL兩種數(shù)據(jù)庫生態(tài),這意味著MySQL和PostgreSQL的老用戶,在一行代碼不用改的前提下,可以把業(yè)務(wù)從原來的開源數(shù)據(jù)庫遷移到阿里云的企業(yè)數(shù)據(jù)庫平臺上。
鳴嵩說:“從第一天起,我們做任何東西,不接受99%的兼容,我們只有100%的兼容。這是不會妥協(xié)的。”
第二,性能好。對比MySQL有6倍性能提升及相對于商業(yè)數(shù)據(jù)庫實(shí)現(xiàn)大幅度降低成本。拿Sysbench跑Benchmark做測試,開源的原生數(shù)據(jù)庫性能是每秒3.5萬的TPS,PolarDB的性能可以達(dá)到22萬,有6倍的提升,但是價(jià)格不變。
第三,容量大。傳統(tǒng)的數(shù)據(jù)庫會受限于物理機(jī)能的磁盤大小,數(shù)據(jù)增長后面臨著要么擴(kuò)容,要么定期遷移,這種方案不僅開發(fā)成本高,還會造成業(yè)務(wù)中斷。PolarDB則支持單庫容量擴(kuò)展至上百TB以及計(jì)算引擎能力及存儲能力的秒級擴(kuò)展能力。
第四,技術(shù)更新?lián)Q代。云數(shù)據(jù)庫的發(fā)展趨勢出現(xiàn)了一種更好的模式,Serverless按使用量付費(fèi)??雌饋碇皇怯?jì)費(fèi)模型的一種變化,事實(shí)上對技術(shù)本身有很大挑戰(zhàn)。Serverless意味著彈性擴(kuò)展、調(diào)度能力、資源隔離需要做得更加精細(xì),使得能夠支持這種計(jì)費(fèi)模式。
鳴嵩直言:“PolarDB的目標(biāo)就是從過去云計(jì)算的1.0時(shí)代走向云計(jì)算的2.0時(shí)代。數(shù)據(jù)庫從經(jīng)典時(shí)代走向Serverless時(shí)代?!?/p>
第五,一寫多讀。鳴嵩以淘寶為例,介紹道:“電商業(yè)務(wù),讀的壓力要比寫的壓力大很多,傳統(tǒng)的‘一主多從模式存在空間浪費(fèi)和擴(kuò)容時(shí)間長的弊病?!?/p>
PolarDB讓“一主多從”共享統(tǒng)一一個(gè)數(shù)據(jù)副本,同一個(gè)實(shí)例的所有節(jié)點(diǎn)(包括讀寫節(jié)點(diǎn)和只讀節(jié)點(diǎn))都實(shí)現(xiàn)訪問存儲節(jié)點(diǎn)上的同一份數(shù)據(jù),使得數(shù)據(jù)備份耗時(shí)實(shí)現(xiàn)秒級響應(yīng),實(shí)現(xiàn)了無縫擴(kuò)展,不管數(shù)據(jù)量有多大,幾分鐘內(nèi)即可實(shí)現(xiàn)只讀副本擴(kuò)容,以及數(shù)據(jù)的全量備份。
何謂國之重器
據(jù)了解,PolarDB發(fā)布以來,在公有云上已經(jīng)累計(jì)了超過600家用戶,涵蓋金融、電商、游戲、IoT等各行各業(yè)。
在被問及為何阿里云在已經(jīng)擁有關(guān)系型數(shù)據(jù)庫的情況下,仍舊開發(fā)出PolarDB時(shí),鳴嵩表示:“企業(yè)級數(shù)據(jù)庫一定是國之重器?!?/p>
鳴嵩介紹道,企業(yè)級數(shù)據(jù)庫,往往要求零宕機(jī),7×24小時(shí)的可服務(wù)性,數(shù)據(jù)絕對不能丟。這是對數(shù)據(jù)庫技術(shù)更苛刻的要求,同時(shí)還需要高安全性和無限擴(kuò)展能力?!癙olarDB的目標(biāo)就是將來能在有關(guān)國計(jì)民生的行業(yè)、金融產(chǎn)業(yè)或者政府核心業(yè)務(wù)中用上國產(chǎn)自研的數(shù)據(jù)庫。我認(rèn)為,這是我們這一代做數(shù)據(jù)庫技術(shù)人的使命?!?/p>
此外,鳴嵩還指出一種技術(shù)趨勢。過去十年,大量互聯(lián)網(wǎng)企業(yè)為了解決業(yè)務(wù)發(fā)展數(shù)據(jù)膨脹的問題,都在使用一類基于Share Nothing架構(gòu)做水平擴(kuò)展的數(shù)據(jù)庫,演化出了很多NoSQL和NewSQL產(chǎn)品,但這類產(chǎn)品都有對使用場景的假設(shè)和限制。而ORACLE、DB2、Aurora、PolarDB這些企業(yè)級的通用數(shù)據(jù)庫,都在使用Share Everything共享存儲技術(shù)。鳴嵩判斷,在未來的5年之內(nèi),隨著云時(shí)代的到來,隨著企業(yè)級云數(shù)據(jù)庫的興起,Share Everything基于共享存儲架構(gòu)的數(shù)據(jù)庫會成為新的熱點(diǎn)。
性能源于對硬件的訴求
為了追求性能的不斷提升,技術(shù)人員對于硬件的訴求也在不斷提高。鳴嵩介紹了PolarDB所采用的領(lǐng)先的硬件技術(shù):包括使用3DXpoint存儲介質(zhì)的Optane存儲、NVMe SSD和RoCE RDMA網(wǎng)絡(luò)。同時(shí)面向新硬件架構(gòu)實(shí)現(xiàn)軟硬一體優(yōu)化:從數(shù)據(jù)庫、文件系統(tǒng)到網(wǎng)絡(luò)通訊協(xié)議、分布式存儲系統(tǒng)和設(shè)備驅(qū)動,實(shí)現(xiàn)縱貫軟件棧各層次的整個(gè)IO鏈條的深度優(yōu)化。
談及Optane存儲卡,鳴嵩毫無吝嗇地給了一個(gè)贊,他表示:“3D XPoint介質(zhì)比NAND顆粒提供了更好的I/O延遲和I/O QoS穩(wěn)定性,因此在數(shù)據(jù)庫整體QoS上我們在95%延遲的指標(biāo)上提升了76%的性能。我個(gè)人認(rèn)為這也是非常有工匠精神的一個(gè)介質(zhì)、一個(gè)產(chǎn)品。如果說SSD把HDD延遲降低了一個(gè)數(shù)量級,3D XPoint又把SSD降低了一個(gè)數(shù)量級”
鳴嵩認(rèn)為,Optane很可能會打破傳統(tǒng)的Memory金字塔體系,過去的模型是CPU、內(nèi)存、SSD的三角形結(jié)構(gòu),內(nèi)存是很快的但是比較小,掉電會丟;SSD是很大,延遲比較高,吞吐有限,但是掉電數(shù)據(jù)不會丟。而Optane在這個(gè)體系中加入了一層Apache Pass或稱之為NVDIMM(非易失性隨機(jī)訪問存儲器)。新的體系變成了CPU、內(nèi)存、NVDIMM和SSD,新加入的結(jié)構(gòu),性能和內(nèi)存很接近,而且空間可以很大,掉電不會丟。
最后鳴嵩表示,Apache Pass未來很大程度上會改變數(shù)據(jù)庫軟件,也意味著數(shù)據(jù)庫的性能可以再向上提高一個(gè)檔次。