Follow-up to an earlier post - rclone & borgContent:
I had posted a
feedback request last week on my planned usage of rclone. One rather a-hole comment spurred me to check if borg backup was a better solution. While not a fully scientific comparison, I wanted to post this in case anyone else was doing a similar evaluation, or might just be interested. Comments welcome!
I did some testing of rclone vs borg for my use-case of backing up my ~50TB unRAID server to a Windows server. Using a 5.3TB test dataset for backup, with 1043 files, I ran backups from local HDD disk on my Unraid server to local HDD disk on my Windows server. All HDD, nothing was reading from or writing to SSD on either host.
borg - running from the unraid server writing to Windows over a SMB mount.
Compressed size of backup = 5.20TB
Fresh backup - 1 days 18 hours 37 minutes 41.79 seconds
Incremental/sync - 3 minutes 4.27 seconds
Full check - i killed after a day and a half because it was already proven to be too slow for me.
rclone - running on the Windows server reading from unraid over SFTP.
Compressed size of backup = 5.22TB
Fresh backup - 1 day, 0 hours, 18 minutes (42% faster)
Incremental/sync - 2 seconds (98% faster)
Full check - 17 hours, 45 minutes
ComparisonSpeed wise, rclone is better hands down in all cases. It easily saturated my ethernet for the entire run. borg, which was running on the far more powerful host (i7-10700 vs i5-7500), struggled. iperf3 checks showed network transfer in both directions is equivalent. I also did read/write tests on both sides and the SMB mount was not the apparent chokepoint either.
Simplicity wise, both are the same. Both are command-line apps with reasonable interfaces that anyone with basic knowledge can understand.
Feature-wise, both are basically the same from my user perspective for my use-case - both copy/archive data, both have a means to incrementally update the copy/archive, both have a means to quickly test or deeply test the copy/archive. Both allow mounting the archive data as a drive or directory, so interaction is easy.
OS support - rclone works on Windows, Linux, Mac, etc. Borg works on Linux and Mac, with experimental support for Windows.
Project-wise, rclone has far more regular committers, far more sponsors than borg. Borg has far fewer regular committers and far fewer public sponsors. Borg 2.0 has been in development for 2yr and seems to be a hopeful "it will fix everything" release.
I'm well aware rclone and borg have differing use cases. I just need data stored on the destination in an encrypted format - rclone's storage format does not do anything sexy except encrypting the data and filenames, while borg stores in an internal encrypted repository format. For me, performance is important, so getting data from A to B faster while also guaranteeing integrity is the most important, and rclone does that. Maybe if borg 2.0 ever releases and ever stabilizes, maybe I'll give it a try again. Until then, I'll stick with rclone, which has far better support, is faster, and is a far healthier project. I've also sponsored ncw/the rclone project too :)
We are DataHoardingFreaks. A
@roadtopetabyte project