爆料華為云Cloud Native分布式數(shù)據(jù)庫和高性能數(shù)據(jù)庫技術(shù)內(nèi)幕
伴隨著云時代的發(fā)展,數(shù)據(jù)庫的故事仍然在繼續(xù)。無論是商業(yè)版 Oracle 還是開源社區(qū)版MySQL,數(shù)據(jù)庫技術(shù)從煙囪式發(fā)展到聯(lián)邦式,再演進到分布式,上云方式也從 DIY(Do It Yourself)上云、服務(wù)化上云到云原生設(shè)計。他們越來越被廣泛關(guān)注,并以燎原之勢影響著現(xiàn)代企業(yè)的方方面面。那么,數(shù)據(jù)庫到底有哪些技術(shù)原理及內(nèi)幕呢?
眾所周知,在云計算的背景下,企業(yè) IT 業(yè)務(wù)正走向跨地區(qū)、全球化部署,IT 應(yīng)用軟件逐漸云化、分布式化。數(shù)據(jù)庫作為承載企業(yè)業(yè)務(wù)和應(yīng)用的關(guān)鍵,其基于云場景架構(gòu)設(shè)計,具備跨地區(qū)分布式部署的能力要求也日益凸顯。
如前文所述,數(shù)據(jù)庫技術(shù)的演進,是從煙囪式、到聯(lián)邦式、再到分布式的一個過程。
數(shù)據(jù)庫技術(shù)演化
煙囪式數(shù)據(jù)庫普遍采取主備從多副本部署架構(gòu),通過 Proxy 統(tǒng)一響應(yīng) APP 的讀寫請求,主要適用于訪問流量較穩(wěn)定,壓力不大的單數(shù)據(jù)庫系統(tǒng),支撐單業(yè)務(wù)系統(tǒng)。它的主要挑戰(zhàn)在于可用性和擴展性方面??捎眯匀Q于具體方案,一般不具備 Region 容災(zāi)能力,擴展性受限于從庫擴展節(jié)點數(shù)和***實例性能。
聯(lián)邦式數(shù)據(jù)庫將數(shù)據(jù)分片部署到各個數(shù)據(jù)節(jié)點上,通過數(shù)據(jù)庫中間件統(tǒng)一響應(yīng) APP 的讀寫請求,主要適用于松耦合、異構(gòu)的多數(shù)據(jù)庫系統(tǒng),用于集成垂直構(gòu)建的多個業(yè)務(wù)系統(tǒng)場景。其主要挑戰(zhàn)是可用性、擴展性和功能方面??捎眯允芟抻跀?shù)據(jù)分片也就是 Sharding 方案,擴展性需要人工操作分庫擴容,風(fēng)險大、需停機,功能方面無跨庫事務(wù)和聯(lián)結(jié),不支持復(fù)雜SQL查詢。
分布式數(shù)據(jù)庫的 SQL 層、執(zhí)行層、存儲層分層解耦、獨立擴展,主要適用于面向云分布式場景,要求***擴展性、高可用性的數(shù)據(jù)庫系統(tǒng),支撐跨地區(qū)的大規(guī)模業(yè)務(wù)系統(tǒng)。由于部署方面需要有足夠的跨地區(qū)數(shù)據(jù)中心機房和計算、存儲、網(wǎng)絡(luò)等資源,管理方面需要有跨地區(qū)數(shù)據(jù)中心的數(shù)據(jù)庫系統(tǒng)的管控能力,所以主要挑戰(zhàn)在于部署和管理方面。
值得一提的是,數(shù)據(jù)庫技術(shù)的演進,與新時代下的企業(yè)應(yīng)用場景變化有很大關(guān)系。當(dāng)前,全球企業(yè)應(yīng)用上云比例當(dāng)前在50%左右,而兩年后將提升到60%左右。企業(yè)應(yīng)用的加速上云,推動了數(shù)據(jù)庫加速向云遷移。傳統(tǒng)數(shù)據(jù)庫管理系統(tǒng) DBMS 快速向云遷移,轉(zhuǎn)化成為數(shù)據(jù)庫云服務(wù) DBaaS 的形式繼續(xù)支持企業(yè)應(yīng)用。
早前,企業(yè)上云的模式主要是DIY,即用戶需要自行購買云服務(wù)器,自行安裝、部署、維護和升級數(shù)據(jù)庫。優(yōu)點是部分利用了云化基礎(chǔ)設(shè)施服務(wù)的便利性和可靠性,缺點是運維開銷跟傳統(tǒng)云下方式不變,使用商業(yè)數(shù)據(jù)庫依然要支付昂貴的license授權(quán)費用,數(shù)據(jù)庫規(guī)格變更和升級困難,備份和容災(zāi)恢復(fù)復(fù)雜,很難實施。
后來演變?yōu)榉?wù)化模式,用戶只需購買數(shù)據(jù)庫云服務(wù),直接使用,無需購買云服務(wù)器,無需安裝、部署、維護和升級數(shù)據(jù)庫。服務(wù)化模式的優(yōu)點是應(yīng)用無需修改,數(shù)據(jù)庫即開即用,按需付費,彈性擴容,按需升級,具有跨AZ和跨Region的可靠性保障,缺點是用戶使用習(xí)慣需要稍微改變下。
到云原生設(shè)計模式時代,用戶將選擇全新的基于云架構(gòu)設(shè)計的分布式數(shù)據(jù)庫服務(wù)。其優(yōu)點是數(shù)據(jù)庫即開即用,按需付費,可以超大規(guī)模部署,超強的彈性擴容,按需升級,具有跨AZ和跨Region的可靠性保障,缺點是應(yīng)用有跨地區(qū)重構(gòu)的代價和學(xué)習(xí)成本,需要用戶有一定的軟件設(shè)計和實現(xiàn)能力。
數(shù)據(jù)庫上云模式
不難看出,企業(yè)想不通過外力實現(xiàn)數(shù)據(jù)庫上云,有很長的路要走。然而在市場千變?nèi)f化、機遇稍縱即逝的今天,留給企業(yè)的時間又有多少呢?
時值第九屆中國數(shù)據(jù)庫技術(shù)大會開啟在即,華為云數(shù)據(jù)庫***架構(gòu)師 Calvin Sun 將出席本次大會,并帶來《華為 Cloud Native 分布式數(shù)據(jù)庫技術(shù)》和《 MySQL 云數(shù)據(jù)庫的性能優(yōu)化和發(fā)展趨勢》兩場主題演講。
Calvin Sun于2017年加入華為加拿大多倫多研究所,曾在多個數(shù)據(jù)庫會議上做專題演講,有20多年數(shù)據(jù)庫內(nèi)核開發(fā)經(jīng)驗。他曾擔(dān)任過Oracle 云服務(wù)團隊MySQL云服務(wù)高級顧問;是Twitter MySQL內(nèi)核團隊的負責(zé)人;也曾擔(dān)任 Oracle InnoDB開發(fā)團隊負責(zé)人,期間帶領(lǐng)團隊負責(zé)了InnoDB MySQL 5.5和5.6版本的開發(fā)。更早的時候,他還擔(dān)任MySQL存儲引擎開發(fā)團隊的負責(zé)人。
在這次講座中,Calvin 將介紹華為 Cloud Native 分布式數(shù)據(jù)庫高可靠、高性能、易擴展等金融級的關(guān)鍵特性,并重點剖析其技術(shù)原理,深入揭開其背后的技術(shù)內(nèi)幕。此外還將帶領(lǐng)大家回顧 MySQL 關(guān)鍵性能特征,介紹 MySQL 云服務(wù)的現(xiàn)狀,以及華為云為提高云上 MySQL的性能所做的工作,討論進一步改進 MySQL 在云上性能的挑戰(zhàn)和機遇。
--------------------------------------我是分割線-----------------------------------------
數(shù)領(lǐng)先機,智贏未來。2018年5月10-12日第九屆中國數(shù)據(jù)庫技術(shù)大會,華為云數(shù)據(jù)庫在北京國際會議中心等你來。
華為云數(shù)據(jù)庫產(chǎn)品全景
點擊閱讀原文,了解更多華為云數(shù)據(jù)庫相關(guān)信息!