Кто-то недавно на нетехническом форуме сказал мне, что хранение файлов, вложенных в слишком много подпапок, может замедлить работу компьютера. Это вообще правда? Это имеет смысл, так как компьютер будет иметь больший индекс файловой системы или что-то еще, что он должен сортировать, но я не могу найти никакой информации об этом в Интернете. На самом деле я не заметил большой разницы на своем компьютере в создании множества папок, и я никогда не слышал этого раньше (и много читал о технологиях), поэтому я немного скептически отношусь. Может ли кто-нибудь быть достаточно милым, чтобы указать мне на какую-то соответствующую информацию?
2 ответа
Как я знаю, тогда лучше иметь много папок с небольшим количеством файлов, чем одну или несколько папок с большим количеством файлов.
В каждой папке хранится информация индекса для каждого файла / папки (ссылки). Итак, если у вас есть, скажем, 1.000.000 файлов в этой папке, то в ней будет храниться 1.000.000 записей, и загрузка будет медленной.
Но если у вас есть 10 папок с 100 000 файлов в каждой, то в нем будет храниться только 10 записей и 100 000 в каждой из подпапок.
Это простой пример, но я надеюсь, что вы поняли.
Я думаю, если у вас есть миллионы папок с файлами / папками, то это будет проблемой.
Также прочитайте: есть ли проблемы с наличием огромных папок?
Обычно нет, но в поведении файловой системы очень много переменных, поэтому есть некоторые обстоятельства, в которых это может иметь значение.
Для повседневной работы это имеет значение только для каталогов, к которым вы (или приложения от вашего имени) обращаетесь. При наличии большого количества файлов и подкаталогов (несколько тысяч или более) в одном каталоге вы можете испытывать проблемы с производительностью файловых систем на основе FAT, поскольку списки каталогов там хранятся относительно неструктурированным образом, но для NTFS это не так, поскольку листинги хранятся в индексированной структуре, которая более эффективна для поиска и изменения (если вы также используете Linux, между файловыми системами ext2 и ext3/ext4/ более новые есть аналогичная разница). Существуют абсолютные ограничения на количество объектов в любом каталоге, но вы редко их поражаете (они порядка 32 000 для FAT32 и 4 000 000 000 для NTFS).
Если ваша структура каталогов глубокая (например, c:\this\is\a\directory\structure\with\many\many\many\many\levels\my\god\look\how\deep\it\goes
) и / или имеет несколько длинных имен, тогда вы достигнете старого ограничения в 260 символов. IIRC Windows API и встроенные библиотеки и инструменты (включая Explorer) могут справляться с гораздо более длинными путями по сравнению с последними выпусками, но вы обнаружите, что многие сторонние утилиты по-прежнему принимают и применяют ограничение (или отказываются, если они испытывают путь длиннее этого предела). Также некоторые сторонние инструменты будут работать неэффективно при просмотре одного каталога с большим количеством файлов / подкаталогов внутри.
Если у вас есть много объектов в файловой системе (файлы, каталоги или оба), то любая операция всей файловой системы, такая как проверка целостности через chckdsk
, конечно, займет больше времени.