即時滿足有多快?對於大多數軟件用戶來說,研究表明 0.1 秒或更短的延遲是 被認為是瞬時的。某一秒,用戶的思緒開始走神。如果應用程序沒有響應 五六秒,用戶可能會感到沮喪或完全停止使用該應用程序。大多數時候,存儲基礎設施是這些延遲的罪魁禍首,這會導致最終用戶體驗不佳並對業務產生其他負面影響。
但組織數據存儲基礎設施中的多種不同因素可能會導致等待時間過長。存儲行業常常關注每秒輸入/輸出操作數 (IOPS) 或吞吐量 (MB/s),而不是延遲,而延遲才是最重要的指標。
什麼是存儲延遲?
存儲延遲是指存儲設備發送並響應讀或寫請求所需的時間。具體來說,存儲延遲是讀取或寫入命令在整個存儲生態系統中移動(從應用程序請求到最終輸出)所需的時間。該指標受到生態系統所有四個組成部分的影響:
-
-
- 閃存
- 存儲固件
- 為固件供電的 SSD 控制器
- 存儲系統基礎設施
-
延遲考慮了存儲固件的效率以及它利用 CPU 資源處理輸入/輸出請求的速度。
就像計算中的大多數事情一樣,越快越好。請求遍歷存儲系統所需的時間越少,延遲就越低,請求處理的速度就越快。延遲是評估計算工作負載性能時應考慮的最重要因素之一,尤其是那些事務繁重的計算工作負載。
為什麼存儲延遲如此重要?
一個 福布斯文章 用一個有趣的類比來解釋為什麼延遲在存儲中如此重要:
“你上下班時主要在高速公路上開車。高速公路具有一定的特徵,如車道數量,類似於帶寬,以及一定的每小時汽車總數,類似於IOPS。問題是,即使你知道這兩個價值觀,你也無法回答最重要的問題:上班需要多長時間?”
它接著說,延遲是最終的衡量標準,即開始工作所需的時間。當您計劃通勤時,這才是真正重要的,雖然高速公路的數量和每小時汽車的容量會影響出行時間,但實際花費的時間才是效率的真正衡量標準。
當延遲較低時,計算系統的總體空閒時間就會減少。資源利用更加高效,組織實際上可以從現有存儲中獲得更多價值。
閃存在某些方面改善了延遲
當硬盤驅動器 (HDD) 作為首選存儲介質時,延遲時間下降到毫秒(千分之一秒)範圍內。與今天的 NAND 閃存固態硬盤 (SSD)但是,我們現在以微秒(百萬分之一秒)為單位測量延遲。這是一個相當大的改進,但您可能會驚訝地發現延遲有時會達到峰值 10 倍。
雖然隨著 NAND 閃存技術的發展,閃存介質提高了吞吐量並減少了延遲,但它根本沒有影響其他存儲系統組件的延遲。 SSD 供應商可以通過改善存儲系統其他級別的延遲來使自己脫穎而出。
例如,SSD 控制器在增加或減少延遲方面發揮著非常重要的作用。它是協調通過系統發送讀取或寫入請求的整個過程的組件。無論閃存介質有多快,如果控制器無法快速發送或接收數據,延遲仍然會很高。此外,輸入/輸出 (I/O) 操作請求可能會被分配給已經在處理 I/O 操作的閃存芯片,並因此排隊。
SSD 可能具有較高延遲的其他原因包括:
-
-
- 磨損均衡——磨損均衡機制有兩種類型:動態和靜態。靜態磨損均衡定期移動很少訪問的靜態/冷塊,以便低使用率單元能夠被其他數據使用。雖然這種技術可以延長設備的使用壽命,但複雜的後台進程涉及多個移動靜態數據的操作,這將導致延遲並影響 SSD 的性能。
- 垃圾收集(GC)——GC是存儲系統中長尾延遲問題的主要原因之一。 GC 導致的長尾延遲比第 99 個百分位數的平均延遲高 100 倍以上。在這個幕後過程中,SSD 控制器會識別塊中的陳舊數據頁,並在將這些塊上的所有有用數據移到其他地方後將其擦除。這會減慢 SSD 的速度並增加延遲。
- 介質掃描 – SSD 控制器有時會在後台運行介質掃描,以主動查找並修復介質錯誤,避免介質錯誤在讀/寫操作期間造成真正的問題。這可能會導致 SSD 延遲增加。
-
群聯如何解決存儲延遲問題
作為業界領先的PCIe NVMe SSD控制器和SSD模組供應商之一, 群聯科技大力投入研發——不僅要開發明天的技術解決方案,還要改進現有的解決方案。
Phison 幫助減少 SSD 解決方案延遲的一些方法包括:
-
-
- 優化的固件設計——群聯可以根據不同的使用案例和客戶需求定制固件。例如,某些固件操作可以設計為在空閒時間執行,以避免增加延遲。可以利用群聯的內部技術來優化服務質量,以滿足獨特的企業需求。在大多數情況下,群聯可以根據特定需求和指定的延遲性能(包括超低延遲)設計定制SSD控制器和模塊。
- 專有的 CoXProcessor 2.0 – 該協處理器包括一個硬件加速器,可以減輕部分原始 CPU 的負載,有助於提高存儲設備發出讀/寫命令的效率。
- 雙 CPU 設置 – 每個 CPU 在單個 SSD 中獨立執行,驅動器可以同時處理多個讀/寫命令。不同的操作可以並行處理,從而減少延遲。
- 垃圾收集固件 – Phison SSD 將垃圾收集負載分成小塊並一點一點地處理它們,以幫助減少延遲並提高一致性。
-