Ось кілька порад від когось із оточення, де у нас є папки, що містять десятки мільйонів файлів.
- Папка зберігає інформацію про індекс (посилання на дочірні файли та дочірню папку) у індексний файл. Цей файл вийде дуже великим, коли у вас багато дітей. Зауважте, що він не розрізняє дитину, яка є папкою, і дитину, яка є файлом. Єдина відмінність полягає лише в тому, що вміст цієї дитини - це або індекс папки дитини, або дані файлу дитини. Примітка: я дещо спрощую це, але це стає зрозумілим.
- Файл індексу буде фрагментованим. Коли він буде занадто фрагментарним, ви не зможете додати файли до цієї папки. Це пов’язано з тим, що існує обмеження на кількість дозволених фрагментів. Це за дизайном. Я підтвердив це в Microsoft при виклику служби підтримки. Тож хоча теоретичний ліміт кількості файлів, які ви можете мати у папці, становить декілька мільярдів, удача, коли ви почнете потрапляти на десятки мільйонів файлів, оскільки ви спочатку натиснете на обмеження фрагментації.
- Однак це не все погано. Ви можете використовувати інструмент: contig.exe для дефрагментації цього індексу. Це не зменшить розмір індексу (який може досягати декількох гігів для десятків мільйонів файлів), але ви можете зменшити кількість фрагментів. Примітка: Інструмент Дефрагментації диска НЕ буде дефрагментувати індекс папки. Це дефрагментує файлові дані. Тільки інструмент contig.exe дефрагментує індекс. FYI: Ви також можете використовувати це для дефрагментації даних окремого файлу.
- Якщо ви зробите дефрагментацію, не чекайте, поки ви не досягнете максимальної # межі фрагмента. У мене є папка, в якій я не можу дефрагментуватись, тому що я зачекав, поки не пізно. Наступним моїм тестом є спробувати перемістити деякі файли з цієї папки в іншу папку, щоб побачити, чи зможу я її дефрагментувати. Якщо цього не вдасться, то я мав би зробити це 1) створити нову папку. 2) перемістити партію файлів у нову папку. 3) дефрагментуйте нову папку. повторюйте №2 та №3, доки цього не буде зроблено, а потім 4) видаліть стару папку та перейменуйте нову папку відповідно до старої.
Щоб відповісти на запитання більш прямо: Якщо ви переглядаєте записи на 100 К, не хвилюйтесь. Іди вибивати себе. Якщо ви переглядаєте десятки мільйонів записів, то будь-яке:
а) Складайте плани поділити їх на підпапки (наприклад, скажімо, що у вас є 100М файлів. Краще зберігати їх у 1000 папках, щоб у вас було лише 100 000 файлів у папці, ніж зберігати їх у 1 великій папці. Це створить 1000 індексів папок замість одного великого, який, швидше за все, перевищить максимальну кількість меж фрагментів або
b) Плануйте регулярно запускати contig.exe, щоб індекс вашої великої папки був дефрагментованим.
Читайте нижче, лише якщо вам нудно.
Фактична межа не на число фрагмента, а на кількість записів сегменту даних, що зберігає вказівники на фрагмент.
Отже, у вас є сегмент даних, який зберігає покажчики на фрагменти даних каталогів. Дані каталогів зберігають інформацію про підкаталоги та під-файли, які нібито зберігав каталог. Насправді каталог нічого не "зберігає". Це лише функція відстеження та презентації, яка представляє користувачеві ілюзію ієрархії, оскільки сам носій інформації лінійний.