6

У меня очень большой том NTFS емкостью более 20 ТБ, содержащий миллионы файлов. Если я поместил все файлы в одну и ту же папку, я знаю, что при открытии папки в проводнике Windows производительность будет плохой.

Производительность все еще плохая, если я открываю один из файлов непосредственно в моей программе?

1 ответ1

4

Если вы открываете файл напрямую, неважно, сколько файлов у вас там есть. но если вы используете автозаполнение TAB для более быстрого доступа к файлу, это определенно повлияет на производительность.

Я нашел некоторые подсказки здесь -> https://stackoverflow.com/questions/197162/ntfs-performance-and-large-volumes-of-files-and-directories

Чтобы ответить на ваш вопрос более прямо: если вы просматриваете 100 000 записей, не беспокойтесь. Иди в себя. Если вы просматриваете десятки миллионов записей, то либо:

а) Планируйте разделить их на подпапки (например, допустим, у вас есть 100 миллионов файлов). Лучше хранить их в 1000 папках, чтобы у вас было только 100 000 файлов в папке, чем хранить их в 1 большой папке. Это создаст 1000 индексов папок вместо одного большого, который с большей вероятностью достигнет максимального числа фрагментов или

б) Планируйте запуск contig.exe на регулярной основе, чтобы сохранить индекс вашей большой папки дефрагментированным.

Читайте ниже, только если вам скучно.

Фактическое ограничение не на количество фрагмента, а на количество записей сегмента данных, в котором хранятся указатели на фрагмент.

Итак, у вас есть сегмент данных, в котором хранятся указатели на фрагменты данных каталога. Данные каталога хранят информацию о подкаталогах и подфайлах, которые каталог предположительно хранил. На самом деле, каталог ничего не "хранит". Это просто функция отслеживания и представления, которая создает иллюзию иерархии для пользователя, поскольку сам носитель данных является линейным.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .