Out-Tridging Tridge by improving rsync
anchor.com.au
anchor.com.au
"The thing is, modern networks aren’t like that at all, they’re high bandwidth and low latency"
No they're not. Unless you mean two machines sitting side by side in a data center or perhaps within the same metro area connected via wired connections.
Two machines sitting on either coast of US with the best wired connectivity at either end are at least 70-80 ms away from each other. That's not "low" latency.
Connected via anything less than a perfect connection on either end, now you're looking at 100+ ms latency.
One of the ends is on non-wired internet connection (LTE, Wimax etc.) and now you're looking at 150+ ms and with high standard deviation (in ping latencies).
Slow pace of latency improvements is as much a fact of life as the slow pace of battery life improvements. Perhaps because both are constrained by hard physical limits of nature.
25 packets transmitted, 25 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 263.361/321.076/375.393/29.289 ms
(That's from Sydney Australia to a DigitalOcean Droplet in nyc1)It's honestly the use case I have the most often, and certainly one useful to have tools supporting the use case. This person seems to be worried about off-site backups, so I'm thinking "enterprise", not "cross-country home user".
Also, in case the FS is saving copies of the temp file and you don't like that, the --temp-dir option might help with that.
Then again, depending on how btrfs treats overwriting a file with a move, if the temp file had a timestamp in the name (patch probably needed) in some form before replacing the original, that might be good enough.
On the other hand, if you use a filesystem with copy-on-write snapshots and in-place modification of the changed files, you will only use as much disk space as there are changed blocks in the file for each version you keep. (Of course you have no additional redundancy if you keep n older version, as each bit of data is only stored once physically. But you only ever store one version of an unchanged file in the rdiff-backup scenario either, so you should alternate between different backup disks anyway.)
You can use cron to automate them, which is how I backup my linux system nightly. Totally recommend it for server and local backups.