Я управляю приложением, которое содержит хранилище файлов, в котором хранятся все файлы с именами файлов, равными их суммам md5. Все файлы хранятся в одном каталоге. В настоящее время существуют тысячи, но скоро их должно быть на сервере миллионы файлов. Текущий сервер работает под управлением Ubuntu 11.10 в файловой системе ext4.
Кто-то сказал мне, что не стоит размещать много файлов в каталоге, так как это приведет к значительному увеличению времени поиска и надежности (у него была история о максимальном количестве файлов, на которую может указывать один каталог, что приводило к большому связанному списку). Вместо этого он предложил создать подкаталоги, например, с подстроками имени файла. Тем не менее, это сделает некоторые вещи в моем приложении гораздо более громоздкими.
Это все еще правда, или у современных файловых систем (например, ext4) есть более эффективные способы справиться с этим и естественно масштабировать? В Википедии есть некоторые подробности о файловых системах, но на самом деле ничего не говорится о максимальном количестве файлов в каталоге или времени поиска.