0

この Web サイト: http://www.patpro.net/blog/index.php/2014/03/19/2628-zfs-primarycache-all-versus-metadata/

その人は、primarycacheすべてまたはメタデータに切り替えることで、ウイルス対策を使用したときに大幅に異なる読み取りパフォーマンスが得られることを示しています.

ただし、彼はまた、読み取り帯域幅にも大きな違いがあることを示しています。

primarycache=none と compression=lz4 の両方で 2 つの新しいデータセットを作成し、それぞれに 4.8GB ファイル (2.05x 圧縮率) をコピーします。次に、最初のものに primarycache=all を設定し、2 番目のものに primarycache=metadata を設定します。別のターミナルで zpool iostat を実行して、最初のファイルを /dev/null に cat します。最後に、2 番目のファイルを同じ方法で cat します。

読み取り帯域幅列の合計は、primarycache=all: 2.44GB のデータセットのディスク上のファイルの物理サイズ (du 出力) と (ほぼ) 正確に一致します。もう 1 つのデータセットの場合、primarycache=metadata の場合、読み取り帯域幅列の合計は ...wait for it... 77.95GB です。

彼は、匿名のユーザーが次のように説明したと言います。

clamscan はファイルを読み取り、4k (ページサイズ?) のデータを取得して処理し、次の 4k を読み取ります。

ただし、ZFS は 4k だけを読み取ることはできません。デフォルトでは 128k (レコードサイズ) を読み取ります。キャッシュがない (キャッシュをオフにした) ため、残りのデータは破棄されます。

128k / 4k = 32

32 x 2.44GB = 78.08GB

匿名ユーザーの説明がよくわかりません。なぜ読み取り帯域幅に大きな違いがあるのか​​ について、私はまだ混乱しています。

では、この ZFS の実験でprimarycacheは、すべての場合は読み取り帯域幅が 2.44 GB であるのに、メタデータのみの場合は 77.95 GB になるのはなぜでしょうか? また、ZFS のチューニングにはどのような影響がありますか? その人がおそらく自分のレコードサイズを減らしたら、別の結果になるでしょうか?

ZFS のレコードサイズは可変であるという主張についてはどうですか?

4

1 に答える 1