Назад | Перейти на главную страницу

Оценка времени, необходимого для копирования большого файла

Мне нужно скопировать относительно большой файл (6 ГБ) на другой сервер. Чтобы обеспечить согласованность, я должен «заблокировать» этот файл и не использовать его во время передачи. Я, конечно, хочу минимизировать время простоя, но перед этим я также хочу оценить время, которое потребуется для этого.

Я вижу 2 решения:

В целом, как я могу сравнить оба подхода и решить, какой из них лучше для меня?

Честно говоря ... есть несколько способов противостоять этому. У меня есть несколько серверов, на которых мне нужно копировать файлы, которые постоянно используются ... поэтому я планирую "окно обслуживания" в несколько минут, где я могу заблокировать файлы ... создать моментальный снимок (используя dm-snapshot), верните сервер в оперативный режим, а затем сделайте все, что угодно с копией файла, сделанной в момент его создания. Это позволяет мне получить стабильную версию файла ... и вернуть сервис в оперативный режим с минимальным временем простоя. Впоследствии ... я могу удалить снимок, не затрагивая работающий сервер. В вашем случае ... вы можете скопировать файл снимка размером 6 ГБ в удобном для вас темпе по мере необходимости ... не беспокоясь о том, что живая версия файла испортит процесс копирования.

http://tldp.org/HOWTO/LVM-HOWTO/snapshots_backup.html

Создайте фиктивный файл для передачи:

time dd if=/dev/urandom of=~/testfile bs=1M count=512
time cp testfile testfile2 #How long it takes to copy

time scp testfile user@otherserver:/path

/dev/urandom выбран, чтобы избежать повышения от сжатия. SCP должен интерактивно сообщать вам, какова скорость. Базовая математика должна позволять экстраполяцию размеров файлов до 6 гигабайт.

Вы можете использовать утилиту * nix "Просмотр труб" наблюдать за этими процессами. Он предоставит вам индикатор выполнения и приблизительное время передачи.