Skip to content

bscp is slower than rsync #14

@adamgoryachev

Description

@adamgoryachev

I'm copying a bunch of LV's from the local machine to a remote machine. My old script did the following:

  1. Get the name of the next LV
  2. Snapshot the LV
  3. Calculate the number of "chunks" in the LV (chunksize = 1G)
    3a) Use dd to read the chunk from the snapshot, and write to a ramdrive on the local system
    3b) Use ssh to the remote system, and use dd to read the chunk from the remote LV to a ramdrive on the remote
    3c) Depending on time of day and day of week, either set the rate to 1.5m or unlimited
    3d) Use rsync with the rate to update the remote copy of the "chunk"
    3e) Use dd to write the remote chunk back to the LV
    3f) Delete the local chunk copy
    3g) loop back to 3a for the next chunk
  4. Delete the snapshot

The "new" script seemed like a much better solution, since it would save steps 3a, 3b, and 3e which should all be somewhat "slow" compared to just reading, and writing the changes. It simply replaced all of step 3 with bscp to copy the snapshot to the remote.

The old script took approx 36 hours to complete (max 36 hours, min 29.5 hours, avg 33.8 hours over 10 runs) , and my hope was that bscp would help to reduce it to closer to 24 hours (or less, since it no longer sets a bwlimit during the sync copy). However, it is taking significantly longer, the current run has taken over 72 hours, and is still not complete yet. This isn't the first run, just I don't have the logs from the previous runs.
Can anyone advise if they have seen bscp as being (significantly) less efficient than rsync, or am I doing something wrong? Is there an alternative?

For reference, the maximum speed of the connection is 20Mbps, and the total size of all LV's being copied is 5.4TB.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions