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

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

作者 | 陳利鑫

頭圖 | CSDN 下載自東方 IC

出品 | CSDN(ID:CSDNnews)

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

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

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

首先,我們來從網易數帆新發(fā)布的產品,來一窺其現在擁有能力的實力水平。

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

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

目前,該項目已在GitHub開源,地址為:opencurve.github.io

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

汪源介紹到,Curve主要具有三大設計特點:高性能、高可用和自治。

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

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

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

Curve和Ceph L版本的測試數據對比顯示,在單卷的場景下,核心的4K隨機讀/寫的IOPS性能,Curve分別是Ceph的1.84倍和1.58倍,同時延遲相比Ceph分別降低48.39%和37.50%。

圖:Curve與Ceph性能測試對比

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

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

此外,在自治方面,Curve實現了一鍵部署、一鍵升級,運維只要很少的人工干預,并基于bvar、Promethues和Grafana等開源技術打造了全面的度量標準和告警體系。

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

6大云原生相關產品,構建云原生生態(tài)

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

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

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

比如此次網易數帆推出的Curve存儲系統(tǒng),實際上與實現云原生操作系統(tǒng)是緊密相關的。因為云原生操作系統(tǒng)的概念主要是計算資源的統(tǒng)一調度,為了實現計算資源的統(tǒng)一調度,所有的應用軟件、中間件,包括數據庫等,都應該做到計算和存儲分離,這就需要有一個高性能的存儲系統(tǒng)來支撐,使得計算存儲分離了之后還能保持高性能。所以,網易推出Curve這個開源的高性能分布式存儲系統(tǒng),對于網易數帆云原生操作系統(tǒng),也是一個非常關鍵的步驟。

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

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

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

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

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

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

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

汪源:會再為基礎軟件貢獻19年!

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

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

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

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

THEEND

最新評論(評論僅代表用戶觀點)

更多
暫無評論