"tar cfz" и "tar cf - | gzip": они разные? (или как улучшить бэкап)

Я хочу ускорить процесс резервного копирования tar cfz, общий способ сделать это. Но изо дня в день мои резервные копии файлов растут и становятся медленнее.

Я думал о том, чтобы воспользоваться несколькими ядрами, доступными на моем сервере, и мне было интересно, есть ли разница между выполнением резервного копирования с tar cfz или отправка tar в gzip: tar cf - | gzip

Я думаю, что нет никакой разницы, потому что первый порождает два процесса (tar и gzip), так же, как и конвейер.

Если нет разницы, знаете ли вы какую-нибудь хорошую альтернативу, чтобы сделать это, не переходя на прирост? Я тоже смотрю на pigz, и это выглядит хорошо.

3 ответа

Решение

Когда вы говорите, что хотите использовать преимущества нескольких ядер, это означает, что ваш tar с gzip привязан к процессору, а не к IO, вы уверены, что это так? Если вы не уверены, что вам нужно запустить sar, iostat, top или проверить графики мониторинга и т.д., чтобы выяснить это. Никогда не стоит пытаться решить проблему, не понимая ее в первую очередь. Не скажу, что с вами это точно, но я думаю, что даже если есть сжатие с помощью gzip, вы, скорее всего, будете связаны с IO.

Если это связано с IO, и у вас есть несколько массивов, отдельный процесс для каждого массива может иметь смысл.

Я также второй совет Дэвида, чтобы рассмотреть дополнительные.

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

Почему вы не хотите идти по инкрементам? Я бы порекомендовал использовать http://rsnapshot.org/, даже если вы делаете это локально, поскольку у него есть возможность использовать жесткие ссылки, чтобы сэкономить место на диске, сохраняя при этом точные копии несколько раз

Если вы связаны с процессором (и не связаны!), Вы можете использовать pigz. Это распространит gzip по нескольким ядрам. Я использую это для своих резервных копий. Это капля в замене gzip:

tar cf - | pigz
Другие вопросы по тегам