在當(dāng)前越來越強調(diào)云原生的環(huán)境下,存儲計算分離已經(jīng)是大勢所趨。幾乎所有我們熟知的云數(shù)據(jù)庫都已經(jīng)開始使用存算分離實現(xiàn)資源價值的最大化,比如阿里的PolarDB,AWS 的Aurora,華為GaussDB for MySQL等。大量企業(yè)自建數(shù)據(jù)中心也開始采用“開源數(shù)據(jù)庫+存算分離”的方式進行部署。
那么,我們來看看這些先進的互聯(lián)網(wǎng)公司和數(shù)字化轉(zhuǎn)型的企業(yè),是怎么不約而同在數(shù)據(jù)庫改造中一步步走向“存算分離”的呢?
分布式數(shù)據(jù)庫是時代的選擇
從1970年IBM的E.F Codd在論文《A Ralational Model of Data for Large Shared Data Banks》中提出的數(shù)據(jù)庫系統(tǒng)關(guān)系模型,開創(chuàng)了數(shù)據(jù)庫關(guān)系方法和關(guān)系數(shù)據(jù)理論的研究,為數(shù)據(jù)庫技術(shù)奠定了理論基礎(chǔ),到1977年 Oracle數(shù)據(jù)庫發(fā)布,開啟了IBM DB2和Oracle等大型商業(yè)公司壟斷數(shù)據(jù)庫市場二十年。
直到90年代中期,隨著互聯(lián)網(wǎng)時代的來臨,開源數(shù)據(jù)庫MySQL,PostgreSQL的出現(xiàn),這種壟斷現(xiàn)象才被打破,以MySQL為代表的開源數(shù)據(jù)庫開始迅速發(fā)展。
21世紀10年代,數(shù)據(jù)的井噴式增長,對數(shù)據(jù)庫提出了水平擴展,大集群規(guī)模,高并發(fā)等新訴求,緊接著隨著公有云的蓬勃發(fā)展,以云為載體兼具高可擴展性、高并發(fā)性、高可用性的分布式數(shù)據(jù)庫,如谷歌Spanner,Snowflake,AWS Aurora等逐漸走進我們的視野。
至此我們可以看到分布式數(shù)據(jù)庫的誕生是順應(yīng)時代的發(fā)展,是時代的選擇。
分布式數(shù)據(jù)庫改造,存算一體部署之殤
分布式數(shù)據(jù)庫最成功的應(yīng)用場景就是支撐了早期電商業(yè)務(wù)的快速發(fā)展,然而隨著企業(yè)數(shù)字化轉(zhuǎn)型的深入,數(shù)據(jù)總量和形式呈現(xiàn)指數(shù)級的增長,數(shù)據(jù)庫要應(yīng)對的是不斷飆升的業(yè)務(wù)下高性能、高可靠的挑戰(zhàn);與此同時,不斷飆升的業(yè)務(wù)高峰還要求數(shù)據(jù)庫有極好的彈性伸縮能力、持續(xù)服務(wù)能力和合理的成本。
而原有的分布式數(shù)據(jù)庫“存算一體”,采用服務(wù)器本地盤的部署方式就越發(fā)顯得力不從心。
例如,由于計算、存儲資源捆綁,在應(yīng)對如雙11這類突發(fā)資源高峰時,無法只對計算資源進行快速擴容,分布式改造后無法支持單獨彈性擴展,有悖分布式改造的初衷。同時亞馬遜、阿里等廠家在自身和云客戶的使用中也發(fā)現(xiàn)以服務(wù)器本地盤的方式部署,在存儲可靠性、爆炸半徑、綜合成本等方面存在難以解決的問題。
以某運營商為例,在基于MySQL開源軟件自研的數(shù)據(jù)庫使用服務(wù)器本地盤部署的模式下,計算資源(CPU和內(nèi)存)與存儲資源(SSD磁盤)存在著不可調(diào)和的沖突(使用不均衡、擴容受限、運管困難等),并帶來成本的增加。
而這類問題在互聯(lián)網(wǎng)、金融、運營商一些云轉(zhuǎn)型企業(yè)中尤為突出:
-可靠性低:“服務(wù)器可靠性低,出問題數(shù)據(jù)無法訪問甚至就都丟了,必須用多從同步來補可靠性的缺口”,“服務(wù)器網(wǎng)絡(luò)抖動或磁盤亞健康問題很難監(jiān)控處理,影響系統(tǒng)穩(wěn)定性”,“服務(wù)器故障修復(fù)需要比較長時間,不能放太多實例”。
-運維困難:“更換設(shè)備或擴容需要搬遷數(shù)據(jù)庫,全量同步數(shù)據(jù)很慢”,“以前數(shù)據(jù)庫數(shù)量小,現(xiàn)單庫拆分成數(shù)10個實例,未來全網(wǎng)整改后,預(yù)計上千個實例,運維太復(fù)雜”,“原來只有兩臺小型機,現(xiàn)在需要20多臺機器,4、5個機柜,機房和電都不夠了”。
-成本高:“存算綁定,無法彈性擴容”,“資源閑置,CPU利用率低”,“為保證可靠性增加副本數(shù),現(xiàn)有架構(gòu)成本是原來的1.5倍”。
怎么去解決分布式數(shù)據(jù)庫架構(gòu)上服務(wù)器本地盤部署這一系列問題呢?業(yè)界一直在不停的探索,2014年AWS首次推出了Aurora,阿里在2017年推出了PolarDB,華為云在2020年推出了GaussDB for MySQL,華為存儲也在2021年針對企業(yè)自建數(shù)據(jù)中心,推出OceanData分布式數(shù)據(jù)庫存算分離方案,希望基于成熟的基礎(chǔ)設(shè)施“云”化技術(shù),解決分布式數(shù)據(jù)庫架構(gòu)上的短板。
業(yè)界云原生實踐:“存算分離”,共享存儲是分布式數(shù)據(jù)庫的最優(yōu)選擇
沒有一個概念和架構(gòu)是無緣無故憑空冒出來的,存算分離也是業(yè)界基于當(dāng)前分布式改造的現(xiàn)狀和本地盤部署的弊端不斷探索出來的,更是互聯(lián)網(wǎng),數(shù)字化轉(zhuǎn)型企業(yè)的共同選擇。
存算分離帶來的四大價值:
-可靠性提升:外置共享存儲可靠性結(jié)合云原生故障隔離和遷移能力,解決一體化方案可靠性短板,并為降低資源冗余提供基礎(chǔ);
-資源優(yōu)化:解決數(shù)據(jù)快速移動,實現(xiàn)計算、存儲彈性擴展,按需分配,減少因可靠性、運維能力不足造成的硬件冗余;
-能力復(fù)用:使用共享存儲成熟的備份恢復(fù)、SSD介質(zhì)延壽、亞健康等能力,快速提升數(shù)據(jù)庫整體解決方案能力,節(jié)約開發(fā)成本;
-架構(gòu)先進:基于開放生態(tài)存儲底座,可快速實現(xiàn)云原生數(shù)據(jù)庫能力,不影響上層應(yīng)用,實現(xiàn)平滑演進。
各行業(yè)在數(shù)字化轉(zhuǎn)型中都面臨著業(yè)務(wù)量爆炸性增長,業(yè)務(wù)互聯(lián)網(wǎng)化等挑戰(zhàn)。為了在新形勢下提升服務(wù)體驗,國內(nèi)某運營商聯(lián)合華為開展創(chuàng)新和應(yīng)用實踐,采用分布式數(shù)據(jù)庫存算分離方案構(gòu)建高效BSS系統(tǒng),實現(xiàn)了計算、存儲資源在線彈性擴容,整體資源利用率從10%提升到50%;數(shù)據(jù)重建恢復(fù)全自動化,恢復(fù)時間從3小時縮短至5分鐘;共享存儲帶來設(shè)備級6個9高可靠。
總結(jié)
隨著5G、分布式技術(shù)、云計算技術(shù)的不斷發(fā)展,及各行業(yè)數(shù)字化轉(zhuǎn)型的不斷深入,數(shù)據(jù)庫云化、數(shù)據(jù)庫云原生架構(gòu)已成為趨勢,計算、存儲分離,采用共享存儲的方式是數(shù)字化轉(zhuǎn)型的企業(yè)共同的選擇。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關(guān)資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )