SNIA固態存儲技術小組主席Eden Kim(右一)和Trust-tek公司技術支持經理蔣伸億

2018年12月12日,在中國存儲與數據峰會,存儲開發者論壇上,SNIA固態存儲技術小組主席Eden Kim和Trust-tek公司技術支持經理蔣伸億一起為大家帶來《性能對比-真實世界工作負載vs實驗室綜合工作負載》。

以下為演講實錄:

存儲系統遭遇到很大的壓力時,會出現擁堵問題,不管是云計算應用還是云部署到設備上的應用,終端硬件本身的性能壓力。因此前幾位演講人他們講了很多的方法,通過很多的算法和架構的改變,軟件的不同部署,來去解決這個網絡擁堵的問題。

但我們介紹的主題是回歸到基本原理,他們在解決擁堵問題的時候,最基本的出發點就是存儲數據量的移動,它的真實負載到底是怎么樣的,它的塊大小和隊列深度都是實時在變化的,所以如果能先從基本方向去了解它的工作負載內容,對后續解決擁堵的問題,肯定是更有效率的,因此我們今天會針對如何去分析真實世界工作負載,與實驗室負載有什么樣性能的差異向大家分享我們研究的結果。

第一個重點是所有現在的數據中心或云存儲的性能,他跟真實的工作負載具有很大的相關性,這些所有的系統架構上為了要優化和設計階段再驗證的階段需要考慮真實負載對系統的影響,以及對它未來采購SSD,如果得到性價比最高的SSD,應用在各種不同的應用服務上是很重要的事情。

所有的這些真實世界工作負載都可以在不同服務器上抓取,這些負載會按照不同硬件配置有不同的行為,所以性能測試真的跟真實負載有很直接的關系,現在最重要的就是真實工作負載會對你的系統造成很大的性能缺陷。

因此透過所有的真實工作負載,我們可以去了解,在長時間提供服務的整體情況下,你的實時負載變化,你可以透過這樣的工作負載的內容去做一些東西,比如雙十一的時候,可能流量會很大,如果去分解流量,或者說過年過節的時候,很多網絡擁堵的問題,如何去解決?

另外進行軟件的優化或者互聯的測試,甚至對于一些實際遭遇的狀況,我們都可以透過真實工作負載找到它的蛛絲馬跡,來進行錯誤事項分析,最后可能對于服務器或者存儲設備的合格驗證也會用負載當做一個基礎,通過這個基礎來考驗存儲本身的性能。

這是一張很大的架構圖,現在存儲系統架構中,云的一些應用程序、進程、存儲架構可能走不通的界面,像是fabric,或者是ethenet或者是infinband,所有的數據你可以想象終端用戶在網頁挑選的任何一個按紐,這個讀寫的請求經過以太網進入到云服務里,如何進入到本地,網絡擁堵就是同時有太多人在本地敲下了讀寫的需求。

所以這個時候流量會非常大,這些流量可能在不同的時間點,在架構里每一個不同的硬件架構或者軟件的開發層上都有不同的負載行為,所以我們的工具要能夠去在不同的內容,按照每一個不同的系統開發商提供的不同解決方案,在不同的內容抓取它的負載,透過真實的工作負載,就可以對這一個擁堵問題去提供一些好的解決方案,甚至是設計一些很好的算法,來解決這些問題。

我們來看看真實的負載和隨機生成的負載有多大的差距。

這是一家零售商網站的服務器,下面是一個windows系統,我們在IO上看它負載,可以看到它跟我們實驗室的負載不一樣,這個用的是不同系統,真正所有的主要特性在這里貢獻了6%的IO行為。在24小時的負載里面,所有的IO在不斷的變化,在凌晨的時間有一個備份動作,所以有一個很高的IO出來,其余的部分你可以想象在這個不同的離散時間點里面,有很多不同的用戶登陸服務器做讀寫訪問,所以通過IO我們可以理解真實負載跟實驗室負載有很大的差別,我們不能單純的在意4K或者64K和大流量148K做性能和流量的檢測。

另一個,我們也做了另一個真實負載測試,這是一個GPS定位系統,在這個案例里,我們有9個IO流,這9個貢獻了86%的IO,在24小時里,QD的深度變化是在9到368,這個真實負載跟剛剛前面看到的負載變異性比較大,它的IOPS或者深度放的比較大,這個級別是比較平緩的,所以你會感覺到很強烈,在不同的系統不同的應用中負載長的完全不一樣。

工作負載的IO可以給我們很多的信息,以這個圖表來看,它可以給你這些進程任何一個時間的IOPS和IO的總量和TRIMs,現在負載做TRIMs存儲抹除的動作,會有很大的影響,會造成流量上的使用,這個使用會導致正常業務的一些IO在這個時間點的時延會增加,所以在這邊抹除存儲空間的時候,會有很大的吞吐量,但是相對來講TRIM最大的時延會有14秒,所以可能會造成很大的影響,所以對負載應用很關心這樣的行為,所以通過負載和IOmap地圖可以獲得很多在真正影響性能上的指標,通過這些指標可以提供更多的想法,讓設計驗證或者優化都可以有很好的一些主意和方向去做這些事情解決問題。

所以后面我們針對一些負載來對兩個指標,一個IOPS,一個是時延,通過不同的測試,比如PM(持久性內存)或者NVMe,我們用真實的負載和綜合負載,以及透過加壓的方式,去提高深度來看看每一種不同的存儲介質在面對不同的負載情況下,它的性能之間是不是有很大的差異,是不是我們想象的好的盤不管怎么樣都有很好的性能,壞的盤會不會是性能不好,這個部分我們請Eden Kim介紹一下。

在柱狀圖中,黃色代表隨機負載,它的塊大小是8K,讀寫比例是讀65寫35,藍色是我們真實世界剛剛看到的塊IO,我們在不同兩個條件下來看它的表現。各位可能對這個結果感興趣,因為大家負責的工作就是設計,我們針對的測試對象是NVMe,還有AIC卡的,也有U.2的接口,還有M.2接口,我們有三個不同的顏色,黃色是合成的負載,第二部分真實負載,第三個是我們對真實的負載進行加壓以后,加壓隊列深度五十倍以后看到的結果,不同的盤里面,藍色的部分都可以提高很多,第一個AIC即使加壓了,它的IOP還不是很高,所以你可以通過這樣的測試得到很有效率的結果。

從NVMe角度來講,我們的測試主要呈現支持負載里面,因為負載本身它的壓力是比較輕的,所以我們現在透過QoS增加,看看平均的時延和QoS和IOPS的反應,IPOS隨著加壓可以呈現線性的增加,在時延QoS也是合理性的增加,這個盤可以讓設計者很理解我的盤面對真實負載,所有的表現都符合,不管壓力加大與否我可以有很好的穩定輸出表現。

你可以看到在負載的情況下,它的性能是第一名,然后是ABC,分別是2,3,4名,當我們應用的是真實世界負載以后,你會看到這個排序是改變的,排序的表現已經不一樣了。你也可以通過某種方式來看時延和QoS表現,加壓在五倍的時候可以線性增加,但是加壓五到十倍,因為可能達到的性能上的飽和,所以它的IOPS降下來了,但是它的擴展性也增加了,是一個很大的瓶頸點。

最后我們簡單的總結一下,真實世界負載,不管在數據中心還是云存儲的性能,在設計或者驗證上都是很關鍵的,通過IO流和壓力的變化,是對存儲系統來講有很大的相關性,通過真實世界負載來看看性能表現是很重要的,服務器或者在軟件的層面,在存儲和軟件都應該通過真實世界負載合作,來配合做一些優化,大家如果感興趣負載,可以看這個免費工具——www.TestMyWorkload.com來測試一下你的系統工作負載。

未經允許不得轉載:存儲在線-存儲專業媒體 » 性能大比拼-真實世界工作負載vs實驗室綜合工作負載
分享到

崔歡歡

相關推薦

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