Live data from Hacker News

Healthchecks.io now uses self-hosted object storage

blog.healthchecks.io

51–60 of 82 posts

Re: Healthchecks.io now uses self-hosted object storage

#51
As someone who has dealt with wacky storage issues/designs, a lot of this "felt" strange to me. Btrfs? Rsync? Then I got to the bottom and saw that they were only handling about 100 GB of data! At that scale, nearly anything will work great and TFA was right to just pick the thing with the fewest knobs.

At a previous job years ago, we had a service that was essentially a file server for something like 50TB of tiny files. We only backed it up once a week because just _walking_ the whole filesystem with something like `du` took more than a day. Yes, we should have simply thrown money at the problem and just bought the right solution from an enterprise storage vendor or dumped them all into S3. Unfortunately, these were not options. Blame management.

A close second would have been to rearchitect dependent services to speak S3 instead of a bespoke REST-ish API, deploy something like SeaweedFS, and call it a day. SeaweedFS handles lots of small files gracefully because it doesn't just naively store one object per file on the filesystem like most locally-hosted S3 solutions (including Versity) do. And we'd get replication/redundancy on top of it. Unfortunately, I didn't get buy-in from the other teams maintaining the dependent services ("sorry, we don't have time to refactor our code, guess that makes it a 'you' problem").

What I did instead was descend into madness. Instead of writing each file to disk, all new files were written to a "cache" directory which matched the original filesystem layout of the server. And then every hour, that directory was tarred up and archived. When a read was required, the code would check the cache first. If the file wasn't there, it would figure out which tarball was needed and extract the file from there instead. This only worked because all files had a timestamp embedded in the path. Read performance sucked, but that didn't matter because reads were very rare. But the data absolutely had to be there when needed.

Most importantly, backups took less than an hour for the first time in years.

Re: Healthchecks.io now uses self-hosted object storage

#53
post #51

As someone who has dealt with wacky storage issues/designs, a lot of this "felt" strange to me. Btrfs? Rsync? Then I got to the bottom and saw that they were only handling about 100 GB of data! At that scale, nearly anything will work great and TFA was right to just pick the thing with the fewest knobs. At a previous job years ago, we had a service that was essentially a file server for something like 50TB of tiny fi…

what happens if you suffer catastrophic failure, you'd lose up to one hour of data?

Re: Healthchecks.io now uses self-hosted object storage

#54
post #43

Given the individual file size and total volume, I'd argue it make sense to use move to local only storage. On a separate note, what tool is the final benchmark screenshot form?

The graphs are from Netdata. I'm using it to monitor the servers, and also feeding it some application metrics via its statsd interface.

Do you like Netdata? I'm looking into it. I'm curious if you use all the features or just a few.

Re: Healthchecks.io now uses self-hosted object storage

#57
"Our current (April 2026) object usage is: 14 million objects, 119GB"

I mean, I appreciate the openness about the scale, but for context, my home's personal backup managed via restic to S3 is 370GB. Fewer objects, but still, we're not talking a big install here.

This is pretty much like that story of, if it fits on your laptop, it's not big data.

Re: Healthchecks.io now uses self-hosted object storage

#59
post #57

"Our current (April 2026) object usage is: 14 million objects, 119GB" I mean, I appreciate the openness about the scale, but for context, my home's personal backup managed via restic to S3 is 370GB. Fewer objects, but still, we're not talking a big install here. This is pretty much like that story of, if it fits on your laptop, it's not big data.

My phone has 327.1G of storage in use right now :-) (years ago a friend of mine who was also old enough to complain about "640k" suggested that we should just denominate storage in dollars, so "reasonable" amounts scaled with Moore's law...)
Post reply on HN