Есть ли падение производительности, когда мы открываем файл в каталоге с огромным количеством файлов? - PullRequest
0 голосов
/ 01 марта 2011

Предположим, мы хотим открыть файл в каталоге, но существует огромное количество файлов.Когда я попросил программу открыть там файл, как быстро он может искать этот конкретный файл?Будет ли падение производительности при поиске запрошенного файла в этом случае?

PS.Это также должно зависеть от реализации файловых систем, да?

1 Ответ

3 голосов
/ 01 марта 2011

Да, это во многом зависит от реализации файловой системы.

Некоторые файловые системы имеют специальные оптимизации для больших каталогов. Один пример, который я могу вспомнить, это ext3 , который использует индексирование HTree для больших каталогов.

Вообще говоря, обычно некоторая задержка находит файл. Однако, как только файл найден / открыт, его чтение не должно быть медленнее, чем чтение любого другого файла.

Некоторые программы, которым необходимо обрабатывать большое количество файлов (например, для кэширования), помещают их в большое дерево каталогов, чтобы уменьшить количество записей в каталоге.

...