這部分資料引用自《SPC BENCHMARK 1/ENERGY? EXTENSION (SPC-1/E?) OFFICIAL SPECIFICATION》。SPC-1的工作負載由3個ASU(應用存儲單元)組成,分別為Data Store、User Store和Log/Sequential Write(日志/順序?qū)???梢娬嬲暙I隨機IOPS性能的是前兩者,也就不難理解有成績較高的系統(tǒng)ASU-3只用了少量機械硬盤。
在每個ASU上又運行數(shù)量不等的I/O Stream,根據(jù)下表拿ASU-2的參數(shù)類型和值舉例進一步分析。
由于是評估SSD壽命,這里我們只需要關注寫IOPS,并由此計算出每秒寫入數(shù)據(jù)量。
(1967+15797+11814+1416+5509)*4 + 31608*14.4
=601167.2 KB/s ≈ 587 MB/s
如果長期保持這種寫入壓力,陣列每天總寫入量達到48TB,按照測試配置6個SSD平均寫入約為16TB。這里考慮了RAID 1鏡像的寫懲罰為2,如果RAID 5或者RAID 6,此處計算最差的隨機寫懲罰應分別按照2和3來計算,而不是通常的4和6,因為我們討論的是寫入壽命,由RAID而引發(fā)的讀I/O在這里不用考慮。
參考資料:戴爾技術文檔《Briefing on how to leverage DPACK’s Average Daily Writes value to calculate SSD durability》
折算下來,每個480GB SSD每天寫入達到36遍(也就是DWPD=36)——畢竟SPC-1的目的是為了測性能。我們設想一下,如果換成DWPD=10的1600GB混合用途或者寫密集型SSD,配置12個(保持RAID 1)大約可以堅持9年的閃存壽命(或者24個800GB也是如此),只是更換SSD之后SPC-1測試成績很可能會有提高。
同時有必要指出,真正的生產(chǎn)存儲7×24常年平均IOPS能超過11萬,寫入達到587 MB/s的比例有多大?確實有金融交易系統(tǒng)結算批處理的日志生成量達到上GB/s,而那種級別的應用通常會選擇EMC VMAX、XtremIO等高端陣列,對應的SSD數(shù)量也會更多。作為一款中端存儲戴爾SC4020性能上已經(jīng)不弱,那么它支撐的應用負載通常是多大呢?
Dell Storage SC4020
典型OLTP環(huán)境:讀寫混合20,000平均IOPS
我們再假設另外一種情況,按照典型的OLTP工作負載,模擬Oracle 8KB I/O大小,如果某存儲系統(tǒng)在讀/寫比例80% / 20%情況下年平均IOPS——20,000(峰值可能要高得多),可以計算出每天寫入量約為2.7TB,折合6個480GB SSD每天大約寫入2遍。
如此則SC4020跑SPC-1測試的配置即可滿足5年生命周期,即使換成DWPD=1的讀密集型SSD,增加單盤容量或者數(shù)量也可以輕松應付,例如:使用1.92TB SSD。接下來要考慮的就是數(shù)據(jù)量(包括當前數(shù)據(jù)量和增量),還有混合負載的情況。
數(shù)據(jù)量這個計算起來比較簡單,6個480GB SSD只是一個起步配置,容量增加的同時閃存壽命(可寫入量)也會成正比提高;對于混合負載,一臺陣列同時跑OLTP和其它業(yè)務(比如VDI)該怎么規(guī)劃呢?如果要求較高的服務質(zhì)量,我們建議將不同業(yè)務跑在由不同SSD組成的多個RAID存儲池中,一旦峰值I/O壓力超出陣列控制器的處理能力,則可以考慮換成更高端的型號,比如SC9000等。
輕松獲得當前系統(tǒng)及應用目標的寫入量
在理清了由存儲寫入IOPS/容量來計算SSD配置的方法之后,還剩下一個問題——如何獲得應用負載需要達到的寫入量?
除了性能數(shù)據(jù),DPACK還能報告當前數(shù)據(jù)總量和每天的寫入量,幫助用戶評估存儲容量的增長目標。