青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

報道來自IT168 覃里

細心的人可能會發(fā)現(xiàn),這幾年云計算廠商發(fā)布會上,數(shù)據(jù)庫的份量越來越重,新數(shù)據(jù)庫服務(wù)的發(fā)布也越來越多,云計算廠商正在不斷涉入數(shù)據(jù)庫領(lǐng)域,并有愈演愈烈之勢。

亞馬遜AWS此前就推出了Aurora,DynamoDB、Redshift等自研數(shù)據(jù)庫服務(wù),前不久又推出了一大批數(shù)據(jù)庫服務(wù),其中包含新的圖數(shù)據(jù)庫Neptune。阿里云也在今年9月份發(fā)布了基于第三代分布式共享存儲架構(gòu)自研的新一代關(guān)系型數(shù)據(jù)庫POLARDB,其早期自研的分布式關(guān)系型數(shù)據(jù)庫OceanBase也同步在阿里云上開放公測。而就在上周,青云QingCloud也推出了自研的新一代分布式數(shù)據(jù)庫服務(wù)RadonDB。

看起來,云計算廠商們似乎有些不務(wù)正業(yè),跨界玩的很嗨,如你也是這樣認為,那就out啦,原因顯然沒那么簡單。

90%以上業(yè)務(wù)都是圍繞數(shù)據(jù)庫構(gòu)建

云計算中,SaaS才是利潤最豐厚、對用戶粘性最強的部分。容器技術(shù)的發(fā)展讓企業(yè)把業(yè)務(wù)負載從一個IaaS云上遷移到另一個IaaS上變得更容易,但SaaS卻截然不同,如SAP,Oracle和Salesforce等公司的軟件產(chǎn)品,因為與業(yè)務(wù)深度整合,企業(yè)要想從一個SaaS供應(yīng)商切換到另一個SaaS供應(yīng)商變得非常困難。而在SaaS中,數(shù)據(jù)庫服務(wù)卻是最為核心又極為基礎(chǔ)的能力。

青云QingCloud CTO甘泉在發(fā)布會上就表示,在關(guān)鍵業(yè)務(wù)里一個最普遍的業(yè)務(wù)形態(tài)就是數(shù)據(jù)庫,90%以上的業(yè)務(wù)都是圍繞著數(shù)據(jù)庫構(gòu)建的。這就是青云為什么一定要提供一個分布式數(shù)據(jù)庫RadonDB的原因。

亞馬遜AWS首席執(zhí)行官Andy Jassy在剛結(jié)束不久的AWS re:Invent 2017大會上也指出,云計算的下一個競爭戰(zhàn)場是數(shù)據(jù)庫,他認為數(shù)據(jù)庫將會是另一個可以讓所有人都能看到巨大變化的領(lǐng)域。

阿里云數(shù)據(jù)庫掌門人褚霸則對筆者說過,為了讓用戶用的更爽,自研數(shù)據(jù)庫也就成了一種必然的選擇,這也是時代發(fā)展的一種必然。而自研數(shù)據(jù)庫也是競爭力的體現(xiàn),意味著阿里云從生產(chǎn)組裝到獨立研發(fā)的轉(zhuǎn)變。

他還表示,今天不只是阿里云要做這樣做,而是所有的云計算廠商都不可避免的要經(jīng)歷這樣一個階段。他認為,在未來2-3年內(nèi),沒有自研數(shù)據(jù)庫的云計算廠商將會被逐漸淘汰出局。

關(guān)于亞馬遜與阿里云發(fā)布的新數(shù)據(jù)庫服務(wù)不是本文重點,有興趣的可以看看老魚之前的文章。

1、與Oracle戰(zhàn)爭或?qū)⑸墸珹WS又發(fā)布了一大批新的數(shù)據(jù)庫服務(wù)

2、對話褚霸:阿里云發(fā)布POLARDB數(shù)據(jù)庫意味著什么?

今天,本文將從架構(gòu)設(shè)計、功能特性、實現(xiàn)原理、性能等多個角度,超詳細的介紹青云剛剛出爐的分布式數(shù)據(jù)庫-----RadonDB 。

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

以下內(nèi)容來自青云QingCloud數(shù)據(jù)庫高級技術(shù)專家張雁飛的演講(不代表老魚觀點),老魚在不改變演講所表達的意思基礎(chǔ)上僅略作修改。

青云為何要發(fā)布RadonDB?

“隨著數(shù)據(jù)量膨脹式發(fā)展,部分場景的數(shù)據(jù)量已經(jīng)達到了指數(shù)級增長,原有單機數(shù)據(jù)庫已經(jīng)無法承載如此大的數(shù)據(jù)量,這就需要一款新的分布式數(shù)據(jù)庫,這就是青云研發(fā)RadonDB的初衷。“張雁飛說。

RadonDB定位是新一代分布式關(guān)系型數(shù)據(jù)庫,基于 MySQL 研發(fā),注意是基于MySQL 研發(fā),“新”的體現(xiàn)就在這里。分布式關(guān)系型數(shù)據(jù)庫并不少見,大都是完全重寫,基于MySQL的幾乎沒有,原因就在把流行的分布式算法和MySQL結(jié)合起來很難,不僅考驗對分布式的理解,更考驗對數(shù)據(jù)庫的理解。

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

而基于MySQL的分布式數(shù)據(jù)庫其好處除了上圖表述外。更意味著,用戶原來基于單機版MySQL開發(fā)的應(yīng)用程序,基本不用做任何的修改就可以直接遷移到RadonDB上,不再需要去考慮分庫分表、讀寫分離等各方面讓人頭疼的問題。

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

RadonDB的特性主要有5個方面:

第一,可擴展,用戶只需用鼠標點擊兩下,就可以增加更多的節(jié)點,獲得更大的容量和更高的性能,它的擴展是線性的;

第二,高可用,RadonDB上層的SQL節(jié)點和下層的存儲節(jié)點都是分布式的,且完全無中心化,不會出現(xiàn)單點故障,當(dāng)副本出現(xiàn)問題的時候,可以秒級自動切換,無需人工干預(yù);

第三,強一致,RadonDB具備分布式事務(wù)的能力,意味著可以滿足金融客戶的需求,雖然是分布式數(shù)據(jù)庫,依然可以保證其強一致性;

第四,易部署,因為沒有中心化,所以很容易跟云平臺相結(jié)合,也可以獨立部署;

第五,MyNewSQL,從MySQL到NoSQL,然后到現(xiàn)在比較流行的NewSQL,而青云現(xiàn)在已經(jīng)走到了MyNewSQL這條道路上,就是MySQL和NewSQL相結(jié)合,充分發(fā)揮兩者的優(yōu)勢。

RadonDB的架構(gòu)設(shè)計

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

RadonDB的架構(gòu)主要有兩大部分組成:分布式SQL節(jié)點+分布式的存儲節(jié)點。

分布式SQL節(jié)點的作用,是把用戶的請求生成分布式執(zhí)行計劃和分布式執(zhí)行器,這些執(zhí)行器在后端的存儲節(jié)點上并行執(zhí)行。據(jù)了解,青云已經(jīng)做到了對用戶的每個SQL都可以并行執(zhí)行,這是RadonDB高性能的一種體現(xiàn)。

底層是分布式存儲節(jié)點,每一個存儲節(jié)點其實就是一個MySQL Plus,MySQL Plus是一個一主兩從的MySQL集群,具備高可用、強一致的能力。

這兩大部分就組成了RadonDB的整體架構(gòu)。

張雁飛表示,這是青云基于MySQL做的分布式數(shù)據(jù)庫中的創(chuàng)新。其中,底層存儲副本是用MySQL, MySQL不僅提供存儲能力,還可以提供計算能力。這樣可以把SQL層的用戶請求中的計算下推到存儲層,減少了SQL層和存儲層的網(wǎng)絡(luò)交互。

RadonDB如何解決大容量問題?

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

分布式本來就是為了解決大容量的問題,因此大容量是RadonDB首先要解決的一個問題。RadonDB實現(xiàn)了智能化擴容,當(dāng)用戶需要擴容的時候,RadonDB會采集一些數(shù)據(jù),擴容機器人通過分析這些擴容數(shù)據(jù),生成擴容建議,并將數(shù)據(jù)從一個地方遷移到另一個地方,這就是智能化擴容。

另外,青云還提供了兩種存儲引擎供用戶選擇,一個是比較常用的InnoDB,另一個就是高壓縮的引擎——TokuDB,壓縮比較高,當(dāng)數(shù)據(jù)量較大時,青云建議選擇TokuDB引擎。

如何做到高可用、強一致?

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

上面提到SQL層是分布式、無狀態(tài)的,因此,可以隨便切換。那么,存儲層如何做到高可用呢?

從上面這張PPT的圖中可以看出,MySQL Plus是三副本,每一個副本都是一個MySQL。當(dāng)主節(jié)點故障時,青云使用Raft協(xié)議(Raft協(xié)議是當(dāng)今分布式比較流行的、大家普遍采用的一個協(xié)議)。青云還結(jié)合GTID并行復(fù)制,包括Semi-sync復(fù)制技術(shù),保證主從切換后,數(shù)據(jù)零丟失且強一致,這是RadonDB達到金融級高可用、強一致的原因。

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

為了保證數(shù)據(jù)一致性,RadonDB提供了分布式事務(wù)能力,當(dāng)某個節(jié)點更新失敗時,其他節(jié)點的數(shù)據(jù)會自動回滾。單個節(jié)點內(nèi)多個副本間通過Raft、GTID,甚至Semi-sync做到副本間的強一致。這兩個層面結(jié)合起來,就可以實現(xiàn)整個數(shù)據(jù)庫的強一致。張雁飛表示這是青云為了滿足金融級用戶的需求而做的功能。

OLTP和OLAP

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

在傳統(tǒng)的解決方案里,一般都是兩套系統(tǒng),就是兩個端口。在需要事務(wù)和需要分析的時候,分別在兩個端口處理,中間通過ETL通道進行數(shù)據(jù)同步。但是,在RadonDB里就一個端口,如果是OLAP的操作,青云會自動路由到計算節(jié)點,而且OLTP和OLAP這兩個計算的資源是隔離的,互不影響。

RadonDB的性能,跑個分!

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

從張雁飛展示的這頁PPT可以看到,這是一個單機MySQL和四個存儲節(jié)點的RadonDB的對比測試。

用sysbench16個表、512個線程,隨機寫了5000萬條數(shù)據(jù),測試得出來的結(jié)果,RadonDB基本上可以做到26,589 TBS,單機是9346 TBS,在TBS層面RadonDB性能是單機的近三倍,延遲卻只有的三分之一。

RadonDB的應(yīng)用場景

最后,我們來看看RadonDB應(yīng)用場景,都可以用在哪里?

青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里

因為支持OLTP和OLAP,所以RadonDB能夠支持高并發(fā)、大規(guī)模在線事務(wù)處理,也能夠支持海量數(shù)據(jù)實時分析,并且兩者互不干擾。

張雁飛特別強調(diào)了后面三個場景,首先是替代傳統(tǒng)的分布式數(shù)據(jù)庫中間件。

他指出,RadonDB是一個整體的解決方案,并非像傳統(tǒng)分布式數(shù)據(jù)庫中間件,只負責(zé)分布式的SQL層,很少涉及存儲層,所以RadonDB完全可以替代分布式數(shù)據(jù)庫中間件。

最后兩個是替代大型傳統(tǒng)數(shù)據(jù)庫和傳統(tǒng)數(shù)據(jù)庫一體機。結(jié)合本次與RadonDB一同上線的另兩款新產(chǎn)品:Bare Metal物理主機和NeonSAN共享塊存儲,青云給用戶提供了一個價格更低,容量和性能更高的整體解決方案。

報道來自IT168 覃里

極客網(wǎng)企業(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)鏈接。

2018-05-10
青云發(fā)布RadonDB數(shù)據(jù)庫 你想知道的都在這里
報道來自IT168 覃里細心的人可能會發(fā)現(xiàn),這幾年云計算廠商發(fā)布會上,數(shù)據(jù)庫的份量越來越重,新數(shù)據(jù)庫服務(wù)的發(fā)布也越來越多,云計算廠商正在不斷涉入數(shù)據(jù)庫領(lǐng)域,并有

長按掃碼 閱讀全文