FreeNAS 9.3 で Deduplication を試してみた

FreeNAS 9.3 で Deduplication (重複排除)を試してみた。

環境は ESXi 上なので、多少は現実とは違うかも知れませんが。
(hp MicroServer 上のESXi で、64ビットのFreeBSD用の設定で作られる仮想マシンに FreeNAS 9.3 RELEASE をインストール。CPUx1、メモリ1GB)

Create Dataset で通常は Inherit (off) となっているところをあえて on に変更。

freenas_dedup_01.jpg

既存の Dataset に対して設定変更もできるみたいだけど、
大量にデータのある Dataset に対して設定変更したらシステムの負荷がどうなることやら。


ESXi上で8GBのハードディスク4台でRAIDZ2を構成したので、
空っぽで11.2GBの容量に対して、異なるフォルダへ1.67GBのMP4ファイルを3回コピーしてみました。

freenas_dedup_02.jpg

コピーを開始した14:45あたりからグングン Diskspace (tank) が減少しはじめますが、 14:50 頃に減少が止まります。
ここから2回目のコピーが行われていて、コピーされると共に、 Diskspace (tank-share) の総容量が増えていくような形になります。
14:56過ぎ、3回目のコピーが終了してグラフがフラットになったところで、 9.4GB の残りで、使用が 5.0GB 。空の時の容量 11.2GB に比べて、見た目の容量が約 3.2GB (≒ 1.67GB ×2 )増えていることになり、重複排除機能が作動していることが確認できます。

freenas_dedup_03.jpg

そのときのメモリの消費具合。


freenas_dedup_04.jpg

重複排除機能が有効になっている共有フォルダに対して CrystalDiskMark を実行してみた。

zfs_raidz2.jpg
重複排除が無効のESXi上のFreeNASのRAIDZ2
FreeNAS のディスクはどう構成すればいいか

との書き込みパフォーマンスの差をどう捉えるか…。


ドキュメントに書かれているほど豪勢なメモリ環境でなくとも動作しそうな気がします。

しかし、重複排除のプロセスはRAMに集中しますので、一般的な経験則はストレージ1TBにつき5GBのRAMが重複排除に必要となります。ほとんどの場合、重複排除の代わりに圧縮を使ったほうがシステムのパフォーマンスへの影響を少なくすることができ、メリットがあります。
However, the process of deduplication is RAM intensive and a general rule of thumb is 5 GB RAM per TB of storage to be deduplicated. In most cases, using compression instead of deduplication will provide a comparable storage gain with less impact on performance.
8.1.3.1. Deduplication

ですが、同じファイルがいくつも保存されている時に容量が節約できるような機能は、パーソナルユースのNASとしてはあまり関係ないかも、とも思わなくもないです。

また、重複排除が設定されていなかったpoolを重複排除を有効にしてインポートしようとすると、1TBあたり3-5GBのRAMが必要らしいです。メモリが足りない場合はpanicが発生したりします。その場合はメモリを追加するのが唯一の対処法らしいです。

About

2015年03月07日 15:20に投稿されたエントリーのページです。

ひとつ前の投稿は「KONO式ドリッパー」です。

次の投稿は「FreeNAS 9.3 の手動初期設定」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.35