使用 Weka™ 的網路檔案系統的數百萬 IOPS
我們如何在資料中心分享現代 NVMe™ 磁碟的效能? 對於此問題,有許多相互競爭的答案,也有許多公司提供令人興奮的解決方案。
解決方案是否適合取決於所使用的應用程式的需要。在伺服器和應用程式間分享資料的最簡單方式是在遠端檔案系統中加載該資料。NFS 和 Windows SMB 等檔案型解決方案十分普及,因為它們易於使用,但並不以效能卓越而著稱。如果您需要遠端檔案系統儲存和超高效能,該怎麼辦? 許多高價值、檔案系統型的工作負載(如人工智慧訓練和推論)可以受益於高效能檔案儲存裝置。這正是 Weka™ 的用武之地。
我們在美光解決方案工程實驗室的團隊近期使用 Weka 完成了一項概念證明,以分享搭載 NVMe 的主流美光 7300 PRO SSD 集區。結果是一個檔案系統的速率達到數百萬 IOPS,想想就令人興奮。
測試組態
Weka 曾建立過一個高效能、平行、分享檔案系統,名為 WekaFS。據 Weka 表示,在生產環境中,一個部署通常以至少八個節點執行,但如使用者不需要為節點重組準備虛擬備用容量,則其部署可以以六個節點執行。
我們的測試在 4 + 2(資料 + 平等)清除編碼組態中使用六個節點,以保護資料。Weka 支援 N + 2 和 N + 4 清除編碼組態,即支援兩或四個資料保護節點。隨著以資料為重點的節點數量增加,出現兩個現象:寫入效能提升,資料洩露的可能性下降。(詳情請參閱 Weka 資料保護白皮書。)
以下是我們在測試中使用的組態(圖 1):
- 6 個 Dell™ R740xd 2U 含 2 個 Intel 6142 處理器(16 核 2.60GHz)
- 每個伺服器 1 個 100 GbE Mellanox™ ConnectX™-5 NIC
- 每個伺服器 6 個 7300 PRO 7.68TB SSD(共 36 個磁碟)
- 9 個 FIO 負載生成器,每個有 100 個 GbE NIC
- Cumulus™ Linux™ 100 GbE 交換器(已啟用巨幀)
- WekaFS 版本 3.6.1
- CentOS™ 7.6.1810(內核 3.10.0-957.el7.x86_64)
我們將美光 7300 PRO 7.68TB SSD 用於該測試,因為它具有高容量和優越的效能(表 1)。
Weka 的安裝和組態很簡單,使我們可以快速為該系統提供所需物品。對於在安裝過程中需要幫助的人,Weka 擁有一支很棒的支援團隊。
模式 | 容量 | 4KB 隨機讀取 IOPS | 4KB 隨機寫入 IOPS | 4KB 隨機 70/30(IOPS) | 128KB 循序讀取 | 128KB 循序寫入 |
---|---|---|---|---|---|---|
美光 7300 PRO | 7.68TB | 520KB | 85KB | 190KB | 3.0GB/s | 1.8 GB/s |
測試方法
要使用美光 7300 PRO SSD 評估 Weka 解決方案的效能,我們執行傳統的「四角」測試策略,提供 100% 讀取、100% 寫入和 70% 讀取/30% 寫入混合、小型區塊工作負載,來測試每秒作業量,並提供 100% 讀取和寫入大型區塊工作負載,來測試傳輸量。
我們使用九個用戶端節點進行所有測試(每個節點運行八項 fio 執行任務),每個用戶端以分享的檔案系統中的獨立檔案資料夾為目標。對於每個工作負載,我們增加佇列深度(QD),直至我們確定最大效能等級。我們將 Weka 設定為使用 19 個 CPU 核心,其中六個核心專用於管理每個 Weka 資料節點中的六個資料磁碟的 I/O。
效能結果
我們的前三項測試側重於 4KB 區塊大小,以每秒讀寫次數(IOPS)為單位。我們亦以微秒(µs)為單位提供平均延遲。
使用 100% 4KB 隨機讀取,我們看到隨著佇列深度提高,效能持續提升。在 QD32 時,獲得的最高效能為逾 460 萬 IOPS,而平均延遲增至 487 微秒,較 QD16 增加 63%(圖 2)。
使用 100% 4KB 隨機寫入,我們看到,隨著佇列深度由 1 增到 4,效能快速提高,達到約 626,000 IOPS。當佇列深度進一步提高時,IOPS 等級大幅下滑,最高為 696,000 IOPS,而延遲由 QD8 時的 830 微秒,增至 QD16 時的 1.6 毫秒(圖 3)。
根據我們的經驗,對於以該等級的效能向遠端檔案系統進行 4KB 隨機寫入,延遲能達到低於毫秒等級(sub-millisecond,也就是低於1毫秒)這一點令人印象深刻。值得注意的是,寫入效能受所部署資料節點數目的嚴重影響。節點越多,整體寫入效能越高。
最後,對於 IOPS 效能,我們使用 4KB 70% 讀取/30% 寫入工作負載進行測試。在 QD16 時,I/O 效能峰值達到逾 160 萬 IOPS,讀取延遲為 467 微秒,寫入延遲為 3.6 毫秒(圖 4)。
我們的下個測試系列側重於大型區塊(128KB)循序工作負載。大型區塊 I/O 測試嘗試模擬視訊串流、資料庫決定支援系統或大數據分析工作負載等使用案例。此類工作負載測試以每秒十億位元組(GB/s)為單位衡量資料傳輸速率。
首先,我們按一系列佇列深度測試 128KB 循序 100% 讀取。在 QD16 時,我們的最大效能達到 62 GB/s,平均延遲為 2.3 毫秒(圖 5)。
我們的測試顯示 100% 128KB 循序寫入工作負載在 QD16 時亦達到最高傳輸量。但與 128KB 循序寫入工作負載相似,QD16 寫入效能反映延遲相對於 QD8 有所增加,在此情況下,高出約 86%(圖 6)。
結論
我們的測試顯示,使用 Weka 可以實現出色的效能。美光 7300 等美光 NVMe SSD 可以在易於管理的檔案系統解決方案中達到高水準的效能。Weka 可從同時提供資料保護的軟體定義解決方案生成速度達數百萬 IOPS 和 GB/s 的傳輸量,突破了高效能檔案儲存裝置的極限。
搭載 NVMe 的美光 7300 SSD 以常見於 SATA 解決方案的成本和功耗,提供您可 NVMe 期待提供的出色效能。這些因素使 7300 成為廣泛部署情景中的必選磁碟,如 Weka 提供的檔案型儲存基礎架構。
更多資訊
欲瞭解有關 Weka 分散式檔案系統的更多資訊,請下載 WekaFS 資料表。
欲瞭解有關美光 7300 等美光 NVMe SSD 的更多資訊,請瀏覽 micron.com 上的資料中心 SSD 頁面。
此外,請在 Twitter 上關注我們,並在 LinkedIn 上把美光加為好友,隨時掌握有關在資料中心解決方案(如 Weka 所提供者)中使用 SSD 的未來討論。