Choosing self-managed databases

I could choose to pay a cloud service for a managed database but instead this week I chose to set up WAL-based continuous backup to R2 and point-in-time recovery for my Postgres instance.

This would have been unthinkable for me a year ago but here we are. 

All the processes are meticulously documented in a git repo, and I did a disaster recovery test today which spun up a new server and restored the DB. It was quick and seemingly seamless.  

This experience has been encouraging and it’s certainly more comforting knowing I have point-in-time recovery rather than the previous hourly pg_dump backup strategy. I’ve never had to do a restore procedure with a managed database, but I’m sure it’s simple and only requires a few clicks in a UI, but perhaps it’s actually harder to test than my scriptastic approach? I don’t know, but the reality is that we can now choose to do hard things when before we couldn’t, so why shouldn’t we?

I think in a real disaster it would make sense to install Claude and my docs repo on the server and have the AI execute the procedure for me. It wouldn’t be stressed, and it would have a better grip on the situation. Of that I have no doubt. 

In tech today, we’re truly standing on the shoulders of giants. I’ve been around this block for decades now, but the potential of the AI revolution continues to astonish me like nothing before it.