北京2021年9月2日 /美通社/ -- 近期,浪潮信息首席架構師葉毓睿撰寫了一篇關于SPC-1基準性能測試的文章,深度解讀了為何說SPC-1是存儲界“奧林匹克”,以下為文章全文:
全球存儲性能委員會(SPC)是由世界級存儲供應商聯(lián)合組成的一個非盈利機構,是一個專注于存儲行業(yè)供應商性能評測的中立機構。針對存儲行業(yè)的需求和關注,SPC創(chuàng)建了全球第一個存儲行業(yè)標準的性能標準。從組件級評估到完整的存儲系統(tǒng)測量,SPC提供了嚴格的、經(jīng)過審計的、可靠的和可重復驗證的性能度量。
SPC-1基準測試,設計了存儲系統(tǒng)在企業(yè)關鍵業(yè)務應用場景下的負載模型,覆蓋結構化數(shù)據(jù)為主的數(shù)據(jù)庫、電子郵件等在線事務處理(OLTP)應用,其IO模式特征包括讀寫響應時間敏感度、工作負載的多樣性及動態(tài)變化、性能表現(xiàn)長時間穩(wěn)定可靠等共計8種數(shù)據(jù)訪問行為的模擬。
每個測試的存儲型號對應的SPC-1報告都包含兩個版本:Executive Summary(英文縮寫為ES,也即精簡版)和Full Disclosure Report(英文縮寫為FDR,也即完整版),完整版包括了詳細的測試環(huán)境、定義、流程、數(shù)據(jù)表等信息。另外,為了體現(xiàn)公正性和可驗證的特點,SPC官網(wǎng)還提供了報告的支持文件,也即SF,Supporting Files(英文縮寫為SF,也即支持文件)是一個ZIP壓縮包,包括了腳本(如WORKLOAD GENERATOR,工作負載生成器)、配置文件,以及在測量過程中所取得的結果(如摘要、電子表格等)。
SPC-1要求非常嚴格,為了更接近用戶真實使用情況,全球存儲性能委員會在許多細節(jié)上做出了限制。例如,在開始評估性能之前,存儲系統(tǒng)要進行長達8個小時持續(xù)寫入的穩(wěn)定性測試(簡稱長穩(wěn)測試,也即SUSTAIN TEST),避免存儲陣列的緩存命中,或全閃存陣列初次寫入,導致性能虛高。
為了進一步詳細了解這一優(yōu)異性能背后的含義,下面我們會從可靠性、穩(wěn)定性、性能、成本等方面進行剖析。并結合榜單上其他數(shù)據(jù)進行對比分析。
剖析SPC-1組成部分
此次測試采用的是SPC-1較新的版本v3.10,從SPC官方網(wǎng)頁
http://www.spcresults.org/specifications#spc-1
可以下載到2021年1月1日啟用的這個版本的詳細介紹,有105頁。和上次浪潮存儲16控登頂(2020年3月),AS5600G2的752萬IOPS采用的v3.10相比,變化不大。
不過,在2020年5月8日,SPC啟動了一個The SPC-1? Gold Star計劃,詳見
https://www.storageperformance.org/goldstar
Gold Star計劃推動五項新擴展,新的基準擴展提供了對存儲系統(tǒng)支持現(xiàn)代企業(yè)數(shù)據(jù)可管性的關鍵能力的真實評估:
1)數(shù)據(jù)縮減 Data Reduction
2)快照管理 Snapshot Management
3)數(shù)據(jù)復制 Data Replication
4)無縫加密 Seamless Encryption
5)無中斷軟件升級 Non-Disruptive Software Upgrade
以無中斷軟件升級(Non-Disruptive Software Upgrade)為例:無論是計劃內(nèi)的,還是計劃外的,企業(yè)級存儲陣列長期以來一直在努力減少停機時間。任何真正尋求盡量減少停機時間的陣列的一個關鍵特性,都是能夠在保持數(shù)據(jù)訪問的同時,升級陣列上的軟件。這種擴展需要在中等負載下進行成功地、無中斷地升級。
為了突出顯示其SPC-1性能指標和執(zhí)行所需全面擴展的額外任務能力,如果測試廠商通過了這些新擴展的基準測試,SPC允許用SPC-1 Gold Star Logo(也即金星標志)來公布測試報告。
也就是可以將上圖的左上角替換成上面帶有金黃色弧圈的金星標志 。
下面詳細剖析SPC-1規(guī)范中對可靠性、性能、可用性和成本價格等多個維度的評估標準。
其一,可靠性。
在整個測試過程中,多個階段都會檢驗數(shù)據(jù)的一致性。例如初始化階段、SPC度量階段(Primary Metrics Test Phases)、關電重啟再校驗數(shù)據(jù)的一致性,確保存儲能夠經(jīng)受高可靠性的嚴格測試。
SPC-1還要求合規(guī)的TSC能夠防止單點故障。并明確提出:任何存儲設備在TSC中的單點故障,都不要用戶干預,來恢復對基準數(shù)據(jù)庫的訪問;任何組件在TSC中的單點故障,都不要用戶干預,來恢復對基準數(shù)據(jù)庫的訪問。
備注:TSC指Tested Storage Configuration,用于測試的存儲的配置。
其二,IOPS。
SPC-1 IOPS是一個科學的、但又復雜的I/O模型的負載組合。參與廠商需要對自己的存儲有著深入的了解,先預估出比較合理的性能高峰值。然后再根據(jù)這個值,運行SPC-1的I/O模型,檢驗在延時、可靠性、擴展性等基準測試的約束下是否能夠符合要求。如果不符合,再去調(diào)整性能高峰值。
備注:在SPC規(guī)范里特別強調(diào),所有特殊的基準測試,也即用來改進測試結果,但如果不是普遍的、真實世界的性能實現(xiàn),都是禁止的。如果詳細剖析I/O模型,我們會發(fā)現(xiàn)其測試負載組合模擬了用戶的各種常用業(yè)務場景,因此是科學的、全面的。
如果預估值是2300萬IOPS,那么負載百分比(Load Percentage)為100的時候,壓測的性能就是按照2300萬IOPS準備的。例如下表的RAMPD_100、SUSTAIN、RAMPU_100、REPEAT_1_100、REPEAT_2_100。而RAMPD_10對應的Load Percentage是10,也就意味著這個Test Group的壓測按照10%,也即230萬IOPS準備。
浪潮存儲根據(jù)SPC Benchmark Official Specification,制作了一份簡單易懂的表格,如下圖。三個ASU的讀負載總和為39.44%,寫負載總和為60.56%,兩者之和為100% 。
三個ASU(Application Storage Units,業(yè)務應用存儲單元),分別提供45%、45%、10% 存儲空間比例,總和為100%。每個ASU有著不同的IO流,ASU 1是Data Store,例如它的第三類IO流(其實就是混合負載SMIX),也即上面表格中字段名為“IO塊大小”,對應的記錄為ASU1的第三行,它的IO塊大小不是固定的,從下表能看出,它是從8個block到128個block不同Transfer Size的組合,意味著IO塊大小是從4k到64k,根據(jù)下面轉(zhuǎn)載表格提供的Size大小及百分比,不難算出SMIX負載的平均IO大小為14.4KB。
不同ASU的不同IO流,都有著各自的流負載,并規(guī)定了讀寫比例。所有IO流(總共8種)的讀負載總和與寫負載總和之和為100% 。
下面再詳細列舉一下ASU 1的四類I/O數(shù)據(jù)流:
作為Data Store的ASU 1的IO讀較多、寫較少。其他ASU,如做為User Store的ASU 2的IO讀較少、寫較多;而作為Log/Sequential Write的ASU 3,是100%的寫。這樣,就能比較全面的覆蓋用戶各種常用業(yè)務場景。ASU 2和ASU 3的IO流細節(jié)依次如下:
其三,延時。延時方面的指標至少有三個。
一是平均延時,也即SPC-1 IOPS Response Time。一般各個IT廠商新聞類文章里提到的延時就是這個。例如2020年3月,浪潮存儲AS5600G2獲得752萬IOPS、0.472毫秒;以及2021年8月,浪潮高端全閃HF18000G5獲得2300萬IOPS、0.294毫秒(低于0.3ms)。
二是延時帶寬對比圖,也即Response Time vs. Throughput Graph。
坐標軸的橫軸是從RAMPD_10到RAMPD_100的6個IOPS取樣點,縱軸是平均響應時間,例如預估性能最高值是2300萬IOPS,取樣點則包括230萬IOPS(也即RAMPD_10)、1150萬(RAMPD_50)、1840萬(RAMPD_80)、2070萬(RAMPD_90)、2185萬(RAMPD_95)和2300萬IOPS(RAMPD_100),坐標軸的縱軸對應的延時毫秒值。
隨著測試負載的增加,如果平均延遲呈線性,或者緩慢增加,并未出現(xiàn)陡增的拐點,意味著存儲系統(tǒng)穩(wěn)定性和潛力較好。例如下圖,浪潮高端全閃HF18000G5的表現(xiàn)優(yōu)異。
三是總體響應時間,也即Overall Response Time。
SPC-1的總體響應時間的計算公式如下,它采用類似方差的方式,通過計算相鄰IOPS取樣點之間延時的差異,來評估總體延時的波動或偏離程度。如上圖黃色間斷線所示。
其四,穩(wěn)定性。
長穩(wěn)測試階段證明了連續(xù)測量期間,最大的可持續(xù)I/O請求至少需要8小時。其目的是,能夠容易為客戶、顧問或業(yè)內(nèi)廠商證明SPC-1 IOPS的結果,在需要長期I/O請求的業(yè)務系統(tǒng)環(huán)境中,能夠保持長期持續(xù)穩(wěn)定的性能。
此測試階段計算的I/O請求吞吐量必須在報告的SPC-1 IOPS 結果的5%以內(nèi)浮動。從OLTP類應用的需求考慮,延遲小于30毫秒才算通過;不過,大多數(shù)送測廠商會覺得超過2毫秒,甚至超過1毫秒就無法接受了。
長穩(wěn)測試階段可以約束報告的SPC-1 IOPS的結果(也即最大值)。長穩(wěn)測試階段必須在與RAMPD_100測試階段相同的負載水平上運行。
最后,成本。
成本方面的指標至少有兩個。
一方面是性能價格比。SPC-1 PRICE-PERFORMANCE,SPC-1總性價比的計算方式是使用系統(tǒng)總價格除以SPC-1 IOPS,有時衡量單位是$/SPC-1 KIOPS,表示每千個SPCI-1 IOPS的價格。
另一方面是容量價格比。SPC-1 ASU Price定義為總系統(tǒng)價格除以SPC-1 ASU的容量,衡量單位是$/GB。
浪潮高端全閃 SPC-1實際報告解讀
從https://spcresults.org/benchmarks/results/spc1-spc1e可以下載到各個廠商在不同時期的產(chǎn)品測試報告。我們選取幾個重要的報告和信息來進行解讀和比較,以浪潮高端全閃HF18000G5和其他排名靠前的廠商或產(chǎn)品為例。如下圖紅框內(nèi)所示,可單擊下載ES(精簡版,PDF格式)、FDR(完整版,PDF格式)和SF(支持文件,ZIP格式)。
第一,概覽。
在浪潮高端全閃HF18000G5的SPC-1精簡版報告《A32023_ES》這個PDF里,能看到幾乎所有的重要信息。其中包括2300萬(精確值是23001502)的SPC-1 IOPS;SPC-1性能方面的性價比為$375.56/SPC-1 KIOPS(遠好過于總榜第二名,第二名SPC-1 IOPS約為2100萬,該報告對應的文件是A32018_ES.pdf),容量價格比為$10.58/GB。
平均延時SPC-1 IOPS Response Time為0.294毫秒,總體響應時間SPC-1 Overview Response Time為0.246毫秒,整個系統(tǒng)設置為Protected 2,能防止單點故障;數(shù)據(jù)保護方式為RAID 10。
下載浪潮高端全閃HF18000G5的SPC-1完整版報告《A32023_FDR》,這個PDF,可以看到更多詳細信息。
根據(jù)SPC-1 IOPS以及ASU Capacity的配置,并結合SUSTAIN–Data Rate Graph圖表,我們還可以計算出來,在SPC開始統(tǒng)計性能之前,長達8小時的持續(xù)寫入(SUSTAIN 長穩(wěn)測試),使得整個浪潮高端全閃HF18000G5的ASU Capacity的空間,寫入超過20次以上,避免了性能的虛高。
第二,拓撲圖。
從下圖可以看出,浪潮高端存儲采用32個控制器,每個控制器部署10個16Gb FC前端端口,15個1.92TB NVMe SSD和3個375GB Optane SSD。
HF18000G5通過兩臺Inspur FS9620光纖交換機連接到62臺服務器(Inspur NF5280M5)。
第三,成本。
此次浪潮存儲的測試配置還包含了浪潮光纖導向器FS9620。在報告中,我們可以看到“Storage Configuration Pricing”一欄中,總價格包含了FS9620的價格,如下表:
然而,我們看到SPC-1網(wǎng)站中,有些廠商,沒有光纖交換連接的部件,如交換機FC Switch,或者導向器FC Direct的配置和報價??赡苁褂玫氖侵边B方式,因此拉低了系統(tǒng)的總體價格。但用戶需要清楚的是,實際部署這種高性能低延遲的中高端存儲,光纖交換連接的部件是不可或缺的。
每個送測的廠商,都必須在報告的“Storage Configuration Pricing”部分,給出詳細的組件、數(shù)量、價格和整個送測系統(tǒng)的總價。這樣才能確保是性價比,而非僅僅是最高峰性能的比較,這樣對最終用戶更有參考價值。
第四,穩(wěn)定性。
在第一部分“剖析SPC-1測試要素”中已經(jīng)提到:SPC-1 IOPS結果在5%以內(nèi)浮動,多數(shù)送測廠商會努力將延遲做到1毫秒以內(nèi)。
浪潮高端全閃HF18000G5在8個小時的長穩(wěn)測試中表現(xiàn)出色(詳見FDR中SUSTAIN – Response Time Graph圖表),非常平穩(wěn),近乎一條直線。如下圖,即使是在縱坐標軸非常狹窄的區(qū)域(0到0.6毫秒)的呈現(xiàn)中,波動幅度很小。
SPC-1性能榜單中某TOP 4的其他廠商在8個小時的長穩(wěn)測試中表現(xiàn)抖動。如下圖,測試開始20分鐘左右,突然陡增到約1.65毫秒,正因如此其FDR報告SUSTAIN – Response Time Graph圖表的縱坐標軸的區(qū)域不得不放寬到0到1.8毫秒。
浪潮存儲如何做到穩(wěn)定性,可以在2020-06-28發(fā)表的如下文章找到部分答案。
《登頂SPC-1,兼顧“性能”與“可靠”的雙料王者》
https://mp.weixin.qq.com/s/QA0ZK6ZMGS-gBFONocISsg
第五,延時。
高IOPS、高并發(fā),對存儲系統(tǒng)的延時是巨大的挑戰(zhàn)??梢钥闯黾词乖?300多萬這么高的IOPS下,浪潮高端全閃HF18000G5延時僅0.294毫秒。總體響應時間為0.246毫秒。這一成績比2020年3月,浪潮存儲AS5600G2全閃存的752萬IOPS、0.472毫秒延,有所改善。
小結:報告對比
通過比較才能看出更多信息。我們選取SPC-1中,最近三年內(nèi),也即從2018年到2021年,并且性能超過1000萬IOPS的存儲,我們發(fā)現(xiàn)僅剩下4個型號,包括浪潮存儲、富士通等,浪潮高端全閃HF18000G5在總IOPS、平均延時、總體響應時間、性能性價比(SPC-1 Price Performance)、單控IOPS、單盤IOPS等方面均排名第一。
總而言之,作為多控制器的高端存儲產(chǎn)品,浪潮高端全閃HF18000G5(32控),在SPC-1性能總榜中位列全球第一。
以下是索引和擴展閱讀:
1、 SPC-1?基準評測性能排名前10的產(chǎn)品報告
http://www.spcresults.org/benchmarks/results/top10/performance/spc1/3
2、SPC-1官方規(guī)范
http://www.spcresults.org/specifications#spc-1
作者:浪潮信息首席架構師葉毓睿