早期的SMR因為緩存小、主控設計不合理、操作系統兼容性差等原因導致體驗爆炸,那麼時至今日,SMR的體驗有沒有提升呢?

我打算收一個2~3T的2.5寸盤充當移動硬碟,然而2.5寸PMR大容量盤只有西數的WD30NPRZ,和希捷的ST2000LM003,而且品質沒有保障;在以2.5寸的條件下貌似SMR已成為大容量的一個必選項。


不可能改善的,這輩子都不可能改善的,只能加大緩存用用trim才能過日子醬紫。

SMR的存儲原理咱之前已經說過了,可以看這篇回答:

為什麼目前市面上的機械硬碟大都不標註是否使用SMR技術??

www.zhihu.com圖標

如何識別SMR盤,也可以看這篇回答:

如何判定一塊機械盤是不是採用疊瓦式磁記錄(SMR)??

www.zhihu.com圖標

那麼今年新出的SMR盤,都多了哪些新東西呢?其實就一個,trim。緩存還是那麼大,本盤128MB,臺盤256MB這樣子。希捷的SSHD混合盤也不怎麼出了。可能垃圾回收和trim演算法改善了些,但都還是換湯不換藥,治標不治本。

加大緩存確實能改善SMR盤的寫入性能,先寫入緩存,然後再慢慢整理。但大家不要忘了,緩存是易失性存儲,一旦斷電裡面的數據就會消失。那麼對於大緩存的硬碟,一旦意外斷電,緩存裏寫了一半的數據就會完全丟失。相比傳統PMR盤,64MB緩存可以在不到1秒的時間內全部寫入,SMR盤會有一個寫入整理的過程,同時還要進行STL的轉換,步驟上更多,寫入更慢,自然風險更大。

至於trim,之前咱也提到了,它的本意是促使SMR盤能夠快速地整理寫入的數據,進行垃圾回收。但SMR的工作原理和渣渣的寫入速度限制了trim所帶來的提升,甚至會隨機性地造成體驗下降。trim指令一般是操作系統發出的,操作系統會在空閑時,或用戶刪除文件時發出trim指令,硬碟接收到trim就會立即不分青紅皁白地搬遷,這樣的話,硬碟性能就有很大的隨機性了,很可能跟著SSD一起trim,但SSD的trim多快啊,所以SMR盤就很可能就被SSD的trim連累,導致100%佔用性能下降了。

那麼支持trim與不支持trim,究竟是利大於弊還是弊大於利?其實個人認為,雖然trim可以及時清空已刪除的文件,整理磁軌,但它在SMR盤上,會引起更多的寫入放大,造成更加頻繁的性能下降,得不償失。因為機械盤容量都比較大嘛,自然就會存很多大大小小文件,如果刪除了一部分,這些文件的屍體還在盤上沒有被清掉,PMR盤的話,這些數據都是平鋪在盤上的,刪除文件就是把這塊區域標記成可擦寫,下次寫入時直接去擦寫這部分內容就好了。這也是數據恢復的原理,將未被擦除的數據讀取出來,根據其數據重寫文件頭,就能成功恢復了。

但SMR不一樣,因為SMR的數據是層層疊疊的,刪除文件時,就算將這塊區域標記為可擦寫,下次擦寫時,仍然需要挪移與之關聯的數據。之前不支持trim的時候,這部分死數據很可能就長時間留在原地,直到操作系統要求擦寫時,SMR的固件才會去進行檢測,如果擦寫的區域不會覆蓋正常數據,那就不會觸發搬遷。

現在支持trim之後,操作系統一旦給了SMR盤執行trim的指令,SMR盤就會立即開始掃描這些數據屍體並開始搬遷,相當於是做了一次全盤碎片整理,遷移活數據並覆蓋死數據,但進行這個操作時,如果再去寫入數據,就會搞亂這個進程,為了避免整理時寫入數據,那麼固件就會限制寫入速度,這也是造成100%佔用的原因。也由於操作系統發送trim指令的時機不確定,這也就造成了不確定的性能下降。

至於移動硬碟用SMR技術好不好呢?其實咱們只需要注意這麼幾個問題。

  1. 性能問題
  2. 數據安全性
  3. 數據可恢復性

由於移動硬碟大多數被拿來當倉庫盤,基本不會頻繁寫入,一般在拷入數據時,硬碟內部就已經整理好了,撞上100%佔用的幾率不大。同時,USB移動硬碟大多不支持trim指令,不會出現性能下降的問題。

至於數據安全性,只要硬碟商選用合格的硬碟,安全性其實和機內硬碟區別不大。但一定要注意,SMR盤的寫入量比傳統盤更大,有時候數據拷完了其內部還在整理,這時候千萬不可直接拔掉,而是用右下角的彈出功能。同時也避免盤在運轉時進行搬動。另外,SMR盤因為多了一個STL轉換層,相比PMR盤直截了當的數據存儲,加大了數據的複雜度,一旦STL出問題,後果就是全盤數據皆變成無用數據,能否像SSD那樣重建也是個問題。

數據的可恢復性,其實SMR盤本身的恢復難度就很高,因為內部會頻繁進行擦寫,尤其是在trim的加持下,誤刪文件、誤格式化就更難恢復了,這一點跟SSD是很類似的。

最近b站的一位數據恢復UP主做了一個實驗,演示了CMR盤和SMR盤在刪除文件、格式化之後,硬碟內部數據的變化。CMR盤在刪除文件、格式化後,使用WinHEX查看硬碟底層數據,仍然可見大量有效數據,數據恢復軟體就可以掃描這些有效數據,從而恢復誤刪除或誤格式化的文件。但SMR盤在刪除文件後,底層數據已經全部變成了0,也就是說這些被刪除的數據屍體已被完全清理,也就恢復無望了。鏈接如下:

知道嗎?疊瓦硬碟的特殊功能,一不小心誤刪除資料會讓你遺憾終生_嗶哩嗶哩 (゜-゜)つロ 乾杯~-bilibili?

www.bilibili.com圖標

可以想像,如果硬碟因為病毒、誤操作導致文件誤刪、誤格式化,SMR盤是基本恢復無望的,這一點跟SSD很像。


謝邀

原理上來說

smr體驗很難好到哪裡去

但是用了幾年ssd了

哪裡還有新pc主機主硬碟是機械盤?

一句實話,存儲放放文件可以用,至於低至kb級別的速率,你遇見時間相對少。

當然傳統pmr盤還能買到,稍有需求盡量買pmr吧


移動硬碟放在外邊的噪音很關鍵吧,你不在意疙瘩聲smr也沒問題啊。

辦公角度文檔文件出現損壞沒關係嗎。

個人狹隘角度,SMR盤體驗永遠不會改善,他的結構就決定了只適合當儲存檔,然而大批量讀寫數據卻可能會導致一部分數據受損。

客觀廣義角度,本身2.5寸盤挺安靜的,smr磁頭讀寫頻繁噪音明顯。

全新盤使用起來和pmr無區別,等裝滿一次或者使用過一段時間你就懂了,這種問題別人多說無用,還請自己買一塊體驗一下,也不貴。


手頭剛好有一塊2.5寸希捷SMR硬碟,2016年發布的ST1000LM035。7mm單碟1TB,5400轉128M緩存,標準的SMR硬碟配置[1]。從mkfs.f2fs的輸出來看,這塊SMR是支持TRIM的。隨手測一測,結果僅供參考。

smartctl輸出

我準備了一份測試文件夾,總大小為35.93GiB,其中size &<4KiB的文件13個、&<1MiB的文件16個、&<64MiB的文件22個、&<1GiB的文件34個、&>=1GiB的文件22個,平均每個文件350M左右。

我先是在這塊盤上建立了一個EXT4分區(可以看成和NTFS類似),然後連續往裡面寫入20份測試文件夾。前15份測試文件夾(總大小超過500GiB)的寫入速度比較穩定,但第16份測試文件夾的平均寫入速度下滑到了20MB/s,之後寫入速度一直維持在10MB+/s。或許讓硬碟閑置一段時間TRIM能恢復到先前的寫入速度,但不管怎樣,這塊SMR盤的寫入性能還是超出了我的預期。

mkfs.ext4輸出

寫入20份測試文件夾

然後我在這塊硬碟上重新建立了一個F2FS分區(雖然F2FS是針對快閃記憶體開發的文件系統,但其設計思想比較適合用著SMR上),同樣連續往裡面寫入20份測試文件夾。寫入速度全程維持在60MB/s以上,最後幾份測試文件夾的寫入速度竟然還突破了110MB/s……真是喪心病狂。我對SMR和F2FS技術細節不太瞭解,有興趣的可以看看西數在2017年Linux相關會議上做的報告[2]

mkfs.f2fs輸出

寫入20份測試文件夾

總的來說,我認為SMR硬碟當倉庫盤或移動硬碟是沒啥問題的,同時我也對SMR的未來抱有一定的信心,畢竟硬體不夠軟體來湊嘛(滑稽。

參考

  1. ^Data Sheet https://www.seagate.com/www-content/datasheets/pdfs/mobile-hddDS1861-2-1603-en_AS.pdf
  2. ^Linux SMR Support Status https://events.static.linuxfound.org/sites/events/files/slides/lemoal-Linux-SMR-vault-2017.pdf


當移動硬碟使就沒所謂了,誰會在移動硬碟上高強度反覆讀寫呢?

另:你確認這兩塊是PMR盤?


ssd表示無論怎麼改善在我面前都是渣渣(更何況新技術遲遲不能大規模量產,廠商只能靠smr續命),反正hdd現在用途都用來作為倉庫盤(AVI/mkv/。。。什麼的),那每GB價格纔是關鍵問題。現在pmr技術沒法達到每碟片1TB以上,目前大容量hdd(超過6T甚至8T)基本都是smr,反正對希捷西數來說,愛買買不買滾,除了壕以外,大部分人(包括數據中心)還得拿hdd作為倉庫應用~


這個文檔是2018年7月更新的……最早發布時間是2016年9月:

https://www.seagate.com/www-content/product-content/seagate-laptop-fam/barracuda_25/en-us/docs/100807728g.pdf?

www.seagate.com

可以看到,包括了500GB到2TB的一系列型號。

(所以並不是2.5寸500GB就沒有SMR了)

這次希捷沒有太過遮遮掩掩,明確提到了這些型號都是SMR:

Shingled magnetic recording with perpendicular magnetic recording heads/media

還有,SMR本來就是和PMR同時在使用的(我之前說SMR和PMR是「互相搭配使用」屬於用詞不當,我的意思並不是「SMR盤也有非SMR緩衝區」,而是說SMR盤的每一條軌道也是用PMR技術在讀寫的),所以我一直覺得用「PMR」指代「非SMR硬碟」很不好,存在歧義。據我所知和SMR對應的概念應該是CMR(conventional magnetic recording,傳統磁記錄)。


pmr盤基本搞不出這種事情 smr做倉庫都不配


把SMR理解成磁帶機就好了,不論怎麼加緩存,怎麼優化演算法,性能一定好不起來,還不如QLC。


推薦閱讀:
相關文章