日前,華為云自研文檔數(shù)據(jù)庫 DDS 增強(qiáng)版正式商用。作為華為云在數(shù)據(jù)庫產(chǎn)品矩陣上的重要布局,它不但兼容最流行的 NoSQL 數(shù)據(jù)庫 MongoDB,而且基于華為自研核心技術(shù)存儲計(jì)算分離架構(gòu),在讀寫性能、擴(kuò)容能力、備份恢復(fù)性能、故障容忍能力等方面全面提升。

云計(jì)算服務(wù)已經(jīng)發(fā)展很多年,隨著越來越多的企業(yè)選擇上云,各家云廠商之間的 PK,不再是停留在云服務(wù)的有無上,而是逐步轉(zhuǎn)向云服務(wù)的體驗(yàn)和性價比。
傳統(tǒng)架構(gòu)限制下的 MongoDB
1.資源浪費(fèi)
傳統(tǒng)架構(gòu)下的 MongoDB 副本集基于 Raft 分布式一致性協(xié)議,包含節(jié)點(diǎn)主備間選舉、數(shù)據(jù)同步、Log 追加等技術(shù)細(xì)節(jié)。該架構(gòu)優(yōu)勢明顯:自動故障接管、數(shù)據(jù)三副本冗余,在穩(wěn)定和可靠性方面可以說是根正苗紅。但缺陷也一目了然:提供三副本存儲的同時,只有單節(jié)點(diǎn)可寫,浪費(fèi)了兩個節(jié)點(diǎn)的計(jì)算能力。
2.擴(kuò)容受限
在 2017 年 MongoDB 年終大會上,來自云之家的 DBA 分享了一段他的經(jīng)歷,對存儲有 150T 數(shù)據(jù)的 MongoDB 數(shù)據(jù)庫擴(kuò)容,耗時接近一個月。
事實(shí)上,傳統(tǒng)三節(jié)點(diǎn)架構(gòu)下的 MongoDB 副本集,每一個 shard 節(jié)點(diǎn)之間的數(shù)據(jù)是相對獨(dú)立。當(dāng)用戶對數(shù)據(jù)庫進(jìn)行擴(kuò)容時,需要將已有節(jié)點(diǎn)的數(shù)據(jù)同步均衡。但由于數(shù)據(jù)是獨(dú)立存在、需要進(jìn)行網(wǎng)絡(luò)拷貝,因此,社區(qū)版 MongoDB 擴(kuò)容不但耗時久,而且擴(kuò)容后性能并不能立即得到提升,很大程度上限制了 MongoDB 的使用場景范圍。
3.故障容忍能力差
MongoDB 三副本雖然在大多數(shù)情況下可靠,但也不排除有兩個節(jié)點(diǎn)故障,導(dǎo)致業(yè)務(wù)中斷的可能。由于各節(jié)點(diǎn)間數(shù)據(jù)的獨(dú)立、同步需要一定時間,這就導(dǎo)致新選出的主節(jié)點(diǎn)數(shù)據(jù)太老,需要人工干預(yù)各節(jié)點(diǎn)數(shù)據(jù),從而增加系統(tǒng)的不可用時間。
4.彈性伸縮能力差
彈性伸縮能力,是指系統(tǒng)根據(jù)用戶購買的計(jì)算資源負(fù)載情況,來決定是否增加或者減少計(jì)算資源,以滿足客戶實(shí)際業(yè)務(wù)需求的功能。傳統(tǒng)架構(gòu)下的 MongoDB 副本集,由于受架構(gòu)限制,彈性伸縮能力差,往往出現(xiàn)控制成本和滿足業(yè)務(wù)高峰期要求不能兼顧的問題。
華為云存儲計(jì)算分離架構(gòu)優(yōu)勢
針對 MongoDB 傳統(tǒng)架構(gòu)的局限性,華為云 DDS 增強(qiáng)版采用存儲計(jì)算分離架構(gòu),通過多項(xiàng)技術(shù)改進(jìn),實(shí)現(xiàn)了 MongoDB 的彈性按需伸縮、分鐘級計(jì)算資源擴(kuò)容、秒級存儲資源擴(kuò)容、容忍N(yùn)-1個節(jié)點(diǎn)故障等能力。
華為云 MongoDB 增強(qiáng)版關(guān)鍵技術(shù)改進(jìn):
1.將 MongoDB 多副本復(fù)制功能卸載到分布式存儲,使得 Secondary 節(jié)點(diǎn)也可以為讀寫服務(wù),相同成本下獲得 3 倍的計(jì)算能力,進(jìn)而獲得3倍的讀寫性能提升。
2.華為云 DDS 增強(qiáng)版將 MongoDB 數(shù)據(jù)庫節(jié)點(diǎn)無狀態(tài)化,將數(shù)據(jù)和計(jì)算節(jié)點(diǎn)分離,去掉數(shù)據(jù)強(qiáng)歸宿某個計(jì)算節(jié)點(diǎn)的限制,使得橫向彈性伸縮性能提升 100倍 以上。
3.打破 MongoDB 只在單個 Shard 副本集內(nèi)支持 HA 高可用的限制,集群內(nèi)所有Shard 的所有節(jié)點(diǎn)都互為 HA 備份關(guān)系,使得可以支持任意 N-1 個節(jié)點(diǎn)故障。
4.打破 MongoDB 只在單個 Shard 副本集內(nèi)節(jié)點(diǎn)間復(fù)制3副本的限制,分布式存儲采用分片復(fù)制能力,磁盤故障后可以由更多磁盤參與數(shù)據(jù)重構(gòu),10 倍縮短數(shù)據(jù)重構(gòu)時間。
5.使用分布式存儲的快照備份技術(shù),替代MongoDB的邏輯備份,10倍提升備份恢復(fù)性能。
華為云技術(shù)加持下的 MongoDB,不但實(shí)現(xiàn)性能和體驗(yàn)的雙重提升,而且價格僅為市場同類產(chǎn)品的1/3,對用戶而言可謂福音!
近期,華為云DDS增強(qiáng)版還會開放自動彈性伸縮能力,根據(jù)業(yè)務(wù)性能要求彈性增加、減少集群分片,動態(tài)匹配業(yè)務(wù)需求,完美應(yīng)對電商秒殺、微博熱點(diǎn)、高峰打車等有明顯高峰、低谷的業(yè)務(wù)場景。
特別提醒:本網(wǎng)信息來自于互聯(lián)網(wǎng),目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實(shí),對本文以及其中全部或者部分內(nèi)容、文字的真實(shí)性、完整性、及時性本站不作任何保證或承諾,并請自行核實(shí)相關(guān)內(nèi)容。本站不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。如若本網(wǎng)有任何內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系我們,本站將會在24小時內(nèi)處理完畢。