Performance

沒有回寫記憶體的 RAID10 = 糟糕的寫入性能?

  • October 29, 2012

我剛剛在單跳上配置了一個專用伺服器。

我正在通過一些測試來執行它,以了解性能方面的預期。在 I/O 端(在 RAID 10 中有 4 個 1TB 磁碟)我得到:

write-cache disabled
200 MB/s read throughput
30  MB/s write throughput

我認為與我的桌面高畫質(150-150 左右)相比,這真的很低。所以我和他們聊了聊,他們建議啟用寫記憶體。新結果:

write-cache enabled
280 MB/s read
260 MB/s write

這很好,但這意味著我必須每月支付額外的費用添加一個 BBU。

如果您沒有寫入記憶體,寫入吞吐量是 RAID10 上正常驅動器的 1/4 是否正常?強迫你為 BBU 買小馬幾乎感覺像是故意的壞事。我會對 150/150 的正常非突襲性能感到滿意。

**更新:**他們現在正在查看它,看看是否有問題。我會給 ahamat 一個公認的答案,因為當這個 8 倍的下降會影響伺服器工作負載時他會崩潰,而當它不會時。如果我得到更多數據,將再次更新。+1 其他答案。謝謝。

**UPDATE2:**似乎硬體有問題。移至具有相同規格的新機器,並在沒有回寫記憶體的情況下獲得 80MB/s 的寫入速度。250MB/s,記憶體開啟。所以沒有它的 3 倍下降和合理的吞吐量。

由於應用程序的性質,實際應用程序中的性能會有所不同。

非同步寫入將進入 RAM,而您有任何可用於寫入緩衝。顯然,寫入 RAM 將比寫入磁碟快得多。這是大多數(所有?)現代作業系統的預設設置。如果在將它們刷新到磁碟之前您有足夠的 RAM 進行寫入,那麼所有寫入都將顯得非常快。雖然,有一段時間斷電會導致數據失去。電池支持的磁碟寫入緩沖減少(但不能完全消除)這個時間段。

同步寫入必須在寫入返回之前送出到磁碟,並且速度明顯較慢。這是 NFS 和其他一些應用程序的預設模式。對於同步寫入,電池支持的磁碟寫入緩衝顯著提高了明顯的寫入性能,並消除了因電源故障而失去數據的風險。但請注意,寫入仍將寫入易失性記憶體,它只是被移動到磁碟 PCB 的記憶體而不是主記憶體。ZFS 通過使用 SSD ZIL 以不同的方式解決了這個問題,SSD ZIL 將送出到 SSD 並返回寫入操作,然後將其移動到旋轉磁碟。

所以你真的需要看看你的應用程序。您的大部分寫入是同步的還是非同步的?對於非同步,您只需擁有大量 RAM 即可擺脫困境。對於同步,您需要電池支持的寫入記憶體(但 ZFS 可能能夠提供更便宜的解決方案)。

在任何情況下,您都需要寫記憶體。

引用自:https://serverfault.com/questions/442717