Уважаемые гуру, подскажите, какое оптимальное количество файлов лучше хранить в директории с reiserfs (все файлы мелкие ~40Kb) для обеспечения наилучшей производительности? файлов просто немеряно (порядка нескольки миллионов). В гугле найти ничего внятного не могу :(
Заранее благодарю.
Для любой fs чем меньше файлов в каталоге тем лучше.
>$mic=microtime(1);
//---
$file="abcdefghijklmnopqrstuvwxyz";//======= 10 files im order ===================
//for ($i=0; $i<10; $i++) { $f=fopen("words/".$file{$i}.".txt", "rb"); }//- 0,0015 www.hdd1.ru 17:00
//for ($i=0; $i<10; $i++) { $f=fopen("words/a/".$file{$i}.".txt", "rb"); }//- 0,0016 www.hdd1.ru 17:00
//for ($i=0; $i<10; $i++) { $f=fopen("words/a/a/".$file{$i}.".txt", "rb"); }//- 0,0018 www.hdd1.ru 17:00
//for ($i=0; $i<10; $i++) { $f=fopen("words/j/j/".$file{$i}.".txt", "rb"); }//- 0,00183 www.hdd1.ru 17:00
//for ($i=0; $i<10; $i++) { $f=fopen("words/a/a/a/a/a/a/".$file{$i}.".txt", "rb"); }//- 0,0031 www.hdd1.ru 17:30
//for ($i=0; $i<10; $i++) { $f=fopen("words/j/j/j/j/j/j/".$file{$i}.".txt", "rb"); }//- 0,0033 www.hdd1.ru 17:30
//for ($i=0; $i<5; $i++) { $f=fopen("words/a/a/a/a/a/a/".$file{$i}.".txt", "rb"); $f=fopen("words/j/j/j/j/j/j/".$file{$i}.".txt", "rb"); }//- 0,0033 www.hdd1.ru 17:30//======= 100 files im order ============================
//for ($i=0; $i<10; $i++) { $f=fopen("words/".$file{$i}.".txt", "rb"); }//- 0,00135 www.hdd1.ru 17:50
//for ($i=0; $i<10; $i++) { $f=fopen("words/j".$file{$i}.".txt", "rb"); }//- 0,00136 www.hdd1.ru 17:50
//for ($i=0; $i<10; $i++) { $f=fopen("words/a/aa/aa/aa/a".$file{$i}.".txt", "rb"); }//- 0,0024 www.hdd1.ru 18:00
//for ($i=0; $i<10; $i++) { $f=fopen("words/a/aa/aa/aa/j".$file{$i}.".txt", "rb"); }//- 0,0024 www.hdd1.ru 18:00
//echo "100/j/jj/jj/jj/..
"; for ($i=0; $i<10; $i++) { $f=fopen("words/j/jj/jj/jj/j".$file{$i}.".txt", "rb"); }//- 0,0025 www.hdd1.ru 18:00//====== 1000 files im order =======================
//for ($i=0; $i<10; $i++) { $f=fopen("words/".$file{$i}.".txt", "rb"); }//- 0,00135 www.hdd1.ru 18:30
//echo "1000/jj.....
"; for ($i=0; $i<10; $i++) { $f=fopen("words/jj".$file{$i}.".txt", "rb"); }//- 0,00137 www.hdd1.ru 18:30
//echo "1000/a/aaa/aa.....
"; for ($i=0; $i<10; $i++) { $f=fopen("words/a/aaa/aa".$file{$i}.".txt", "rb"); }//- 0,0019 www.hdd1.ru 18:30
//echo "1000/a/aaa/jj.....
"; for ($i=0; $i<10; $i++) { $f=fopen("words/a/aaa/jj".$file{$i}.".txt", "rb"); }//- 0,0019 www.hdd1.ru 18:30
//echo "1000/j/jjj/jj.....
"; for ($i=0; $i<10; $i++) { $f=fopen("words/j/jjj/jj".$file{$i}.".txt", "rb"); }//- 0,0019 www.hdd1.ru 18:30//===== x == 1024 files im order ====================
//echo "1024/a/aaa/jjj1.....
"; for ($i=0; $i<10; $i++) { $f=fopen("words/a/aaa/jjj1".$file{$i}.".txt", "rb"); }//- 0,0019 www.hdd1.ru 19:00
//echo "1024/j/jjj/jjj1.....
"; for ($i=0; $i<10; $i++) { $f=fopen("words/j/jjj/jjj1".$file{$i}.".txt", "rb"); }//- 0,0019 www.hdd1.ru 19:00//===== x > 1024 files im order ====================
//echo "x > 1024/j/jjj/jjja.....
"; for ($i=0; $i<10; $i++) { $f=fopen("words/j/jjj/jjja".$file{$i}.".txt", "rb"); }//- 0,0019 www.hdd1.ru 19:00//===== 10'000 files im order ====================
//echo "10'000/j/jjj/jjj.....
"; for ($i=0; $i<10; $i++) { echo "$i
start=".($a=microtime(1)); $f=fopen("words/j/jjj/jjj".$file{$i}.".txt", "rb"); echo " ... stop=".($b=microtime(1))." --- durat=".($b-$a); }//- 0,0019 www.hdd1.ru 19:20
//---
$mic=microtime(1)-$mic;
echo "<hr>microtime=".$mic;