Как создать миллион файлов

Обновлено: 06.07.2024

У нас есть жесткий диск на 600 гигабайт и почти полный. Он был заполнен 18 501 765 файлами (в основном небольшими 19 тыс. Изображений) и 7 142 132 папками. Очень сложно выяснить, куда именно ушло все пространство. Наши регулярные процедуры очистки не очищают достаточно места, что означает, что нам нужно посмотреть на этот диск в целом и определить, что там, а что можно переместить или удалить. Мы перепробовали несколько приложений, и пока они либо взорвались, либо просто запустились за удивительное количество времени.

  • Операционная система: Windows Server 2003
  • Файловая система: NTFS

Space ObServer смог прочитать 18 501 765 файлов и 7 142 132 папок, практически не занимая память. Я уверен, что это в основном из-за того, что он использует SQL-сервер для хранения всех данных. Это, к сожалению, самый дорогой из всех продуктов по цене $ 259,95 за сервер.

Во время исследований я попробовал несколько разных решений, как платных, так и бесплатных. Я держал список продуктов, которые я попробовал ниже для всеобщей информации.

  • JDiskReport - останавливается на 10 миллионов
  • WinDirStat - останавливается на 10 миллионов
  • SpaceMonger - Пропуск из-за упоминания о памяти RAM
  • SpaceSniffer - останавливается при неизвестном - сбой
  • FolderSizes - останавливается на 12 миллионов (3 миллиона папок)
  • TreeSize Professional - Пропуск из-за упоминания о памяти RAM

Обновление № 1 : сервер, который я пытаюсь проанализировать, имеет 2 ГБ ОЗУ, и большинство продуктов, которые я пытаюсь использовать, стараются сохранить информацию о файлах / папках в памяти. Это имеет тенденцию слишком быстро заканчиваться с 18 501 765 файлами и 7 142 132 папками.

Обновление № 2 : Похоже, что разработчики WinDirStat были достаточно вовлечены, чтобы сказать нам, что он может компилироваться под 64-битную версию. Это дает ему больше памяти для работы, но я не уверен, будет ли этого достаточно, если они не сохранятся на диске.

Это Windows Server 2003. Я отредактировал пост, чтобы показать это сейчас. Есть ли какие-либо из них абсолютно бесплатно, условно-бесплатно или с открытым исходным кодом? Очень приятно, что вы таким образом проинформировали нас о том, что не удалось, работает и ожидает рассмотрения. Дает мне хорошие идеи.

Предполагая, что ваша ОС - Windows .

В любом случае, нарезка миллионов файлов на табло всегда займет много времени и будет ограничена вводом / выводом самого диска. Я рекомендую TreeSize Professional . Или, может быть, SpaceObServer . Вы также можете попробовать бесплатную версию TreeSize.

Я согласен. Но эти два продукта я не пробовал, так что я посмотрю.

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

Стандартная 32-разрядная сборка ограничена 10 миллионами файлов и 2 ГБ ОЗУ, но исходный код будет успешно создан как 64-разрядное приложение. Тот факт, что рассматриваемый сервер имеет только 2 ГБ ОЗУ, может быть проблематичным в этом конкретном случае, но большинство серверов с таким большим количеством файлов будет иметь гораздо больше ОЗУ.

Правка № 1: С сожалением обнаружил, что при тестировании на томе объемом 4 ТБ, содержащем миллионы файлов, WinDirStat Portable потерпел крах после индексации около 6,5 миллионов файлов. Это может не сработать для исходного вопроса, если диск содержит более 6 миллионов файлов.

Читайте также: