全HDD的OceanStor 5500 V3做了一次SPC-1測試 成績還不錯
當(dāng)時光進(jìn)入2015年,上面的這段話是否還讓人確信無疑?
不可否認(rèn),在過去的2、3年中,從存儲供應(yīng)商、企業(yè)用戶、科技媒體中傳出“SPC-1的測試結(jié)果意義已然消亡”或是“SPC-1測試的結(jié)果可參考性減弱”這樣的觀點不絕于耳——作為一款“久經(jīng)歷史”的SAN存儲系統(tǒng)IOPS性能基準(zhǔn)測試,SPC-1當(dāng)下的現(xiàn)實意義當(dāng)真如此么?
事實是,企業(yè)級存儲廠商參與SPC-1的熱情仍然維持在較高的水平,2013-2014年幾乎所有新上市的主流存儲廠商的系統(tǒng)都在SPC-1上做過測試;在企業(yè)用戶的采購標(biāo)準(zhǔn)文件中——特別是中國用戶——SPC-1結(jié)果仍然是一個重要的入門門檻。
這才是SPC-1當(dāng)今“江湖地位”的真實寫照,但這又是為什么呢?
為什么說“SPC-1仍然是最權(quán)威的基準(zhǔn)測試之一”?
作為一款測試SAN存儲系統(tǒng)IOPS性能的認(rèn)證,SPC-1主要針對隨機(jī)小IO快速響應(yīng)的應(yīng)用場景,用于度量SAN陣列在OLTP、Database和Email三種應(yīng)用下的性能表現(xiàn)。
正式的測試流程主要包括了metrics測試、repeat1測試、repeat2測試、persistence1測試及設(shè)備下電再上電后的persistence2測試這四個測試環(huán)節(jié),前三項測試主要考察存儲系統(tǒng)的性能和穩(wěn)定性,后兩項則主要測試設(shè)備下電再上電后的數(shù)據(jù)一致性與可靠性。
業(yè)界普遍關(guān)注的SPC-1測試結(jié)果主要是三個指標(biāo):SPC-1 IOPS (Maximum Throughput:每秒輸入輸出次數(shù)的***值)、SPC-1 ART(Average Response Time:平均響應(yīng)時間、SPC-1 Price-Performance($/ SPC-1 IOPS:每SPC-1 IOPS的價格)。
但我們有必要贅述的是,報告中還會提到Storage Total Capacity(存儲系統(tǒng)總?cè)萘?、Data Protection Level(數(shù)據(jù)保護(hù)級別,Mirror或者RAID5)這兩個指標(biāo),以明確告知用戶“在不同的系統(tǒng)總?cè)萘亢蚏AID級別下,IOPS和LRT的測試結(jié)果會存在偏差”。
因此,為了讓SPC-1基準(zhǔn)測試產(chǎn)生更大的影響力,也為了讓企業(yè)用戶盡可能的了解送測系統(tǒng)的真實設(shè)備和測試情況,SPC(Storage Performance Council)即存儲性能委員會選擇在SPC-1確立時就全部公開各個參與測試的存儲系統(tǒng)的詳盡測試報告。在這份報告中,既有系統(tǒng)配置、測試過程、SPC-1結(jié)果等內(nèi)容,也包括了測試過程中許多難以察覺的細(xì)微之處。
隨著時間的積累,SPC-1已經(jīng)成為SAN存儲測試領(lǐng)域的標(biāo)準(zhǔn),主流的存儲供應(yīng)商不免都要把自家的存儲系統(tǒng)放到上面跑一跑、測一測,這在極大充實了SPC-1基準(zhǔn)測試結(jié)果列表的同時,更讓這一測試擁有了可以橫向參考和對比的基礎(chǔ):即便企業(yè)用戶的業(yè)務(wù)負(fù)載相比SPC-1的測試模型更加復(fù)雜并略有特別,但在一個單一、統(tǒng)一的標(biāo)注測試體系下的橫向參考和對比,仍然具有重要的意義。
正是因為SPC-1基準(zhǔn)測試“既盡可能模擬了企業(yè)客戶所需要的實際應(yīng)用場景的業(yè)務(wù)負(fù)載需求,又建立了完備的報告和公開化的結(jié)果參照和考評體系,同時針對可能影響結(jié)果的多方面原因做出了一定的準(zhǔn)備”,所以,我們才會在文章開頭說“無論現(xiàn)實中有多少復(fù)雜的情況必須顧及,SPC-1基準(zhǔn)測試仍然是市場上評價SAN存儲IOPS性能的最權(quán)威標(biāo)準(zhǔn)測試之一”。
華為OceanStor 5500 V3參與SPC-1測試,圖啥?
今年1月,SPC委員會正式確認(rèn)了OceanStor 6800 V3(混合存儲系統(tǒng),SPC-1結(jié)果標(biāo)記為“HDD and SSD Storage Devices”)的SPC-1基準(zhǔn)測試結(jié)果為650,987.88 SPC-1 IOPS,這一成績對于混合陣列來說是非常不錯的。
OceanStor 6800 V3是華為2014年5月發(fā)布的華為OceanStor V3系列存儲系統(tǒng)中的高端存儲系列,在新的V3系列中,還包括有OceanStor 5300/5500/5600/5800 V3等中端存儲系統(tǒng),后者無論在性能、可擴(kuò)展性、容量上,都與前者有著一定的差距。
按照各大存儲供應(yīng)商的習(xí)慣,既然SPC-1是一個評價SAN存儲IOPS性能的基準(zhǔn)測試,那么進(jìn)行測試并公布結(jié)果的大部分都是高端存儲,畢竟,這樣一方面能夠得到較好的IOPS性能,另一方面,高IOPS(比如“突破百萬IOPS”這樣)的市場影響和宣傳效應(yīng)會更好,也更具有用戶吸引力。
但華為***進(jìn)行SPC-1基準(zhǔn)測試并提交結(jié)果的系統(tǒng),卻是V3系列中端存儲系統(tǒng)中的“中端”OceanStor 5500 V3,即便是在新系列的中端存儲系統(tǒng)中,理論上比OceanStor 5500 V3表現(xiàn)優(yōu)異的還有OceanStor 5600/5800 V3兩款產(chǎn)品。
華為存儲為什么會拿OceanStor 5500 V3這樣一款產(chǎn)品放在一個比拼“肌肉(IOPS)”的SPC-1基準(zhǔn)測試公開榜單中?
華為存儲給出的答案大致分為三點:***,無論是中國市場還是全球用戶,OceanStor 5500 V3所面向的中端存儲系統(tǒng)用戶,是最廣闊也是最普遍的,這一存儲系統(tǒng)的目標(biāo)用戶涵蓋了最為常見的用戶群體,所帶來的采購參考價值***;
第二,OceanStor 5500 V3 “10萬IOPS與7.82毫秒延時”的性能表現(xiàn),證明了其對前一代的產(chǎn)品,甚至華為存儲競爭友商的產(chǎn)品有著較強(qiáng)的競爭力和可替代性。
***一點,此次進(jìn)行測試的OceanStor 5500 V3,采用的是全HDD的配置,沒有采用SSD進(jìn)行加速或優(yōu)化,華為存儲也是希望借助這一機(jī)會,向業(yè)界及企業(yè)用戶證明其在存儲系統(tǒng)硬件、軟件及架構(gòu)設(shè)計上的深厚實力。
此外,談及為何測試全HDD配置的OceanStor 5500 V3,華為存儲方面表示:“對許多中型存儲系統(tǒng)用戶來說,容量和性能是并列***位的需求,既需要高IOPS、低延遲,也需要較大的存儲容量,同時資金有有一定限制,對于這些用戶來說,華為存儲希望讓他們了解到這并非是不可能的需求。”
“在計算虛擬化浪潮下,每個主機(jī)的CPU倍充分壓榨利用率帶來了其訪問存儲系統(tǒng)的性能饑渴,更多的主機(jī)要訪問一個共享的存儲資源池,也必然對存儲系統(tǒng)提出了更高性能的要求。”華為存儲產(chǎn)品線總裁范瑞琦在去年就曾表示,“SPC-1不僅對高端用戶,對中端存儲的目標(biāo)用戶來說,也有現(xiàn)實意義。”
總體來說,IOPS和延遲對多數(shù)用戶來說仍然具有普遍意義,而大容量也同時是他們的需求,通過大容量的HDD,提供高性能、低延遲的中端存儲系統(tǒng)也是華為存儲對企業(yè)用戶的一種需求認(rèn)知。就OceanStor 5500 V3來說,一款雙控、配置384塊10k轉(zhuǎn)速2.5寸SAS磁盤,提供不高于10ms延遲的10萬IOPS性能的產(chǎn)品,仍然具有一定的現(xiàn)實意義。
“10萬IOPS與7.82毫秒延時”的架構(gòu)“調(diào)優(yōu)”
這一次華為存儲OceanStor 5500 V3的SPC-1測試,硬件配置已經(jīng)處于行業(yè)前沿,基于英特爾x86架構(gòu)至強(qiáng)Ivy Bridge處理器的雙控陣列,PCIe 3.0內(nèi)部總線及12Gb SAS硬盤接口,每控制器48GB緩存, 384塊10k轉(zhuǎn)速 2.5寸SAS硬盤。
另外值得一提的是,OceanStor V3系列存儲系統(tǒng)支持16Gb FC、56Gb InfiniBand和10Gb FCoE接口,可以配置華為研發(fā)的獨立智能卡SmartIO(單接口卡多種協(xié)議)以及SmartACC卡(硬件加速,存儲CPU零損耗)。
但硬件配置的指標(biāo)卻并非與存儲系統(tǒng)的性能成絕對的同比關(guān)系,存儲系統(tǒng)的硬件系統(tǒng)架構(gòu)、軟件架構(gòu)以及核心算法和設(shè)計的優(yōu)化,是影響存儲系統(tǒng)性能(特別是低延時表現(xiàn)下取得高IOPS)的關(guān)鍵。
一、硬件架構(gòu)的優(yōu)化是全局基礎(chǔ)
以多控橫向擴(kuò)展架構(gòu)設(shè)計為基礎(chǔ)的OceanStor V3,從硬件系統(tǒng)架構(gòu)上來說,核心思路是多個控制器實現(xiàn)全局資源(指“可實現(xiàn)緩存、CPU、硬盤”)共享,讓“任一控制器資源能被其它控制器使用”;同時,通過讓LUN空間可以均衡打散到系統(tǒng)內(nèi)所有硬盤,讓控制器、硬盤在面對業(yè)務(wù)壓力負(fù)載時相對均衡;輔之以IP Scale-out的設(shè)計,保證“系統(tǒng)松耦合且全局資源無阻塞互聯(lián)”。
華為存儲的IP Scale-out基于iWARP協(xié)議,這是一種構(gòu)建在TCP上的RDMA協(xié)議,基于以太網(wǎng)協(xié)議基礎(chǔ)上優(yōu)化,通過采用RDMA(遠(yuǎn)程直接數(shù)據(jù)存取)技術(shù)優(yōu)化,解決了以太網(wǎng)延遲高的問題,同時降低了對CPU資源的侵占,“iWARP基于廣泛部署的TCP/IP協(xié)議運行同時,保留了TCP/IP所具有的路有能力和交付保障能力。”
在SPC-1基準(zhǔn)測試中,persistence1測試及設(shè)備下電再上電后的persistence2測試主要測試設(shè)備下電再上電后的數(shù)據(jù)一致性與可靠性,確保了存儲系統(tǒng)保證數(shù)據(jù)存儲的可用性與可靠性。
二、軟件架構(gòu)大幅提升整體表現(xiàn)
在OceanStor V3中采用的RAID 2.0+這一技術(shù)的核心,就是通過底層虛擬化把存儲空間被劃分成小粒度數(shù)據(jù)塊,基于數(shù)據(jù)塊來構(gòu)建RAID組,以數(shù)據(jù)塊為單元來進(jìn)行資源管理,這一方面避免了傳統(tǒng)RAID環(huán)境中硬盤工作壓力不均衡,導(dǎo)致熱點盤故障率較高,降低系統(tǒng)可靠性和可用性的問題,另一方面,大大減少了數(shù)據(jù)重構(gòu)需要的時間,降低了重構(gòu)期間發(fā)生硬盤故障的風(fēng)險,即使發(fā)生嚴(yán)重的事故,失效數(shù)據(jù)量與傳統(tǒng)RAID技術(shù)相比也更少。
以RAID 2.0+為核心的華為存儲底層虛擬化設(shè)計
RAID 2.0+在性能方面的一大好處在于,通過將數(shù)據(jù)更為均衡的分布在更多的硬盤上,能夠更好的利用單塊硬盤并不多的IOPS貢獻(xiàn),相同數(shù)據(jù)量下調(diào)動的硬盤比傳統(tǒng)RAID更多,自然可獲得的硬盤IOPS也就更多,這對于提高(或者說是壓榨)現(xiàn)有HDD的性能表現(xiàn)是有一定意義的。
Cache(緩存)的優(yōu)化是存儲系統(tǒng)性能提高的另一個關(guān)鍵,OceanStor V3的Cache優(yōu)化設(shè)計包括兩部分:Cache分層設(shè)計和Cache優(yōu)化算法。
Cache分層設(shè)計架構(gòu)圖
Cache分層設(shè)計包括主機(jī)應(yīng)用側(cè)和盤側(cè)(前后端)的Cache:一層Cache靠近主機(jī)應(yīng)用側(cè),用于緩存用戶熱點數(shù)據(jù)并感知應(yīng)用提供靈活的預(yù)取策略;二層Cache靠近盤側(cè),提供元數(shù)據(jù)和數(shù)據(jù)緩存,實現(xiàn)寫數(shù)據(jù)聚合及排序以保證高效的系統(tǒng)刷盤。同時,多時間點緩存的設(shè)計加速快照激活、回滾操作,保障了秒級RPO的實現(xiàn)。
在Cache分層設(shè)計之外,Cache優(yōu)化算法是確保Cache被高性能利用的另一項關(guān)鍵技術(shù),其中包括以“IO并發(fā)管理、IO調(diào)度管理和頁面配額管理”為主的資源控制算法;包括“順序流識別算法、智能預(yù)取算法和刷盤算法”的性能優(yōu)化算法。
這兩項算法的目標(biāo)很簡單,就是保證在面對IO需求時,資源被合理利用和快速找到(***):資源控制算法通過頁面配額、并發(fā)和CPU調(diào)度管控,降低性能波動,保證IO運行的均衡和平穩(wěn);性能優(yōu)化算法,提升讀IO的***率,減少寫IO的時延提升寫帶寬。
三、多核時代的算法與設(shè)計優(yōu)化
隨著企業(yè)級存儲系統(tǒng)逐步“x86化”,存儲系統(tǒng)控制器從單核走向雙核,又進(jìn)入四核、六核甚至更多核心的多核時代,又輔之以多線程、超線程設(shè)計,這使得存儲系統(tǒng)的算法和軟件設(shè)計,必須要考慮多核心處理器的利用率和性能問題;其次,以英特爾為代表的x86處理器目前正逐步加入更多的IO優(yōu)化技術(shù),比如處理器自帶內(nèi)存控制器和PCIe控制器;第三,處理器的緩存更大,制程工藝更好,流水線效率更高也是要面臨的問題。
存儲廠商們發(fā)現(xiàn),自己在基于英特爾x86架構(gòu)多核處理器的存儲系統(tǒng)設(shè)計時,面臨著任務(wù)調(diào)度均衡、程序并行度、CPU Cache失效等問題,這迫使架構(gòu)師們必須要降提升并行處理能力、硬件處理效率、內(nèi)存訪問效率等因素考慮在內(nèi)。
OceanStor V3自然也不例外。
“并行處理、負(fù)載均衡、高效內(nèi)存訪問”是OceanStor V3面向多核性能優(yōu)化的三大核心設(shè)計思路,其中包括:
·并行處理:免鎖(防止寫入鎖定問題),IO異步化,提升超線程效率
·負(fù)載均衡:線程負(fù)載均衡,中斷均衡,減少任務(wù)切換
·高效內(nèi)存訪問:消除核間偽共享,減少跨CPU訪問內(nèi)存,提升CPU緩存***
高性能IO調(diào)度則是算法優(yōu)化的另一個領(lǐng)域,華為存儲以自主設(shè)計的IO調(diào)度算法,取代OS線程調(diào)度器,提升了線程調(diào)度的專業(yè)性,具體來說包括:
1、減少線程間切換和搶占帶來的系統(tǒng)開銷;
2、高效的內(nèi)存訪問和核間的動態(tài)負(fù)載均衡;
3、保證命令及時調(diào)度,保證IO及時、公平調(diào)度。
高性能的IO調(diào)度是提高性能的關(guān)鍵點之一
即便是在這個SSD充斥著市場的時代,“10萬IOPS,10ms平均延遲”這一基準(zhǔn)測試結(jié)果已經(jīng)是HDD存儲系統(tǒng)中出類拔萃的結(jié)果,對于很多中端存儲系統(tǒng)的潛在用戶來說,另一只靴子“SPC-1 Price-Performance($/ SPC-1 IOPS:每SPC-1 IOPS的價格)”的落地,將是他們從潛在客戶轉(zhuǎn)為采購客戶的最終評判標(biāo)準(zhǔn)。
2月初,存儲性能委員會主席Walter E.Baker到華為存儲成都研究所,親自驗證了華為存儲OceanStor 5500 V3向委員會提交的SPC-1基準(zhǔn)測試結(jié)果,這也是SPC組織***在中國進(jìn)行實測,不難看出,SPC組織對于華為在亞洲影響力的看重。
額外的幾句題外話是,雖然OceanStor 5500 V3是以全HDD的配置進(jìn)行的SPC-1基準(zhǔn)測試,但這并不意味著在這個充斥著SSD的時代,OceanStor 5500 V3就落伍了,同樣,為了更好的利用閃存技術(shù),OceanStor 5500 V3也有一系列的相關(guān)優(yōu)化技術(shù)。也許過不了多久,我們就會看到OceanStor 5500 V3的HDD和SSD混合陣列版本的SPC-1測試結(jié)果。
不過,那就是另外一個話題了。