今天來簡單解讀榜首的含金量。
首先,SPC-1算是一個存儲系統(tǒng)“考試”,主要考察存儲設備在大量隨機數(shù)據(jù)請求下的性能,比如能處理多少數(shù)據(jù)(吞吐量),每秒能完成多少次讀寫(IOPS)。這些對企業(yè)級數(shù)據(jù)庫、郵件系統(tǒng)、在線交易等業(yè)務而言十分重要。
測試分三個階段,第一階段8小時的高強度耐力測試,F(xiàn)lashNexus要一直保持3000萬讀寫(IOPS)的高性能,不能掉速。
第二階段是坡度壓力測試,先從100%負載開始,逐步降低到10%負載,再逐漸升回100%負載。每個階段大概跑15分鐘。檢測系統(tǒng)在不同壓力下的穩(wěn)定性,看當業(yè)務量突然減少或增加時,它還能不能穩(wěn)定運行,也就是看時延的穩(wěn)定性。
曙光存儲的集中式全閃FlashNexus是超低的0.202ms。毫秒概念我們普通人理解就是很快,快到什么程度估計也沒人想過。我給大家想過了,日常生活中我們應該聽到過這樣幾個表示速度的名詞——剎那,瞬間,彈指。佛門用來劃分時間,其中二十剎那為一瞬,二十瞬為一彈指,一剎那是最短的時間,約為18毫秒,也就是說這個0.202毫秒延遲比“一剎那”還要快近90倍。
第三階段是可重復測試,就是讓存儲系統(tǒng)瞬間從休息狀態(tài)(10%負載),直接沖到極限(100%負載),再回到休息狀態(tài),多次反復。這個考驗系統(tǒng)在突發(fā)流量下的反應速度,比如確保我們在雙11買買買的時候不會宕機。
除此之外,還有一個極端情況下的可靠性測試,突然插拔電源之后重新開機看數(shù)據(jù)有沒有損壞?,F(xiàn)實中,比如銀行交易系統(tǒng)如果突然停電,數(shù)據(jù)必須保證不丟失。
SPC-1測試第一,也就是說用于曙光存儲系統(tǒng)適用于銀行、航空、互聯(lián)網(wǎng)、醫(yī)療等關鍵業(yè)務場景。比如時延,銀行的實時交易數(shù)據(jù)庫(RTDB) 需要存儲系統(tǒng)能快速處理交易數(shù)據(jù),否則轉賬可能會變慢甚至失敗。還有聯(lián)機事務處理(OLTP) 業(yè)務,比如電商、計費系統(tǒng),每天都有大量訂單數(shù)據(jù),存儲系統(tǒng)必須支持高并發(fā)訪問。
技術方面是怎么實現(xiàn)的?
簡單分享兩個我關注的FlashNexus采用的技術——NUMA(Non-Uniform Memory Access,非一致性內存訪問)技術,是一種多處理器系統(tǒng)的內存組織方式。
基于NUMA技術,單服務器的CPU核數(shù)、內存容量、設備規(guī)模都有了大幅提升;但CPU核/硬件跨NUMA訪問內存,帶寬低時延高,導致硬件性能不能隨規(guī)模而線性增長,甚至多NUMA總性能不及單NUMA性能。
NUMA親和,是實現(xiàn)硬件性能隨規(guī)模線性增長的基本方法,追求在本NUMA訪問內存,避免跨NUMA訪問內存。若CPU核、設備、內存之間僅限于NUMA內訪問,不同NUMA間分而自治,則硬件性能可線性增長。
FlashNexus中,物理上,將CPU核、內存、設備按NUMA劃分微控制器;邏輯上,將數(shù)據(jù)空間劃分邏輯子空間,并將邏輯子空間映射到微控制器。私有多路徑實現(xiàn)始發(fā)選路,直達數(shù)據(jù)歸屬微控制器,實現(xiàn)系統(tǒng)性能隨規(guī)模線性增長。
它的優(yōu)勢是處理器訪問本地內存的速度更快,擴展性更好,業(yè)務拓展之后直接加處理器和內存就好了,還有就是資源分配上不會有偏向性,這樣整體性能也得到了提高。
應用場景上,比如天氣預報,需要處理海量數(shù)據(jù),NUMA能讓數(shù)據(jù)處理更快。還可以提高數(shù)據(jù)庫查詢速度,讓數(shù)據(jù)讀取更高效。讓每個虛擬機都能高效運行,資源利用更合理,以此降低總功耗。當然這么多處理器和內存能管好也是技術活兒。
XIO是一種優(yōu)化數(shù)據(jù)傳輸技術,能給數(shù)據(jù)開設“快速通道”,把數(shù)據(jù)分成很多小塊,每塊都在自己的“通道”里快速傳輸,避免數(shù)據(jù)在忙亂的時候形成“交通”擁堵。
還有就是用NVMe和RDMA協(xié)議簡化流程,減少數(shù)據(jù)傳輸?shù)摹笆掷m(xù)”。采用“QP+輪詢”的機制,定時檢查各個隊列的狀態(tài)看有沒有問題及時解決,減少開銷,這樣也能提高系統(tǒng)的IOPS性能。
簡單理解就是在馮諾依曼體系中,計算和存儲是分開的,想要輸出結果,就要三步走——存儲,計算,還有兩者之間的通信,也就是數(shù)據(jù)搬運。而計算本身使用的功耗實際并不高,基本都花在了讀取上,讓存儲離得更近,讓協(xié)議更薄就是提速基本法,足以看出曙光存儲在很多細節(jié)上都花了心思。
AI時代下對存儲需求的判斷
從前,業(yè)務工作負載主要分兩種:一種是穩(wěn)態(tài)業(yè)務,就像跑馬拉松,數(shù)據(jù)量不大,變化慢,但需要快速響應;另一種是敏態(tài)業(yè)務,比如互聯(lián)網(wǎng)業(yè)務,就像短跑,數(shù)據(jù)量變化大,增長快,但對單次響應的要求沒那么高。
過去穩(wěn)態(tài)業(yè)務用集中式存儲,穩(wěn)定、低延遲;敏態(tài)業(yè)務用分布式存儲或云存儲,擴展性強。
現(xiàn)在AI時代來了,AI業(yè)務的訓練階段像敏態(tài)業(yè)務,數(shù)據(jù)量大,需要高吞吐和高IOPS結合;推理階段則相反,數(shù)據(jù)量小,對響應速度(IOPS)要求極高。這就要求一套存儲系統(tǒng)同時滿足穩(wěn)態(tài)和敏態(tài)的需求。
并且AI時代算力需求的暴增也得存儲設施做好配套工作,才能讓AI的投資回報更高。因此對性能的要求從“夠用就行”變成了“越快越好”。也是基于這樣的判斷,曙光存儲推出FlashNexus從極致性能和智能感知(AI性能調度和異常檢測的引擎)上適配AI時代。
當然,曙光存儲提供的32控,能管理400塊硬盤還不是最高配,其擴展還可以是64和128個控制器,在這種擴展能力下,每個控制器平均管理的硬盤不到100塊,當擴展到百控級別時,系統(tǒng)可實現(xiàn)億級IOPS的單集群性能輸出,能夠滿足人工智能、大數(shù)據(jù)分析和高性能計算等場景對海量數(shù)據(jù)處理和高并發(fā)I/O操作的需求。