У меня есть только один файл, который я хочу сделать резервную копию. Этот файл будет либо в двоичном формате, либо я могу запустить утилиту командной строки, которая преобразует его в текстовый файл, если это поможет решению для резервного копирования. На данный момент размер файла составляет около 500 МБ, но он может легко увеличиться до нескольких гигабайт и даже больше.
Я ищу решение для резервного копирования, которое позволит мне создать несколько версий (например, ежедневно, еженедельно, ежемесячно) этого файла, но не займет слишком много места на диске.
Например, скажем, я хочу ежедневное, еженедельное и ежемесячное резервное копирование. Это 3 файла. Предполагая, что размер остается примерно одинаковым, это займет 1,5 ГБ пространства. То, что я хочу, - это очень эффективный алгоритм (похожий на различие SVN), который только сохраняет различия. Так, например, ежемесячная резервная копия будет полной резервной копией (500 МБ), а еженедельная и ежедневная будет просто разницей, которая, вероятно, будет даже меньше, чем 2 МБ каждый. Таким образом, мои 3 файла будут занимать всего 504 МБ вместо 1,5 ГБ.
Я знаю, что многие утилиты резервного копирования имеют схожую функциональность, но они фокусируются в основном на различиях самих файлов (например, какие файлы были добавлены / удалены), а не на различиях содержимого файла (например, какие строки / символы были добавлены / удалены). Очевидно, почему одно из этих решений не поможет, если для резервного копирования используется только один файл.
Дополнительные функции, которые я хотел бы, но не критичные:
- Встроенный в Windows XP.
- Зашифрованные резервные копии это плюс.
Обновление: я пробовал Areca Backup и не получил желаемых результатов. Это процесс, который я использую:
- Создать большой файл (например, 600 КБ)
- Поддержите это
- Измените одну букву в этом файле и сохраните ее
- Резервное копирование снова
- Изучите размер архива. Если это почти в два раза (например, 1,2 МБ, файл был скопирован, и это не та резервная копия, которую я ищу). Если размер очень близок к исходному размеру (например, 601 КБ, это резервное копирование выполнено успешно).
Как видите, нет смысла снова хранить 600 КБ, когда был изменен только один символ, поэтому я ищу более разумное решение для резервного копирования.
Я попытался использовать режим хранения "Delta", а также инкрементное и дифференциальное резервное копирование в Areca, но все они не прошли мой тест.
Я также попробовал DeltaCopy, который говорит:
В общем, DeltaCopy - это программа быстрого инкрементного резервного копирования с открытым исходным кодом. Допустим, вам нужно сделать резервную копию одного файла размером 500 МБ каждую ночь. Обычная копия файла будет копировать весь файл, даже если изменилось несколько байтов. DeltaCopy, с другой стороны, будет копировать только часть файла, которая была фактически изменена. Это уменьшает скорость передачи данных до 500 МБ, экономя время и пропускную способность сети.
Проблема в том, что он использует эти различия только для передачи по сети. Это не позволяет вам сохранять несколько версий файлов. Он также сильно зависит от технологии клиент / сервер, которая мне не нужна. Мне просто нужно что-то, что работает локально на моем ПК.