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

Увеличивает ли архивирование небольших файлов в один большой tar-файл перед их записью на ленту уровень потери данных при возникновении ошибки?

Недавно я смотрел наши резервные копии и заметил, что пропускная способность ленты намного ниже при записи большого количества небольших файлов, поэтому я подумал о том, чтобы поместить эти маленькие файлы в один большой tar-файл и записать который записывать на пленку вместо небольших файлов напрямую. (Так же, как Tar: избегать архивирования файлов больше определенного размера)

Однако, когда я затем запишу этот tar-файл на ленту, возникнут ли у меня проблемы, если при этом произойдет ошибка ленты? Я имею в виду, потеряю ли я весь этот (большой) файл, содержащий множество файлов меньшего размера, или я просто потеряю определенный блок этого файла tar и смогу восстановить остальные файлы?

Кроме того, как программы резервного копирования, такие как Amanda или Bacula, справляются с большим количеством небольших файлов? Они просто записывают файлы по отдельности на ленту или делают что-то вроде этого предварительного тарринга в более крупные файлы, которые будут записываться быстрее?

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

Во-первых: резервное копирование файлов tar вместо отдельных файлов настоятельно рекомендуется, чтобы избежать эффект сияния обувиЭто то, что вы испытываете: компьютер не может доставлять файлы достаточно быстро, и ленточный накопитель должен остановиться и, прежде чем снова начать запись, отмотайте немного назад, чтобы найти точную точку, где закончился поток. Это не только намного медленнее, но и приводит к значительному износу как накопителя, так и ленты (современные накопители, например, LTO4, как говорят, лучше предотвращают / уменьшают этот эффект, поскольку они замедляются, когда их входной буфер пуст и не работает. перематывать не нужно).

Во-вторых: поврежденные разделы tar-файлов можно пропускать, по крайней мере, для несжатых архивов.

В-третьих: Bacula действительно может (и должна) быть сконфигурирована для создания файла спула, который затем записывается на ленту. К сожалению, он не может одновременно выполнять буферизацию в буферный файл и записывать другой на ленту, что снижает скорость резервного копирования примерно на 50%.