2007-10-26

Tape Backups: Keeping the Tape Streaming

An LTO-3 tape drive requires a pretty high sustained data input rate in order to keep streaming. If the tape cannot be kept streaming, it will stop and restart, and possibly start “shoe-shining”: frequent stopping and restarting due to buffer under-runs. This behaviour incurs much more wear and tear on the tape and drive.

There are several things I have tried with good results to reduce or avoid this problem:

  • Disable compression on the tape drive.
  • Use previous generation media (LTO-2 media should work fine in an LTO-3 drive, but at LTO-2 speeds).
  • Use the host system’s RAM to buffer the stream.

The third option assumes your host system has quite a bit of free memory, but can be very effective. A useful utility for doing this is mbuffer. In the following example, a 1 GiB buffer is used (-m 1024M), with a tape block size of 262 144 bytes (-s 262144), and the output rate is limited to 25 MiB/s (-R 25M). The input stream is provided by tar, using the same block size (tar measures it in units of 512 bytes). You may have to tune the rate to suit the source drive and workload.

$ tar -b 512 -cpf - /.../wherever | mbuffer -s 262144 -R 25M -m 1024M -P 100 --md5 -f -o /dev/nst0

No comments: