News for hackers. Stuff that matters.
Re:Show HN: Baxx – Unix-friendly backup service by dmd on Monday March 25, 2019 @03:15PM (#19485783)
I evaluated Borg and Restic and found that both of them fall over once you get to (what I consider to be) production level volumes; in my case that's ~1 PB and in the range of a billion files.

Sadly, the only thing I've found so far that works at all at those scales is Bacula, and that is file-based -- i.e., if you have a gigabyte file that changes by one byte, it backs up the whole gigabyte again. Not ideal.

Re:Show HN: Baxx – Unix-friendly backup service by 8fingerlouie on Tuesday March 26, 2019 @07:51AM (#19490845)
I can't say i've been testing with PB sizes, but for my "meager" 8TB backup, Borg works well. A daily backup & prune operation takes less than 20 minutes.

Restic falls over as soon as you cross 2TB sizes, and prune operations are painfully slow. Backing up 8TB took 4 weeks with Restic, and i gave up waiting for prune to finish. It was crossing the 24 hour mark, making it unsuitable for daily backups.

Re:Show HN: Baxx – Unix-friendly backup service by dmd on Tuesday March 26, 2019 @07:57AM (#19490880)
Yeah. I back up a few terabytes a day with no problem in Bacula.
Re:Show HN: Baxx – Unix-friendly backup service by wolfhumble on Monday March 25, 2019 @06:39PM (#19487407)
> Sadly, the only thing I've found so far that works at all at those scales is Bacula, and that is file-based -- i.e., if you have a gigabyte file that changes by one byte, it backs up the whole gigabyte again. Not ideal.

Would it possible to split those bigger files before doing backup (log files with log splitters, sql databases with incremental specialised backup tools like e.g. xtrabackup), or are these e.g. image files with different versions?

I really like the concept of byte level deduplication, but have often thought the price you pay for the space reduction might not be worth it considering today's network speed as well as storage sizes and prices.

Would be interesting to hear your experience concerning this!

Re:Show HN: Baxx – Unix-friendly backup service by dmd on Monday March 25, 2019 @06:55PM (#19487533)
I'm definitely looking into what I can do as far as getting logs rotated (and thus split) better, but a lot of what I back up are legacy medical systems where making any kind of change is extremely difficult both technically and politically.
Re:Show HN: Baxx – Unix-friendly backup service by dspillett on Monday March 25, 2019 @09:01PM (#19488321)
A slightly hacky method might be an overlay filesystem (using FUSE or similar) that mirrors the underlying filesystem for small files but represents the larger ones as smaller units (so bigfile becomes bigfile.block0000, bigfile.block0001, ...). That way only the changed block would get transferred if you one-byte change is a modify or append rather than on insert or delete.

If the backup service is using file timestamps as the only key to refresh then it would have to store the last modification date and a good hash of each block, and when the date of the file being mirrored is updated scan each block to see if there is a change there and update the stored hash and timestamps accordingly. This would need to be orchestrated to reduce the risk of temporary corruption if there are several updates and the rechecking process coincides with a backup sweep (i.e. make sure you don't present updated dates for any block until you can present them for all needed).

For restoration, you either manually concatenate the parts or have an overlay filesystem that operates in reverse: showing the smaller block files as a single large unit.

You'd have to very thoroughly test the overlays and their interaction with the backup service before risking it on important data, so it might not be something you would genuinely consider...

Re:Show HN: Baxx – Unix-friendly backup service by dmd on Monday March 25, 2019 @09:55PM (#19488630)
Dude. That’s more than just “slightly” hacky. Points for the idea though.
Re:Show HN: Baxx – Unix-friendly backup service by dspillett on Tuesday March 26, 2019 @04:15AM (#19490029)
Manic me has some wonderful ideas that are simultaneously excellent and terrible. I have to keep a careful eye on him in the day job! One of these days I intend to implement and collect a few of his musings under the banner "the ministry of silly code".
Re:Show HN: Baxx – Unix-friendly backup service by wolfhumble on Monday March 25, 2019 @07:55PM (#19487937)
Okay, I see. Thanks for the feedback!
Re:Show HN: Baxx – Unix-friendly backup service by ofrzeta on Monday March 25, 2019 @03:40PM (#19486044)
In what way do they fall over? Also, did you file bug requests?
Re:Show HN: Baxx – Unix-friendly backup service by dmd on Monday March 25, 2019 @03:54PM (#19486148)
They start taking unrealistically large amounts of time to deal with their catalogs. For instance, with a 500 TB dataset, Restic on my (128 GB ram) server took over 4 days to do its prune operation.
Re:Show HN: Baxx – Unix-friendly backup service by zoratu on Monday March 25, 2019 @06:10PM (#19487201)
In that case, what do you use?
Re:Show HN: Baxx – Unix-friendly backup service by dmd on Monday March 25, 2019 @06:22PM (#19487286)
We're using Bacula, because in our case it's the only thing that works with our volume, and also works with tape (which is the only cost effective way we've found to archive multi petabyte datasets).

But I'm not very happy about it, because it's insanely overcomplicated for no really good reason, and because of it being file-based.

Re:Show HN: Baxx – Unix-friendly backup service by prirun on Wednesday March 27, 2019 @11:05AM (#19501523)
Backblaze has done some cost comparisons between LTO and cloud storage:

https://www.backblaze.com/blog/lto-versus-cloud-storage/

If you're interested, I'm doing experiments with another site with 500T to backup, where I added sampling and sharding to HashBackup (I'm the author).

Sampling allows you to do faster simulated backups to determine the best backup parameters to use. In his case, we determine that a very large block size - 64M - was the best way to backup his data.

Sharding automatically partitions the filesystem so multiple backup can run simultaneously to get backup speed in the 250-400 MB/s range.

It's more at the proof of concept stage, but having another large site to work with would be fantastic! A couple of the larger sites using HashBackup are EURAC (European Research Center) and HMDC (Harvard MIT Data Center)

Re:Show HN: Baxx – Unix-friendly backup service by dmd on Wednesday March 27, 2019 @04:12PM (#19505495)
Yeah, I read that Backblaze thing, and used their spreadsheet. Tape came out to be nearly 9x cheaper for us, given our large data set but extremely slow growth rate. Basically, we have a lot of data we need to protect from disaster, but it changes/gets added to very slowly, so capex (buy some tapes, put the data on tape, put the tapes in an offsite box and forget about them) is vastly cheaper than opex (pay by the month for hundreds of terabytes).