Что самый быстрый путь состоит в том, чтобы объединить огромное количество файлов в единственный архив?

У меня есть каталог с огромным количеством изображений jpeg (больше чем 300 000 файлов), которые являются частью проекта. Это - своего рода кошмар, чтобы скопировать и переместиться - не из-за размера (общие ~3 ГБ), который является довольно большим, но все еще управляемым, но из-за количества файлов. Копирование их занимает безумное количество времени и существенно замедляет любую стандартную программу резервного копирования/копии.

Так как я должен сохранить те файлы, я думал, что объединю их в некоторый архив. Я пробую WinRar сжатием "хранилища", но это довольно медленно. На моей dev машине (2xSAS жесткие диски в Набеге 0, двойном i7) оценка составляет приблизительно 100 минут.

Дело не в этом плохо и на этот раз я готов ожидать (это - одноразовая операция), но мне любопытно знать, существуют ли более быстрые способы сделать это в случае, если у меня есть та же потребность в будущем (с менее мощной машиной и меньше времени).

1
задан 09.12.2010, 15:18

1 ответ

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

Опция "хранилища" в Winrar определенно ускорит его, но создание архива на том же диске, где файлы хранятся, замедлит его также. Создание архива на внешнем устройстве также препятствует производительности.

Идеально Вы хотели бы настроить свой сценарий резервного копирования с инструментом синхронизации (как rsync), который только скопирует новые и измененные файлы, существенно уменьшая время для окончания.

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

Для такого большого объема файлов Вам был бы нужен выделенный накопитель, предпочтительно быстрое (10K+rpm) один в этом, и предпочтительно в выделенном файловом сервере.

Вы могли бы также интересоваться портом окон tar. Tar является быстрым archiver, который разработан для дампа всех файлов в единственный архив .tar без любого сжатия.

3
ответ дан 12.12.2019, 10:37

Теги

Похожие вопросы