穩定的高效能才有價值,PBlaze5針對讀請求QoS優化

memblaze_2011發表於2017-07-19

PBlaze5 PCIe NVMe SSD的新品釋出會上,Memblaze對PBlaze5針對讀操作而優化的特性。在現實網際網路應用裡,有大量查詢瀏覽操作,更新和新增操作比較少,或著存在批量新增操作。這些前端任務分發到具體業務執行應用上,從應用所在伺服器儲存層面觀察,體現為穩定的讀操作和偶然出現的寫操作。如果讀執行緩慢,導致前端使用者要等待較長的時間,使用者的體驗會很差。

在SSD面臨突發高讀寫操作壓力時,若韌體處理不夠友好,會發生讀操作被寫操作阻塞的情況,比較常見的現象是讀操作的IOPS迅速減少70%以上。在此情況下,PBlaze5通過對讀寫擦請求排序並優化排程機制保障Flash通道QoS,使用者對於讀延遲非常敏感,優先順序也最高,而寫多為非同步寫,優先順序低於讀,擦除耗時長且為後臺操作,優先順序排在末位,這樣的優先順序機制在保障各類請求被及時處理的同時提高使用者體驗。


資訊流排程過程

除上述基於IO型別的優先順序排程機制之外,PBlaze5通過優先順序佇列管理機制進一步降低讀延時。Flash通道多核前端實現輸入訊息優先順序隊組,其中輸入佇列組包含一個低優先順序佇列和高優先順序佇列,在通道多核後端實現輸出佇列。


引入優先順序佇列管理機制的排程過程

輸入佇列組遵循先入先出(FIFO)順序,但是高優先順序佇列中的指令可以最先被抓取並向輸出佇列傳送,然後向NAND介質中的Die佇列上分發。經過排程過程的優先順序排序後,如果有新的讀請求下發,會被插入高優先順序佇列中獲得優先處理權。

PBlaze5釋出會上展示了相同測試環境下PBlaze5與另一同型別PCIe SSD的測試對比。


兩產品產品做sysbench oltp混合update 操作,並將最終測試結果進行比較。


從讀操作的IOPS和 sysbench 的TPS值看,在寫壓力突增時,兩者寫頻寬相近,但是PBlaze 5的TPS曲線更加平緩,這一成績證實了PBlaze5韌體對於OLTP優化的效果。


讀延遲則效果更為明顯,從上圖可以看到,在寫壓力突增時,常見的PCIe SSD讀延時瞬間增大到0.5ms,而PBlaze5則維持在0.2ms以下,並且在寫壓力降低後恢復。

PBlaze5在效能和可靠性上到達了一個新的高度,並且針對主流的應用場景做了深度優化,這裡提到的對讀操作的優化就是一個典型案例。

相關文章