差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
blog:2020:2020-12-13 [2021-12-14 10:23]
Decomo
blog:2020:2020-12-13 [2022-03-30 10:34]
Decomo
行 1: 行 1:
 ====== ZFSのSpecial Allocation ClassのSpecial VDEVの容量を見積もる ====== ====== ZFSのSpecial Allocation ClassのSpecial VDEVの容量を見積もる ======
 +
 +<WRAP info>(2022-03-30 追記)
 +
 +実際にテストしてみた→[[blog:2022:2022-02-24]]
 +</WRAP>
  
 SSDをSpecial VDEVとしてZFSプールに追加すれば[[blog:2020:2020-12-08|性能向上が見込めそう]]なのは分かった。続いてSpecial VDEVに必要な容量を見積もってみる。 SSDをSpecial VDEVとしてZFSプールに追加すれば[[blog:2020:2020-12-08|性能向上が見込めそう]]なのは分かった。続いてSpecial VDEVに必要な容量を見積もってみる。
行 28: 行 33:
 メタデータの使用量は簡単に確認できる。 メタデータの使用量は簡単に確認できる。
  
-Allocation Classにおける「メタデータ」とは、ファイルデータとzvolデータを除いたデータである。正確に言うと、レベル0のZFS plain file(いわゆる普通のファイルのデータ)とレベル0のzvol object(zvolのデータブロック)を除いた全てのデータがSpecial VDEVに載るとのこと。+Allocation Classにおける「メタデータ」とは、ファイルデータとzvolデータを除いたデータである。正確に言うと、レベル0のZFS plain file(いわゆる普通のファイルのデータ)とレベル0のzvol object(zvolのデータブロック)を除いたがメタデータとなり、それら全てがSpecial VDEVに載るとのこと。
  
 ''zdb -bbb プール名''を実行するとプールの詳細情報がズラズラ出るが、このうちTypeがTotalのASIZEからL0 ZFS plain fileとL0 zvol objectのASIZEを引いた値がメタデータサイズとなる。 ''zdb -bbb プール名''を実行するとプールの詳細情報がズラズラ出るが、このうちTypeがTotalのASIZEからL0 ZFS plain fileとL0 zvol objectのASIZEを引いた値がメタデータサイズとなる。
行 105: 行 110:
 ここではSpecial VDEVをフル活用するとして、全部盛りの7.9GiBを採用する。 ここではSpecial VDEVをフル活用するとして、全部盛りの7.9GiBを採用する。
  
-<note>(2021-12-14追記)+<WRAP info>(2021-12-14追記)
  
 FreeBSD 13.0 (OpenZFS 2.0)の''zdb -bbb''でBlock Size Histogramという、まんまの情報が出ることに気づいた。ご丁寧に対象ブロック以下の合計バイト数まで出してくれるので、一撃で見積もることができる。 FreeBSD 13.0 (OpenZFS 2.0)の''zdb -bbb''でBlock Size Histogramという、まんまの情報が出ることに気づいた。ご丁寧に対象ブロック以下の合計バイト数まで出してくれるので、一撃で見積もることができる。
行 132: 行 137:
  
 上記は26TBのプール(使用量は23TB)で、64KB以下のブロックが121GBだからプールに占める割合は0.46%となる。Special VDEVの容量は、一般的な用途ではプールの1~2%を確保しておけば十分なのかも。 上記は26TBのプール(使用量は23TB)で、64KB以下のブロックが121GBだからプールに占める割合は0.46%となる。Special VDEVの容量は、一般的な用途ではプールの1~2%を確保しておけば十分なのかも。
-</note>+</WRAP>
  
  
  • blog/2020/2020-12-13.txt
  • 最終更新: 2022-03-30 10:34
  • by Decomo