伴隨著云時(shí)代的發(fā)展,數(shù)據(jù)庫(kù)的故事仍然在繼續(xù)柏副。無(wú)論是商業(yè)版 Oracle 還是開(kāi)源社區(qū)版MySQL勾邦,數(shù)據(jù)庫(kù)技術(shù)從煙囪式發(fā)展到聯(lián)邦式,再演進(jìn)到分布式割择,上云方式也從 DIY(Do It Yourself)上云检痰、服務(wù)化上云到云原生設(shè)計(jì)。他們?cè)絹?lái)越被廣泛關(guān)注锨推,并以燎原之勢(shì)影響著現(xiàn)代企業(yè)的方方面面铅歼。那么,數(shù)據(jù)庫(kù)到底有哪些技術(shù)原理及內(nèi)幕呢换可?
眾所周知椎椰,在云計(jì)算的背景下,企業(yè) IT 業(yè)務(wù)正走向跨地區(qū)沾鳄、全球化部署慨飘,IT 應(yīng)用軟件逐漸云化、分布式化译荞。數(shù)據(jù)庫(kù)作為承載企業(yè)業(yè)務(wù)和應(yīng)用的關(guān)鍵瓤的,其基于云場(chǎng)景架構(gòu)設(shè)計(jì),具備跨地區(qū)分布式部署的能力要求也日益凸顯吞歼。
如前文所述圈膏,數(shù)據(jù)庫(kù)技術(shù)的演進(jìn),是從煙囪式篙骡、到聯(lián)邦式稽坤、再到分布式的一個(gè)過(guò)程丈甸。
煙囪式數(shù)據(jù)庫(kù)普遍采取主備從多副本部署架構(gòu),通過(guò) Proxy 統(tǒng)一響應(yīng) APP 的讀寫(xiě)請(qǐng)求尿褪,主要適用于訪問(wèn)流量較穩(wěn)定睦擂,壓力不大的單數(shù)據(jù)庫(kù)系統(tǒng),支撐單業(yè)務(wù)系統(tǒng)杖玲。它的主要挑戰(zhàn)在于可用性和擴(kuò)展性方面顿仇。可用性取決于具體方案摆马,一般不具備 Region 容災(zāi)能力夺欲,擴(kuò)展性受限于從庫(kù)擴(kuò)展節(jié)點(diǎn)數(shù)和最大實(shí)例性能。
聯(lián)邦式數(shù)據(jù)庫(kù)將數(shù)據(jù)分片部署到各個(gè)數(shù)據(jù)節(jié)點(diǎn)上今膊,通過(guò)數(shù)據(jù)庫(kù)中間件統(tǒng)一響應(yīng) APP 的讀寫(xiě)請(qǐng)求些阅,主要適用于松耦合、異構(gòu)的多數(shù)據(jù)庫(kù)系統(tǒng)斑唬,用于集成垂直構(gòu)建的多個(gè)業(yè)務(wù)系統(tǒng)場(chǎng)景市埋。其主要挑戰(zhàn)是可用性、擴(kuò)展性和功能方面恕刘$突眩可用性受限于數(shù)據(jù)分片也就是 Sharding 方案,擴(kuò)展性需要人工操作分庫(kù)擴(kuò)容褐着,風(fēng)險(xiǎn)大坷澡、需停機(jī),功能方面無(wú)跨庫(kù)事務(wù)和聯(lián)結(jié)含蓉,不支持復(fù)雜SQL查詢(xún)频敛。
分布式數(shù)據(jù)庫(kù)的 SQL 層、執(zhí)行層馅扣、存儲(chǔ)層分層解耦斟赚、獨(dú)立擴(kuò)展,主要適用于面向云分布式場(chǎng)景差油,要求極致擴(kuò)展性拗军、高可用性的數(shù)據(jù)庫(kù)系統(tǒng),支撐跨地區(qū)的大規(guī)模業(yè)務(wù)系統(tǒng)蓄喇。由于部署方面需要有足夠的跨地區(qū)數(shù)據(jù)中心機(jī)房和計(jì)算发侵、存儲(chǔ)、網(wǎng)絡(luò)等資源妆偏,管理方面需要有跨地區(qū)數(shù)據(jù)中心的數(shù)據(jù)庫(kù)系統(tǒng)的管控能力刃鳄,所以主要挑戰(zhàn)在于部署和管理方面。
值得一提的是楼眷,數(shù)據(jù)庫(kù)技術(shù)的演進(jìn)铲汪,與新時(shí)代下的企業(yè)應(yīng)用場(chǎng)景變化有很大關(guān)系。當(dāng)前罐柳,全球企業(yè)應(yīng)用上云比例當(dāng)前在50%左右掌腰,而兩年后將提升到60%左右。企業(yè)應(yīng)用的加速上云张吉,推動(dòng)了數(shù)據(jù)庫(kù)加速向云遷移齿梁。傳統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng) DBMS 快速向云遷移,轉(zhuǎn)化成為數(shù)據(jù)庫(kù)云服務(wù) DBaaS 的形式繼續(xù)支持企業(yè)應(yīng)用肮蛹。
早前勺择,企業(yè)上云的模式主要是DIY,即用戶(hù)需要自行購(gòu)買(mǎi)云服務(wù)器伦忠,自行安裝省核、部署、維護(hù)和升級(jí)數(shù)據(jù)庫(kù)昆码。優(yōu)點(diǎn)是部分利用了云化基礎(chǔ)設(shè)施服務(wù)的便利性和可靠性气忠,缺點(diǎn)是運(yùn)維開(kāi)銷(xiāo)跟傳統(tǒng)云下方式不變,使用商業(yè)數(shù)據(jù)庫(kù)依然要支付昂貴的license授權(quán)費(fèi)用赋咽,數(shù)據(jù)庫(kù)規(guī)格變更和升級(jí)困難旧噪,備份和容災(zāi)恢復(fù)復(fù)雜,很難實(shí)施脓匿。
后來(lái)演變?yōu)榉?wù)化模式淘钟,用戶(hù)只需購(gòu)買(mǎi)數(shù)據(jù)庫(kù)云服務(wù),直接使用陪毡,無(wú)需購(gòu)買(mǎi)云服務(wù)器米母,無(wú)需安裝、部署毡琉、維護(hù)和升級(jí)數(shù)據(jù)庫(kù)爱咬。服務(wù)化模式的優(yōu)點(diǎn)是應(yīng)用無(wú)需修改,數(shù)據(jù)庫(kù)即開(kāi)即用绊起,按需付費(fèi)精拟,彈性擴(kuò)容,按需升級(jí)虱歪,具有跨AZ和跨Region的可靠性保障蜂绎,缺點(diǎn)是用戶(hù)使用習(xí)慣需要稍微改變下。
到云原生設(shè)計(jì)模式時(shí)代笋鄙,用戶(hù)將選擇全新的基于云架構(gòu)設(shè)計(jì)的分布式數(shù)據(jù)庫(kù)服務(wù)师枣。其優(yōu)點(diǎn)是數(shù)據(jù)庫(kù)即開(kāi)即用,按需付費(fèi)萧落,可以超大規(guī)模部署践美,超強(qiáng)的彈性擴(kuò)容洗贰,按需升級(jí),具有跨AZ和跨Region的可靠性保障陨倡,缺點(diǎn)是應(yīng)用有跨地區(qū)重構(gòu)的代價(jià)和學(xué)習(xí)成本敛滋,需要用戶(hù)有一定的軟件設(shè)計(jì)和實(shí)現(xiàn)能力。
不難看出兴革,企業(yè)想不通過(guò)外力實(shí)現(xiàn)數(shù)據(jù)庫(kù)上云绎晃,有很長(zhǎng)的路要走。然而在市場(chǎng)千變?nèi)f化杂曲、機(jī)遇稍縱即逝的今天庶艾,留給企業(yè)的時(shí)間又有多少呢?
時(shí)值第九屆中國(guó)數(shù)據(jù)庫(kù)技術(shù)大會(huì)開(kāi)啟在即擎勘,華為云數(shù)據(jù)庫(kù)首席架構(gòu)師 Calvin Sun 將出席本次大會(huì)咱揍,并帶來(lái)《華為 Cloud Native 分布式數(shù)據(jù)庫(kù)技術(shù)》和《 MySQL 云數(shù)據(jù)庫(kù)的性能優(yōu)化和發(fā)展趨勢(shì)》兩場(chǎng)主題演講。
Calvin Sun于2017年加入華為加拿大多倫多研究所棚饵,曾在多個(gè)數(shù)據(jù)庫(kù)會(huì)議上做專(zhuān)題演講述召,有20多年數(shù)據(jù)庫(kù)內(nèi)核開(kāi)發(fā)經(jīng)驗(yàn)。他曾擔(dān)任過(guò)Oracle 云服務(wù)團(tuán)隊(duì)MySQL云服務(wù)高級(jí)顧問(wèn)蟹地;是Twitter MySQL內(nèi)核團(tuán)隊(duì)的負(fù)責(zé)人积暖;也曾擔(dān)任 Oracle InnoDB開(kāi)發(fā)團(tuán)隊(duì)負(fù)責(zé)人,期間帶領(lǐng)團(tuán)隊(duì)負(fù)責(zé)了InnoDB MySQL 5.5和5.6版本的開(kāi)發(fā)怪与。更早的時(shí)候夺刑,他還擔(dān)任MySQL存儲(chǔ)引擎開(kāi)發(fā)團(tuán)隊(duì)的負(fù)責(zé)人。
在這次講座中分别,Calvin 將介紹華為 Cloud Native 分布式數(shù)據(jù)庫(kù)高可靠遍愿、高性能、易擴(kuò)展等金融級(jí)的關(guān)鍵特性耘斩,并重點(diǎn)剖析其技術(shù)原理沼填,深入揭開(kāi)其背后的技術(shù)內(nèi)幕。此外還將帶領(lǐng)大家回顧 MySQL 關(guān)鍵性能特征括授,介紹 MySQL 云服務(wù)的現(xiàn)狀坞笙,以及華為云為提高云上 MySQL的性能所做的工作,討論進(jìn)一步改進(jìn) MySQL 在云上性能的挑戰(zhàn)和機(jī)遇荚虚。
數(shù)領(lǐng)先機(jī)薛夜,智贏未來(lái)。2018年5月10-12日第九屆中國(guó)數(shù)據(jù)庫(kù)技術(shù)大會(huì)版述,華為云數(shù)據(jù)庫(kù)在北京國(guó)際會(huì)議中心等你來(lái)梯澜。