大家下午好,今天非常有幸和大家分享面向數據中心的分布式存儲系統相關的一些進展,這次我的題目是與性能相關,圍繞數據中心的存儲,今天就講一個話題,就是性能。

講這個話題之前,首先講一個背景,我們阿里云整個系統有一個天基的操作系統,這樣一個操作系統里面有很多模塊,做云計算設計的時候,不是針對每個業務場景做系統設計,而是面向很多業務,整個計算平臺是層次化、結構非常清晰的。盤古(Pangu),我們叫做分布式的存儲系統,盤古之上還有很多的存儲業務,這種存儲業務可以在阿里云的官網上看到,比如很多人談到的塊存儲,文件存儲和對象存儲,還有我們今年剛剛推出的面向大數據計算的一個接口,就是技術兼容的接口,但是這些系統都離不開盤古,都在盤古里面。

盤古這個系統經過了超過十年,今年是第十一年的技術演進,2008年開始,阿里云剛剛成立的那一刻,第一行代碼就是盤古代碼。2008年盤古開始寫下第一行代碼,到2009年的時候發布了盤古1.0,那個時候存儲主要介質是磁盤,這個磁盤存儲基礎上,如何去構建分布式存儲,是那個時候非常重要的一個話題。所以在2009年盤古1.0推出之后,實際那個時候云計算沒有什么,應用非常少,那個時候應用主要是郵件系統,搜索為主,當時出現盤古1.0就是郵件系統和搜索相關的應用。

螞蟻金服剛剛創建的時候也是采用盤古1.0。到2013年的時候有非常重要的時間點,我們叫做5K,就是我們單臺支持的推廣達到了五千臺,這個規模很大。

如果采用開源的系統你達不到五千臺這樣的規模量產,盤古當時規模達到了五千臺,當時參加了國際上的一些測試,性能非常不錯,排名靠前。2015年單臺技術規模達到一萬臺,阿里云飛天園區,飛天也是從這個地方來的。

飛天園區里面有一個雕像,就是為了紀念2013年這個關鍵時間點。還有一個關鍵時間點就是2018年,發布了第二代系統,就是飛天系統2.0,其中有一個重要的子系統就是盤古2.0。因為2018年的時候,數據中心閃存是重要的方向,如果這個時代用盤古1.0支撐業務系統基本不可能,那個時候做盤古2.0,是2016、2017年開始,真正發布是2018年。為什么去年雙十一達到兩千多億的數字,實際背后就是盤古2.0。

我們看一下整個行業,整個存儲系統,這個實際上這幾個階段,我做存儲到今天有13年了,整個階段除了存儲大型機接觸比較少,其它幾個階段我都是經歷過的,從最小系統,實際反映出來我們存儲的系統,第一是硬件向軟件引進,第二是整個存儲系統慢慢變成云化,通用的硬件支撐存儲,下一步存儲系統如何發展呢?今天想跟大家重點分享的就是上面標出來的,云化之后到底面臨那些挑戰,我們具體要做那些事情呢?

我們看一下,數據中心,我們今天云計算的數據中心,云計算一共分成三大塊,計算、存儲、網絡,這三大塊都是采用虛擬化的方式,給用戶提供資源,講一講容易,但是實際上構建這樣的一個云計算平臺所遇到的挑戰,計算這一塊不僅僅是我們通用的X86、CPU在計算,還有很多平臺,并且計算虛擬化,今天不是傳統的軟件上提供這種計算資源的虛擬化,還有其它的很多硬件虛擬化相關的技術在這個里面做的,所以這一塊也是阿里云非常重要的,也是中間往前演進。

網絡虛擬化更不用提了,整個云計算離不開網絡,如何構建一張虛擬的網絡,并且相互之間是獨立的虛擬的網絡,采用資源的方式對外提供服務,所有離不開網絡。

還有存儲,存儲肯定是軟件定義,我想強調軟件定義不是一定要在我們現有的硬件基礎上,去做這種存儲系統就是軟件定義,就是規定非得在今天X86的平臺上做存儲軟件,我們面對數據中心存儲的時候,需要思考一個問題,因為應用場景發生變化,我們面對社群也發生變化,軟件和硬件的邊界發生了變化,我們未來通用硬件到底是什么?這個問題是需要回答的。我們要做的是在通用硬件的基礎上,去做我們的軟件定義存儲,這樣才能把整體的效能發揮到最大。

我們從整個系統,云計算系統或云存儲系統的角度分解一下,我們今天看到的幾個性能的平行點,第一個從虛擬機出來以后,我們今天在云計算里面看到的云上的計算結果,云上的計算,從第一個虛擬器出來之后,往往需要有一個前端的網絡,通過前端的網絡接入后端的存儲,后端的存儲有一個后端的網絡進行互聯。

這整個環節里面是比較抽象的,整個環節里面,有幾個重要的點,第一個就是我們前端的網絡,如果前端的網絡性能不行,我們整個計算到后端的時候,也就是說計算那個系統盤,或者計算資源里面那個數據盤,性能是沒有辦法得到突破的,因為沒有辦法突破,實際上在現在用戶使用的時候,甚至還會用本地的盤,就是我在虛擬器里面插幾個盤,做客戶端的存儲服務,這個是一個過渡的階段,為什么呢?就是因為我們后端的存儲能力,今天還不夠,沒有辦法滿足很多在極端場景下的性能需求,所以才會直接在虛擬器里面用物理盤的方式提供服務,這是一個過渡。很重要的原因我們前端網絡有很多平行點。

第二個是后端的SSD,實際也是我們今天遇到的一個非常重要的一個平行點,我這有一些數據可以跟大家分享的,今天我們數據中心的網絡,普遍的不大,最差的就是25G,我們實際上很多的網絡環境就是單機是100G,出口的網絡帶寬是100G,單機100G誰是我們的性能平行點,CPU不是,網絡也不是,而是SSD,是一個性能平衡點,為什么SSD做到百萬級的IOPS,為什么還不是平行點呢。這個后面會講。

我們回過頭看,基于NAND比以前的子卡性能高很多,但是這個有條件,單純從性能來講,性能確實高不少,這些性能對比來講,但是這些性能的對比,不是我們實際的應用場景,尤其不是我們云上的實際的運用場景,而是單純的物理硬件的測試結果,這個測試結果,實際對我們實際的云上的系統設置沒有參考價值的。唯一有參照價值就是隨機的東西,這個東西有一些參照價值,其它的參照價值基本沒有的。因為云上的那個特別是公共云上面的業務,你不知道它的開口是什么。

所以今天上午很多報告提到雙十一的事件,雙十一的流量,但是我今天跟大家說,雙十一對阿里巴巴來講這個流量不大,特別對于我們盤古來講,這個流量太小,今天真正的壓力在公共云上面,公共云上面那些流量壓力,才是我們造成很多故障的主要的原因。

所以我們壓力不是來自雙十一,雙十一是狂歡節。所以它的很多流量,電商的流量相對公共云還是非常小的。我想通過這個對比說,公共云的流量和業務的匹配性才是我們存儲系統設置的最重要的挑戰。

剛才講到那個SSD的性能,看起來很好,但是它也是有很多問題的,這里面實際講了一個問題,首先CPU上的問題,如果單純用我們傳統意義上的X86 CPU跑那個SSD性能,看怎么跑,如果采用內核的方式做,肯定是不夠的,作用發揮不出來,無論怎么優化,無論采用傳統的任何手段,都已經不行了。

所以這個地方,實際上就是一個很重要的趨勢就是用盤古上,今天分布式存儲系統,線上所有的都是用盤古的軟件,一下把SSD的性能發揮出來,這兩張圖不一樣,大家可以看一下。為什么會是這樣呢?我們SSD下一步如何演進呢,如果單純這個性能來講,我們SSD演進方向是性能越來越差。

這個實際是我們整個盤古2.0里面我們實際上前兩年做的非常重要的工作,把整個分布式存儲,特別單機運行,針對高性能存儲的引擎,全部替換。功能很強,盤古1.0都是基于內核構建,今天整個軟件都是基于用戶端做的,這個地方不僅僅是驅動,而是一套系統。當你把CPU管理起來,內存管理起來,文件系統管理起來,驅動硬件管理起來,自然而然,就是一個用戶的操作系統。用了這個我們整體的效果還是非常不錯,這是我們今天在線上進行大規模部署的原因。

下一步要進一步思考一個問題,我們SSD的性能,可以把CPU解放出來,可以把SSD的性能,從一定程度提高到一定程度,這個一定程度是什么,如何我們要評價一個SSD性能就是看隨機性帶寬,對于我們今天最好的SSD來講,帶寬在400到500兆B這樣一個量級。通過用戶帶寬也是在這個級別,我們要將這個性能提升到1個G到2個G的性能,這是我們下一步要重點考慮的。

具體看一下SSD內部的結構,這個實際是一個普適的SSD內部的結構圖,上面是軟件,下面是硬件,軟件的角度來講,分成兩大部分。一個是DATA  LAYOUT,這個也是我們正在做的工作,并且有了很多成果出來。下面是NAND FLASH,這個有不同場合,本身介質發展非???。這里面有一個標準ZNS,這個標準也是我們參與的標準,這個標準也是英特爾等廠商,包括阿里巴巴在內一塊聯合推的標準,這個標準實際上是說就是我們下一步存儲軟件棧和SSD如何深層次融合。

這個標準它的答案是什么呢,就是我們要打破原有的接口,需要提供類似于KV,但是不是KV的。這里面有幾個概念,FULL有一定的生命周期,這個標準現在正在制訂中。

如果采用這個ZNS對我們存儲系統來講,最大的價值是什么,這里面對打的價值就是QOS,提升SSD盤的能力,只有把SSD的盤的能力提上去之后才有空間更好的做QOS,如果我做QOS實際我會投入更多錢。要把QOS做好,首先第一步需要把SSD的能力或者說我們需要把硬件的能力進一步發揮出來。

接下來看一下網絡,分布式存儲的場景,尤其面向數據中心的存儲場景,這個網絡是非常重要的話題,今天的網絡我們可以看到實際在100G,但是受限,正常的硬件可以達到200G。這個網絡要分成兩方面看,第一個就是物理網絡的速度,第二個是上面該運行什么樣的協議,這個是非常重要的事情。通常來講,我們在整個行業里面,我們今天已經在線上或者說在業務里面,已經部署了。這些協議是我們今天已經得到規?;牟渴鸬?。

這個是簡單的RDMA系統,大家可以看一下。這里要講一下,我們那個RoCE  RDMA,系統達到一定程度以后,鏈路不允許通行了。這個也是規?;\用非常重要的障礙。

這張圖就是我們RoCE  RDMA的技術站,我們今年實際上阿里巴巴的網絡團隊在一個業界的學術會議發表了兩篇論文,是阿里巴巴網絡團隊做的,這個應該說也是阿里巴巴的首次,第一次在這樣一個平臺上做了兩篇,這個峰會今年8月份在北京召開,這個會議上去講下一代高性能的網絡協議,這個協議對外叫HPCC,就是這個東西,通過這個協議站點的優化,我們整體數據中心這個高性能網絡站就可以服務今天云存儲、云計算相關的應用場景。

講了這么多,我做一個總結,性能是云存儲里面臨的非常重要的問題,針對這樣的問題,我們需要思考幾個點,第一個是怎么樣把硬件的潛能充分發揮出來,不是硬件今天做這樣就是這樣,需要改變。需要面對特殊的應用場景重新定義,重新定義以后再次變成一個面向數據中心的通用的。

第二個云存儲云計算的場景里面,如何做更好的隔離等很多問題。第三點怎么保證做很好的IOPS,從QoS的角度考慮。這幾個點都需要考慮,思考這三個問題。

第二個點從SSD的角度,下一步如何去引進。這里面有一個標準,不一定是未來數據中心的標準。第三點就是我們的網絡如何發展,物理網絡、網絡的協議站如何發展。這樣才能把問題解決掉以后打造一個高性能,面向數據中心場景的完美的系統。

這是我今天的報告,謝謝大家。

未經允許不得轉載:存儲在線-存儲專業媒體 » 阿里吳忠杰:針對云計算的統一存儲引擎
分享到

崔歡歡

相關推薦

精品国产午夜肉伦伦影院,双性老师灌满浓jing上课h,天天做天天爱夜夜爽,攵女乱h边做边走