« Sun MicrosytemsのPSARC、ついでにZFSの重複排除(Dedupe) | トップページ | あなたのデータは既に壊れているかもしれない(Silent Data Corruption) »

2009年7月23日

ZFS vs. NTFS

ZFSとNTFSを機能レベルで比較してみた。ざっと調べただけなので、見落としや誤解しているところがあるかもしれない。とくに「何かが無い」ということを証明するのは結構難しい。またNTFSはWindowsのみの実装なので、NTFS自身の機能ではないものも含まれる。

■ZFSにあってNTFSにないもの

エンド・ツー・エンドのチェックサム

データ自己修復

シンプロビジョニング
Windowsでもできるが、現在のNTFSの設計ではうまく動かないというマイクロソフト技術情報もある。

Recommendations for thin-provisioned volumes for computers that run Windows Server 2008, Windows Vista, Windows Server 2003, or Windows XP
http://support.microsoft.com/?scid=kb%3Ben-us%3B959613&x=10&y=10

ZFSでも、zvolのシンプロビジョニング(sparse volume、疎ボリューム)は推奨していない。
http://docs.sun.com/app/docs/doc/819-2240/zfs-1m?l=ja&a=view

クローン

ダブルパリティRAID(RAID-Z2)

ハイブリッドストレージプール
フラッシュメモリを活用してブートを高速化するReadyBoost機能がWindows Vistaにある。これに対してZFSのハイブリッドストレージプールは任意のボリュームで使用可能で、実行ファイルだけでなく任意のファイルのアクセスを高速にできる。

De-dupe
まもなくZFSに実装される模様。

■NTFSにあってZFSにないもの

Windows環境との「完璧な」親和性
ZFS + SambaまたはSolaris CIFSサービスという組み合わせが、Windowsシステムを完璧に再現できているかというと、多少は違いがあるだろうと思う(根拠はない)。なので、カギ括弧付きの「完璧な」親和性と書いている。

255バイトを超える日本語ファイル名の正しい処理
ZFSのファイル名最大長は255バイト。NTFSは255文字。UTF-8で日本語1文字は3バイトで表現されるので、ZFSにUTF8でファイル名を格納すると、86文字目以降が切り捨てられてしまう。日本語だけでなくロシア語でも同じ問題が起きていて、ZFSの機能拡張要求が提出されている(Bug ID 6802759)。
http://bugs.opensolaris.org/view_bug.do?bug_id=6802759

■どちらにもあるもの

トランザクションベース書き込み時コピー(CoW、Copy On Write)
ファイルシステムへの変更がAtomicだからディスク上で不整合が出ないという仕組みだと考えると、Vista以降のTransactional NTFSはAtomicな変更をサポートする。
http://en.wikipedia.org/wiki/Transactional_NTFS

ミラーリング(RAID-1)

シングルパリティRAID(RAID-5、RAID-Z)

スナップショット
WindowsはVSSで実現。

リモートレプリケーション
WindowsはDFSで実現。

圧縮

ボリュームのオンライン拡張
NTFSのダイナミックディスクはオンラインで拡張可能。

|

« Sun MicrosytemsのPSARC、ついでにZFSの重複排除(Dedupe) | トップページ | あなたのデータは既に壊れているかもしれない(Silent Data Corruption) »

コメント

> ミラーリング(RAID-0)
RAID-1では?

投稿: miri | 2010年5月14日 10時21分

miriさん、ご指摘ありがとうございます。訂正しました。

投稿: raven | 2010年5月23日 10時31分

この記事へのコメントは終了しました。

« Sun MicrosytemsのPSARC、ついでにZFSの重複排除(Dedupe) | トップページ | あなたのデータは既に壊れているかもしれない(Silent Data Corruption) »