ext4(dir_indexを有効にした)を使用して約3Mファイル(平均750KBサイズ)をホストし、使用するフォルダースキームを決定する必要があるとしましょう。
で最初のソリューションは、我々はファイルにハッシュ関数を適用し、(最初のレベルのための1つの文字と第二のレベルに2つの文字である)フォルダ二つのレベルを使用しますので、というfilex.for
ハッシュに等しいabcde1234、我々は上/パスに保存します/ a / bc /abcde1234-filex.for。
第二の溶液、我々はファイルにハッシュ関数を適用し、(最初のレベルのために2つの文字及び第レベルに2つの文字である)フォルダ二つのレベルを使用します。したがって、あるfilex.for
ハッシュに等しいabcde1234を、我々はそれを保存します/パス/ ab / de /abcde1234-filex.for。
最初のソリューションでは、フォルダー(ファイルが存在する最後のフォルダー)あたり平均732ファイルの次のスキーム/path/[16 folders]/[256 folders]
を使用します。
2番目のソリューションでは/path/[256 folders]/[256 folders]
、フォルダーごとに平均45個のファイルがあります。
このスキーム(基本的にはnginxキャッシングシステム)からファイルの書き込み/リンク解除/読み取り(ただしほとんどは読み取り)を行うことを考えると、いずれかのソリューションを選択した場合、パフォーマンスの意味で重要ですか?
また、この設定を確認/テストするために使用できるツールは何ですか?
hdparm -Tt /dev/hdX
たが、最も適切なツールではないかもしれません。
hdparm
は正しいツールではありません。ブロックデバイスの生のパフォーマンスのチェックであり、ファイルシステムのテストではありません。