BigMac4Diet wrote:
ZFS和RAID 這兩個技術都是以Redundant來容錯。
最大差異是:RIAD是block level access. ZFS是File level.
RAID的幾個比較大的問題是:
1. 這個技術主要是針對硬體損毀的容錯。對位元錯誤的偵測有盲點,在理論上,它有可能在位元資料錯誤的狀況下持續運作,導致非常嚴重的資料錯誤,而且要很久以後才會發現。說穿了,可靠度可能沒一般人想的高。
2. 當硬碟損毀導致需要做資料還原時,由於整顆硬碟都必須重新計算填入block data. 資料復原的時間非常久,而在重建期間,資料的存取速度會被重拖。這在單顆硬碟容量大的時候尤其難以接受(以資料中心業者的角度)。
3. 在磁碟系統(SSD)越來越高速的狀況下,SoC難以及時處理資料封包,因此RAID的速度效益不復存在,甚至本身就是瓶頸,並且反而要多一層硬體成本。
NFS是雲端儲存系統小型化的重要基礎技術之一。而ZFS的最大問題是這個功能是建構在物件導向式檔案系統之上,跟傳統式檔案系統不相容。
NAS的底層可不可以使用ZFS?當然可以,而且彈性更大。不過硬碟數量不多或不夠快的設備效益就不是那麼大罷了。
ZFS 也可以算是 block level 吧,因為它是同時結合 block & file level 操作
在硬碟寫入 checksum 及 deduplication 這些都是 block level 操作才可以做到,而它有自帶的 file level 操作所以根本不再需要有另一檔案系統存在