性能 1.84 倍于 Ceph!網(wǎng)易數(shù)帆開源分布式存儲(chǔ)系統(tǒng) Curve

CSDN App
也許是廠家+“云”的后綴會(huì)讓人產(chǎn)生這些廠商都是競(jìng)爭(zhēng)關(guān)系的錯(cuò)覺,網(wǎng)易云最近宣布品牌全面升級(jí)為網(wǎng)易數(shù)帆。當(dāng)然背后的真正原因,正如網(wǎng)易副總裁、網(wǎng)易杭州研究院執(zhí)行院長(zhǎng)兼網(wǎng)易數(shù)帆總經(jīng)理汪源所說,還是在這個(gè)時(shí)刻,網(wǎng)易數(shù)帆積攢的基礎(chǔ)軟件能力,需要一次匯聚式的釋放。

作者 | 陳利鑫

頭圖 | CSDN 下載自東方 IC

出品 | CSDN(ID:CSDNnews)

也許是廠家+“云”的后綴會(huì)讓人產(chǎn)生這些廠商都是競(jìng)爭(zhēng)關(guān)系的錯(cuò)覺,網(wǎng)易云最近宣布品牌全面升級(jí)為網(wǎng)易數(shù)帆。當(dāng)然背后的真正原因,正如網(wǎng)易副總裁、網(wǎng)易杭州研究院執(zhí)行院長(zhǎng)兼網(wǎng)易數(shù)帆總經(jīng)理汪源所說,還是在這個(gè)時(shí)刻,網(wǎng)易數(shù)帆積攢的基礎(chǔ)軟件能力,需要一次匯聚式的釋放。

他介紹到,品牌升級(jí)后,網(wǎng)易數(shù)帆下包含了四大模塊:第一,云原生軟件生產(chǎn)力平臺(tái)網(wǎng)易輕舟;第二,全鏈路數(shù)據(jù)生產(chǎn)力平臺(tái)網(wǎng)易易數(shù);第三,多媒體智能開放平臺(tái)網(wǎng)易易智;第四,全維度質(zhì)量效能平臺(tái)網(wǎng)易易測(cè),旨在數(shù)字化轉(zhuǎn)型基礎(chǔ)軟件領(lǐng)域,做到業(yè)界領(lǐng)先的提供商。

從4條產(chǎn)品線來看,網(wǎng)易數(shù)帆走向了一條被汪源反復(fù)提及的基礎(chǔ)軟件的路線,也就是提供開發(fā)工具、操作系統(tǒng)、數(shù)據(jù)庫和中間件。在4個(gè)模塊下,網(wǎng)易均有多款新產(chǎn)品和服務(wù)能力發(fā)布。

首先,我們來從網(wǎng)易數(shù)帆新發(fā)布的產(chǎn)品,來一窺其現(xiàn)在擁有能力的實(shí)力水平。

開源分布式存儲(chǔ)系統(tǒng)Curve,性能是Ceph的1.84倍!

鑒于目前開源領(lǐng)域還沒有足夠高性能和低延遲的分布式存儲(chǔ)系統(tǒng),汪源宣布開源一款名為Curve的新一代高性能分布式存儲(chǔ)系統(tǒng)。

目前,該項(xiàng)目已在GitHub開源,地址為:opencurve.github.io

Curve的定位,是提供一個(gè)高性能、低延遲的存儲(chǔ)底座,基于這個(gè)存儲(chǔ)底座,企業(yè)可以打造適用于不同應(yīng)用場(chǎng)景的存儲(chǔ)系統(tǒng),如塊存儲(chǔ)、對(duì)象存儲(chǔ)、云原生數(shù)據(jù)庫等。目前,網(wǎng)易數(shù)帆已經(jīng)實(shí)現(xiàn)了高性能塊存儲(chǔ)系統(tǒng)。

汪源介紹到,Curve主要具有三大設(shè)計(jì)特點(diǎn):高性能、高可用和自治。

他坦承,Curve未必比現(xiàn)在所有的商業(yè)存儲(chǔ)系統(tǒng)好,但是這個(gè)市場(chǎng)確實(shí)需要開源的操作系統(tǒng)。之前大家能用的基本上就是Ceph,包括網(wǎng)易數(shù)帆早期因?yàn)闆]有自己的很好的存儲(chǔ)系統(tǒng),也是用了很多Ceph。但是,在使用Ceph的過程中,他們發(fā)現(xiàn)這個(gè)系統(tǒng)存在幾個(gè)核心問題。

第一個(gè)就是Ceph的IO處理路徑很長(zhǎng),導(dǎo)致性能和延遲都不是太理想。對(duì)于寫操作來說,Ceph需要復(fù)制組里面所有的節(jié)點(diǎn)都返回成功請(qǐng)求才返回成功,Curve只需要大多數(shù)節(jié)點(diǎn)返回成功就可以返回IO成功,相對(duì)來說Curve降低了寫請(qǐng)求的延遲提升了性能。同時(shí),Curve在磁盤IO方面通過更細(xì)粒度的地址空間的hash減少IO碰撞,增加IO并發(fā)度,并采用chunkfilepool減小IO放大倍數(shù),從而最大限度地發(fā)揮硬件的性能。

第二個(gè)是Ceph存儲(chǔ)系統(tǒng)沒有一個(gè)單獨(dú)的存儲(chǔ)元數(shù)據(jù)的管理,而Curve有,這也是兩者在架構(gòu)上最大的區(qū)別。基于這樣的不同設(shè)計(jì),就帶來了這兩個(gè)系統(tǒng)的不同表現(xiàn):一方面是Ceph的可用性較差,因?yàn)樗鼪]有單獨(dú)的元數(shù)據(jù)管理,存儲(chǔ)集群中某些節(jié)點(diǎn)發(fā)生故障時(shí),數(shù)據(jù)就要進(jìn)行大規(guī)模遷移,這顯然會(huì)影響到整個(gè)集群的性能和吞吐率;另一方面,這樣的做法使得Ceph無論是在處理故障,還是系統(tǒng)擴(kuò)縮容時(shí),大規(guī)模的數(shù)據(jù)遷移導(dǎo)致系統(tǒng)的運(yùn)維成本很高。因此,Curve的核心架構(gòu)上的一個(gè)重點(diǎn),就是有獨(dú)立的元數(shù)據(jù)管理來解決系統(tǒng)的可用性、可運(yùn)維性等問題。另外,針對(duì)性能問題,Curve采用brpc保證網(wǎng)絡(luò)數(shù)據(jù)流的高性能和低延遲,基于braft實(shí)現(xiàn)多副本一致性下的低延遲,并對(duì)braft的快照實(shí)現(xiàn)進(jìn)行了進(jìn)一步的優(yōu)化。

Curve和Ceph L版本的測(cè)試數(shù)據(jù)對(duì)比顯示,在單卷的場(chǎng)景下,核心的4K隨機(jī)讀/寫的IOPS性能,Curve分別是Ceph的1.84倍和1.58倍,同時(shí)延遲相比Ceph分別降低48.39%和37.50%。

圖:Curve與Ceph性能測(cè)試對(duì)比

他在采訪中透露,Curve還有一些創(chuàng)新的性能優(yōu)化工作尚未完成,如細(xì)粒度哈希、io_uring落盤方案,預(yù)計(jì)完成優(yōu)化之后下個(gè)版本還會(huì)有30%的性能提升。換句話說,Curve單卷性能將會(huì)達(dá)到Ceph的2倍以上。

高可用方面,Curve被設(shè)計(jì)為核心組件都能容忍部分實(shí)例失敗而不影響整個(gè)集群的可用性。汪源介紹,無論是單臺(tái)存儲(chǔ)故障,還是系統(tǒng)擴(kuò)容,Curve的客戶端IO都不會(huì)受到絲毫的影響,插拔硬盤、服務(wù)進(jìn)程中斷這些常見異常,IO抖動(dòng)也很小。當(dāng)然,故障恢復(fù)過程對(duì)上層IO也不會(huì)造成明顯影響。

此外,在自治方面,Curve實(shí)現(xiàn)了一鍵部署、一鍵升級(jí),運(yùn)維只要很少的人工干預(yù),并基于bvar、Promethues和Grafana等開源技術(shù)打造了全面的度量標(biāo)準(zhǔn)和告警體系。

據(jù)悉,基于Curve的高性能塊存儲(chǔ)系統(tǒng)已經(jīng)應(yīng)用在網(wǎng)易的一些核心業(yè)務(wù)中,支持快照克隆和恢復(fù), 支持QEMU虛擬機(jī)和物理機(jī)NBD設(shè)備兩種掛載方式。

6大云原生相關(guān)產(chǎn)品,構(gòu)建云原生生態(tài)

在云原生方面,網(wǎng)易數(shù)帆旗下網(wǎng)易輕舟還全新發(fā)布了云原生軟件生產(chǎn)力平臺(tái),該平臺(tái)由輕舟微服務(wù)和新發(fā)布的輕舟中間件、輕舟混合云及輕舟低代碼等四大產(chǎn)品體系組成,能夠幫助企業(yè)提升軟件全生命周期的端到端能力。

此外,網(wǎng)易還發(fā)布了一款云原生操作系統(tǒng)產(chǎn)品。有人認(rèn)為,云操作系統(tǒng)廠商之間未來的競(jìng)爭(zhēng)重點(diǎn)將是比拼生態(tài)構(gòu)建能力。網(wǎng)易這次發(fā)布的云原生操作系統(tǒng)超級(jí)產(chǎn)品,對(duì)于網(wǎng)易構(gòu)建自己的生態(tài)能力來說,具有重要的意義。

汪源認(rèn)為,操作系統(tǒng)是一個(gè)超級(jí)產(chǎn)品,在這個(gè)領(lǐng)域如果能夠做成功,將會(huì)是一個(gè)巨大的市場(chǎng),比如微軟、Google,就是都是靠操作系統(tǒng)獲得巨大成功。但是要想成功,一定要有好的生態(tài)布局。操作系統(tǒng)生態(tài)布局包括兩方面,一是應(yīng)用,二是中間件。也就是說,打造操作系統(tǒng)生態(tài),不僅需要最底層的基礎(chǔ)設(shè)施生態(tài)強(qiáng),上面的中間件和應(yīng)用生態(tài)也需要很強(qiáng)。經(jīng)過沉淀,網(wǎng)易數(shù)帆在基礎(chǔ)設(shè)施處和應(yīng)用層都構(gòu)建了比較好的生態(tài)。

比如此次網(wǎng)易數(shù)帆推出的Curve存儲(chǔ)系統(tǒng),實(shí)際上與實(shí)現(xiàn)云原生操作系統(tǒng)是緊密相關(guān)的。因?yàn)樵圃僮飨到y(tǒng)的概念主要是計(jì)算資源的統(tǒng)一調(diào)度,為了實(shí)現(xiàn)計(jì)算資源的統(tǒng)一調(diào)度,所有的應(yīng)用軟件、中間件,包括數(shù)據(jù)庫等,都應(yīng)該做到計(jì)算和存儲(chǔ)分離,這就需要有一個(gè)高性能的存儲(chǔ)系統(tǒng)來支撐,使得計(jì)算存儲(chǔ)分離了之后還能保持高性能。所以,網(wǎng)易推出Curve這個(gè)開源的高性能分布式存儲(chǔ)系統(tǒng),對(duì)于網(wǎng)易數(shù)帆云原生操作系統(tǒng),也是一個(gè)非常關(guān)鍵的步驟。

云原生將從軟件研發(fā)、DevOps、微服務(wù),逐步走向操作系統(tǒng)、中間件

汪源認(rèn)為,云原生是構(gòu)建生態(tài)最好的基點(diǎn)之一,云原生是社區(qū)推進(jìn)的一條技術(shù)路線,要?jiǎng)?chuàng)造好的生態(tài),至少目前,網(wǎng)易一定要圍繞云原生的這套生態(tài)去做。而網(wǎng)易數(shù)帆今后將要的堅(jiān)持、完善的三個(gè)主要方向,其中之一就是云原生方向。

在他看來,云原生具有強(qiáng)大的生產(chǎn)力,這個(gè)方向不單是在軟件定義組織的解決方案里提供能力,同時(shí)也在軟件定義基礎(chǔ)設(shè)施層面提供核心能力,因此,云原生在網(wǎng)易數(shù)帆解決方案中處于最核心的地位。同時(shí),汪源表示,基于其現(xiàn)在的技術(shù)環(huán)境,現(xiàn)在最好的選擇是CNCF這樣的云原生開源和開放社區(qū),圍繞云原生技術(shù)棧,不斷地提升和迭代能力。

汪源認(rèn)為,從本質(zhì)上來講,云原生聚焦于基礎(chǔ)軟件層面,其實(shí)與具體行業(yè)和具體業(yè)務(wù)問題不直接相關(guān),所以還是比較適合在軟件技術(shù)層面或軟件工程層面做。對(duì)于所有企業(yè)來說,訴求無非是效率、成本和質(zhì)量三個(gè)方面,那么,能夠在這個(gè)范疇內(nèi)提高研發(fā)效率,可快速迭代是所有企業(yè)的追求。云原生體系里,微服務(wù)架構(gòu)能夠支持軟件研發(fā)的效能、質(zhì)量,云原生操作系統(tǒng)則能夠控制成本。

談到云原生將來會(huì)向哪些趨勢(shì)發(fā)展,汪源指出,云原生技術(shù)早期主要是圍繞Netflix提出的云原生應(yīng)用十二要素,關(guān)注的是應(yīng)用層面的架構(gòu)問題,包括微服務(wù)、DevOps技術(shù),以及下一代的微服務(wù)——服務(wù)網(wǎng)格(Service Mesh)等,這些是云原生技術(shù)過去的主要關(guān)注點(diǎn)。

而在當(dāng)下,我們可以發(fā)現(xiàn),其實(shí)大部分企業(yè)還未真正地把主要的業(yè)務(wù)放到云原生架構(gòu)下,因此很多企業(yè)還沒遇到基礎(chǔ)設(shè)施層面的痛點(diǎn)。等到大家把業(yè)務(wù)都放到云原生架構(gòu)中,這時(shí)就會(huì)遇到很多基礎(chǔ)層次的問題,很多就是云原生操作系統(tǒng)要解決的問題,比如如何統(tǒng)一管理多任務(wù)、降低成本等。云原生操作系統(tǒng)就是一個(gè)符合云原生社區(qū)愿景的發(fā)展方向,當(dāng)一家企業(yè)把所有業(yè)務(wù)云原生化就會(huì)發(fā)現(xiàn)云操作系統(tǒng)這個(gè)概念的價(jià)值。

“但從企業(yè)的角度看,他們考慮的是云原生體系能夠立竿見影地提高迭代速度。所以,云原生的第一步是拓展云原生價(jià)值,之后是考慮降低成本、提高彈性等問題。因此,云原生的趨勢(shì),將從軟件研發(fā)、DevOps、微服務(wù),逐步走到云原生操作系統(tǒng)、云原生中間件范疇,”汪源預(yù)測(cè)道。

汪源:會(huì)再為基礎(chǔ)軟件貢獻(xiàn)19年!

汪源這位自畢業(yè)之后就加入網(wǎng)易的“老炮兒”,在分享中反復(fù)提到了基礎(chǔ)軟件這個(gè)話題,他認(rèn)為,中國當(dāng)前在基礎(chǔ)軟件方面還比較薄弱。中國基礎(chǔ)軟件發(fā)展的一個(gè)關(guān)鍵點(diǎn)是2003年,一個(gè)關(guān)鍵事件是工信部設(shè)立核高基專項(xiàng),其中的“基”表示支持國內(nèi)廠商開發(fā)國產(chǎn)數(shù)據(jù)庫、國產(chǎn)中間件等基礎(chǔ)軟件產(chǎn)品。在北京閉關(guān)了9個(gè)月,汪源參與開發(fā)了“神舟OSCAR”這款國產(chǎn)數(shù)據(jù)庫,從那天起,他便與基礎(chǔ)軟件結(jié)下了不解之緣。

現(xiàn)在,汪源已經(jīng)是網(wǎng)易杭州研究院執(zhí)行院長(zhǎng),全面負(fù)責(zé)網(wǎng)易集團(tuán)基礎(chǔ)設(shè)施/云原生/中間件/大數(shù)據(jù)/人工智能/信息安全/中臺(tái)等核心技術(shù)平臺(tái)建設(shè)、項(xiàng)目管理/用戶體驗(yàn)與設(shè)計(jì)/運(yùn)維保障/質(zhì)量保障/創(chuàng)新服務(wù)等創(chuàng)新平臺(tái)建設(shè)和網(wǎng)易數(shù)帆政企業(yè)務(wù)。在他簡(jiǎn)潔明了的簡(jiǎn)介中,可以看到從2003年到現(xiàn)在,他已做了17年的基礎(chǔ)軟件研發(fā)。

在他看來,國產(chǎn)基礎(chǔ)軟件現(xiàn)在發(fā)展到了什么階段?他說到,比如數(shù)據(jù)庫領(lǐng)域,中國也有幾家典型的數(shù)據(jù)庫廠商,但他們和網(wǎng)易提供的數(shù)據(jù)庫有一定的差異性,網(wǎng)易主要是提供云原生的數(shù)據(jù)庫,面向互聯(lián)網(wǎng)場(chǎng)景,而那些廠商因?yàn)闅v史比較長(zhǎng),做的是類似于Oracle這樣的數(shù)據(jù)庫。其實(shí),中國目前并沒有在基礎(chǔ)軟件方面做得很大的公司,這與一直以來,中國在技術(shù)軟件上長(zhǎng)期都是以國外廠商為主有關(guān),比如依賴Oracle提供的數(shù)據(jù)庫,IBM的中間件、SAP的ERP。他認(rèn)為,接下來的3年~5年可能是國產(chǎn)基礎(chǔ)軟件廠商發(fā)展的好時(shí)期,網(wǎng)易集團(tuán)今年也非常重視企業(yè)市場(chǎng),成立了一個(gè)全新的事業(yè)部叫數(shù)字產(chǎn)業(yè)事業(yè)部。

在2019年的一篇文章中,汪源曾經(jīng)回憶了自己人生中的幾次不后悔的重要抉擇,其中就包括2006年從浙江大學(xué)計(jì)算機(jī)專業(yè)畢業(yè)時(shí),靠著丁磊給杭州研究院畫的一張“大餅”,毅然加入網(wǎng)易這個(gè)允許他折騰新東西的地方。在這里,汪源和他的團(tuán)隊(duì)為中國的基礎(chǔ)軟件已經(jīng)奮斗了14年,未來,他表示希望還要再為中國基礎(chǔ)軟件奮斗19年,做到60歲!可以說,這句話是飽含著希望的,我們也期待著,19年后的中國基礎(chǔ)軟件領(lǐng)域,將會(huì)呈現(xiàn)出另一番風(fēng)貌。

THEEND

最新評(píng)論(評(píng)論僅代表用戶觀點(diǎn))

更多
暫無評(píng)論