В принятом ответе на ServerFault Игнасио Васкес-Абрамс говорится:
Если у вас есть дистрибутив, который поддерживает функцию dir_index, то вы можете легко разместить 200 000 файлов в одном каталоге. Я бы держал его на уровне около 25 000, хотя, чтобы быть в безопасности. Без dir_index попытайтесь сохранить его на уровне 5000.
Который я бы принял как предложение
./000/file000000 to ./000/file000999
./001/file001000 to ./001/file001999
...
./999/file999000 to ./999/file999999
Размер структуры каталогов никогда не уменьшается, поэтому, если каталог когда-либо содержал так много файлов, что он вырос до неэффективного размера, удаление или перемещение файлов из этого каталога не приведет к повышению производительности для этого каталога. Поэтому всегда начинайте с новых каталогов (при необходимости переименовывайте слишком большие каталоги, создавайте новые каталоги, перемещайте файлы, удаляйте старые каталоги)
Ответы на другой вопрос Stackoverflow говорят
В настоящее время по умолчанию используется ext3 с dir_index, что делает поиск больших каталогов очень быстрым.
Комментатор говорит
Существует ограничение около 32 КБ подкаталогов в одном каталоге в ext3, но ОП говорит о файлах изображений. Нет (практично?) ограничение на файлы в файловой системе ext3 с включенным Dir Index.
Я думаю , что я бы запустить несколько тестов , чтобы увидеть , если организации файлов в подкаталогах было целесообразно для чего - нибудь другого , чем производительность ls
Общие правила оптимизации: 1 нет, 2 действительно нет, 3 меры.