Сколько файлов рекомендуется иметь в папке Windows (NTFS)?

у нас есть проект, который представляет собой большой архив файлов изображений... Мы пытаемся разбить их на подпапки в основной папке архива. Каждая подпапка содержит до 2500 файлов.

Например:

C:\Archive
C:\Archive\Animals\
C:\Archive\Animals\001 - 2500 files...
C:\Archive\Animals\002 - 2300 files..
C:\Archive\Politics\
C:\Archive\Politics\001 - 2000 files...
C:\Archive\Politics\002 - 2100 files...

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

  • Позже метаданные EXIF ​​файлов извлекаются и индексируются для ключевых слов, которые должны быть добавлены в индекс Lucene... (это делается службой Windows, которая находится на сервере)

person Denis    schedule 21.03.2011    source источник
comment
Будете ли вы обращаться к папке только локально или по сети? Это имеет большое значение.   -  person Mark Ransom    schedule 22.03.2011
comment
Доступ к папке будет осуществляться только локально службой Windows, имеющей компонент FileSystemWatcher, ожидающий добавления или удаления файлов. Компонент способен обрабатывать большие пакеты новых файлов...   -  person Denis    schedule 22.03.2011


Ответы (1)


У нас есть приложение, в котором мы стараемся хранить не более 1000 файлов в каталоге. По крайней мере, под Windows мы заметили резкое снижение производительности по сравнению с этим числом. Теоретически в папке может храниться до 4 294 967 295 файлов в Windows 7. Обратите внимание, что, поскольку ОС сканирует папку, выполнение поиска и списков очень быстро ухудшается по мере добавления большого количества файлов. Как только мы дошли до 100 000 файлов в папке, она стала почти полностью непригодной для использования.

Я бы порекомендовал еще больше разбить животных, возможно, по первой букве имени. То же и с другими файлами. Это позволит вам больше разделять вещи, поэтому вам не придется беспокоиться о производительности каталога. Лучший совет, который я могу дать, — выполнить несколько стресс-тестов вашей системы, чтобы увидеть, где производительность начинает падать, когда в каталоге достаточно файлов. Просто имейте в виду, что вам понадобится несколько тысяч файлов, чтобы проверить это.

person Scott    schedule 21.03.2011
comment
Некоторые другие хорошие сообщения: stackoverflow.com/questions/1613087/ stackoverflow.com/questions/466521/ - person Scott; 22.03.2011
comment
Конечно, спасибо, в архиве на данный момент около 2.000.000 файлов для проверки :) (конечно, он весь разбит на папки и подпапки, но в каждой до 2500 файлов... ) - person Denis; 22.03.2011
comment
если вы не перечисляете файлы, а просто открываете их, 400 КБ файлов в одной папке - это нормально для NTFS. Я сделал замеры и очень удивился этому факту. - person Eugene Mayevski 'Callback; 22.03.2011
comment
Люблю измерения и факты :) - person Denis; 20.06.2012