Katakanlah kita menggunakan ext4 (dengan dir_index diaktifkan) untuk meng-host sekitar file 3M (dengan rata-rata ukuran 750KB) dan kita perlu memutuskan skema folder apa yang akan kita gunakan.
Dalam solusi pertama , kami menerapkan fungsi hash ke file dan menggunakan folder dua tingkat (menjadi 1 karakter untuk tingkat pertama dan 2 karakter ke tingkat kedua): karena itu filex.for
hash sama dengan abcde1234 , kami akan menyimpannya di / path / a / bc /abcde1234-filex.for.
Dalam solusi kedua , kami menerapkan fungsi hash ke file dan menggunakan folder dua tingkat (menjadi 2 karakter untuk tingkat pertama dan 2 karakter ke tingkat kedua): karena itu filex.for
hash sama dengan abcde1234 , kami akan menyimpannya di / path / ab / de /abcde1234-filex.for.
Untuk solusi pertama kita akan memiliki skema berikut /path/[16 folders]/[256 folders]
dengan rata - rata 732 file per folder (folder terakhir, di mana file akan berada).
Sedangkan pada solusi kedua kita akan memiliki rata/path/[256 folders]/[256 folders]
- rata 45 file per folder .
Mengingat kita akan banyak menulis / memutus tautan / membaca file ( tetapi sebagian besar membaca ) dari skema ini (pada dasarnya sistem caching nginx), apakah perlu, dalam hal kinerja, jika kita memilih satu atau solusi lain?
Juga, alat apa yang bisa kita gunakan untuk memeriksa / menguji pengaturan ini?
hdparm -Tt /dev/hdX
tetapi mungkin bukan alat yang paling tepat.
hdparm
bukan alat yang tepat, itu adalah pemeriksaan kinerja mentah dari perangkat blok dan bukan tes sistem file.