Skip to content(if available)orjump to list(if available)

Why building a self-hosted SaaS is harder

impure

> Even low-risk fixes like renaming a database column can break a billing run when a job is currently using that data.

You should tell me how you rename database columns in AWS without breaking anything.

I’m not really sure what the point of this article is, it just seems to promote the company’s migration method with a misleading title. But I highly disagree that self-hosted is harder. With many self-hosted BaaS systems I’d argue it’s easier.

nchmy

Agreed on both counts - absolutely awful article, and self-hosting is not hard. You seemingly need a phd to do the most basic things on AWS

merth

I didnt read the article but how you do is, you should create new column without deleting the old one, and your code should be updated to use the new column, once you phase out the old version of the code, you backfill data from old column to new one, and delete the old column.

sgarland

Or you rewrite queries on the fly with ProxySQL or similar to use the new column name, and then deploy the new code. Can even insert a momentary pause at the proxy layer so no queries hitting the old name sneak through while you do the rename.

This method doesn’t work as well with distributed DBs, but to be fair they’re a terrible idea for most use cases.

ocdtrekkie

Some vendors I work with have transitioned to SaaS-only models and it's truly painful. I have a perfectly good enterprise datacenter, but I also rent some Windows VMs in Amazon's cloud apparently that I still have to manage the application updates myself, but have to put in a support ticket for the .NET system dependencies if they're missing, because you know, it's in the cloud now so I'm not supposed to access the underlying infrastructure.

I don't always have a choice, but if I do, I will always choose the vendor which will give me an on-premise product. And I guarantee you the companies that do will outlast the SaaS-only ones.