On Mon, Sep 27, 2021 at 9:30 AM Peter Humphrey <[email protected]> wrote:
>
> Thanks to all who've helped. I can't avoid feeling, though, that the main
> bottleneck has been missed: that I have to read and write on a USB-3 drive.
> It's just taken 23 minutes to copy the current system backup from USB-3 to
> SATA SSD: 108GB in 8 .tar files.

You keep mentioning USB3, but I think the main factor here is that the
external drive is probably a spinning hard drive (I don't think you
explicitly mentioned this but it seems likely esp with the volume of
data).  That math works out to 78MB/s.  Hard drive transfer speeds
depend on the drive itself and especially whether there is more than
one IO task to be performed, so I can't be entirely sure, but I'm
guessing that the USB3 interface itself is having almost no adverse
impact on the transfer rate.

The main thing to avoid is doing other sustained read/writes from the
drive at the same time.

It looks like you ended up doing the bulk of the compression on an
SSD, and obviously those don't care nearly as much about IOPS.

I've been playing around with lizardfs for bulk storage and found that
USB3 hard drives actually work very well, as long as you're mindful
about what physical ports are on what USB hosts and so on.  A USB3
host can basically handle two hard drives with no loss of performance.
I'm not dealing with a ton of IO though so I can probably stack more
drives with pretty minimal impact unless there is a rebuild (in which
case the gigabit ethernet is probably still the larger bottleneck).
Even a Raspberry Pi 4 has two USB3 hosts, which means you could stack
4 hard drives on one and get basically the same performance as SATA.
When you couple that with the tendency of manufacturers to charge less
for USB3 drives than SATA drives of the same performance it just
becomes a much simpler solution than messing with HBAs and so on and
limiting yourself to hardware that can actually work with an HBA.

-- 
Rich

Reply via email to