2008-09-17 74 views
2

最近我讀了一篇題爲"SATA vs. SCSI reliability"的文章。它主要討論消費SATA驅動器中的高速位翻轉,並得出結論:「現在無法從特定磁盤讀取所有數據的可能性爲56%」。即使Raid-5也無法拯救我們,因爲它必須經常被掃描以查找問題,並且如果磁盤確實死亡,則幾乎可以確保在重建的文件系統上有一些翻轉的位。如何保護我的文件數據免受磁盤損壞?

注意事項:

我對Sun的ZFSRaid-Z但Linux和BSD實現聽說偉大的事情是仍處於試驗階段。我不確定它已經準備好黃金時間了。

我也讀了很多關於Par2文件格式。看起來像存儲一些額外的百分比同時每個文件將允許您從大多數問題中恢復。但是,我不知道內部執行此操作的文件系統,並且似乎可能很難管理單獨的文件。

備份(編輯):

我知道備份是最重要的。但是,如果沒有進行某種檢查,您可能很容易就會在不知情的情況下向用戶發送不良數據。還要確定哪個備份具有該數據的良好副本可能很困難。

例如,你有一個Raid-5陣列運行一年,你會發現一個損壞的文件。現在,您必須重新檢查備份,直到找到好的副本。理想情況下,你會去包含該文件的第一個備份,但可能很難弄清楚,特別是如果該文件已被編輯多次。更糟糕的是,考慮是否在發生損壞後追加或編輯了該文件。對於像Par2這樣的塊級奇偶校驗來說,這足以成爲足夠的理由。

回答

0

ZFS是一個開始。許多存儲供應商也爲520B驅動器提供額外的數據保護。但是,這隻會在數據進入存儲結構時立即受到保護。如果它在主機級別被破壞,那麼無論如何你都會被洗淨。

即將出現的一些很有希望的基於標準的解決方案來解決這個問題。端到端的數據保護。

考慮T10 DIF(數據完整性字段)。這是一個新興標準(它是在5年前起草的)和一項新技術,但它有解決數據損壞問題的崇高目標。

0

56%的機率我看不懂,我懷疑它。我運行混合RAID 5和其他好東西,只是良好的備份做法,但與Raid 5和熱備份我從來沒有數據丟失,所以我不知道什麼大驚小怪。如果您要存儲奇偶校驗信息......那麼您正在使用軟件創建一個RAID系統,R5中的磁盤故障會導致奇偶檢查,以找回丟失的磁盤數據,所以它已經存在。

運行團隊,備份你的數據,你沒事:)

+0

我不太確定。如果任何「加起來」位被翻轉,並且重建,則最終出現錯誤的值。 – 2008-09-17 19:32:04

+0

這些位在到達用戶空間時不會翻轉。磁盤控制器注意到失敗的校驗和,並在軟件RAID的情況下將「讀取失敗」返回給RAID控制器或操作系統。因此,RAID 5計算中不包括來自閃避扇區的位。 – tialaramex 2008-09-17 19:36:59

2

那篇文章顯著誇大的誤解的來源問題。它假定數據丟失事件是獨立的,也就是說,如果我抽取一千個磁盤並獲得五百個錯誤,那麼每五百個磁盤上可能會有一個錯誤。但實際上,任何有磁盤故障的人都知道,它可能是一個磁盤上的五百個錯誤(仍然是磁盤總容量的一小部分),其他九百九十九個都沒問題。因此,在實踐中並不是說有56%的機會不能讀取所有的磁盤,相反,它可能更像是1%或更少,但是大多數1%的人會發現他們已經丟失了幾十個或者數百個扇區,儘管整個磁盤沒有失敗。

果然,實際實驗反映了這種理解,而不是文中提供的理解。

基本上這是「中國耳語」的一個例子。這裏鏈接的文章是指另一篇文章,它又間接地指向已發表的論文。該論文指出,當然這些事件是不是獨立的,但是這個重要的事實在消化過渡到容易消化的博客格式時就消失了。

相關問題