Remix.run Logo
grugdev42 7 hours ago

Maybe I'm not the target market for this, but how hard is it REALLY to manage a RDBMS?

Any Linux distro can have MySQL or Postgres installed in less than five minutes and works out of the box

Even a single core VPS can handle lots of queries per second (assuming the tables are indexed properly and the queries aren't trash)

There are mature open source backup solutions which don't require DB downtime (also available in most package managers)

It's trivial to tune a DB using .conf files (there are even scripts that autotune for you!!!)

Your VPS provider will allow you to configure encryption at rest, firewall rules, and whole disk snapshots as well

And neither MySQL or Postgres ever seem to go down, they're super reliable and stable

Plus you have very stable costs each month

viraptor 2 hours ago | parent | next [-]

> Maybe I'm not the target market for this, but how hard is it REALLY to manage a RDBMS?

It depends:

- do you want multi region presence

- do you want snapshot backups

- do you want automated replication

- do you want transparent failover

- do you want load balancing of queries

- do you want online schema migrations with millisecond lock time

- do you want easy reverts in time

- do you want minor versions automatically managed

- do you want the auth integrated with a different existing system

- do you want...

There's a lot that hosted services with extra features can give you. You can do everything on the list yourself of course, but it will take time and unless you already have experience, every point can introduce some failure you're not aware of.

nicoburns 7 hours ago | parent | prev | next [-]

I would have no concerns around reliability uptime running my own database.

I would have concerns around backups (ensuring that your backups are actually working, secure, and reliable seems like potentially time intensive ongoing work).

I also don't think I fully understand what is required in terms of security. Do I now have to keep track of CVEs, and work out what actions I need to in response to each one? You talk about firewall rules. I don't know what is required here either.

I'm sure it's not too hard to hire someone who does know how to do these things, but probably not for anything close to the $50/month or whatever it costs to run a hosted database.

trvz 6 hours ago | parent [-]

As for the CVEs: you just need to install from your OS’s package manager and run periodic updates. The communities take care of this very well.

written-beyond 4 hours ago | parent | prev | next [-]

Backups are a PITA I wanted to go exactly this route but even though I had VMs and compute I can't let any production data hit it without bullet proof backups.

I setup a cron job to store my backups to object storage but everything felt very fragile because if any detail in the chain was misconfigured I'd basically have a broken production database. I'd have to watch the database constantly or setup alerts and notifications.

If there is a ready to go OSS postgres with backups configured you can deploy I'd happily pay them for that.

arielcostas 7 hours ago | parent | prev | next [-]

It's not about it being hard, it's about delegating. Many companies are a bit less sensitive to pricing and would rather pay monthly for someone else to keep their database up, rather than spending engineering hours on setting up a database, tuning it, updating it, checking its backups, monitoring it and making it scale if needed.

Sure, any regular SME can just install Postgres or MySQL without even setting much up except with `mysql_secure_install`, a user with a password and an 'app' database. But you may end up with 10-20 database installs you need to back up, patch and so on every once in a while. And companies value that.

no_wizard 5 hours ago | parent | next [-]

On the pricing bit, I have to say edge driven SQLite/ libsql driven solutions (this is a lot of them) can be a mixed bag.

Cloudflare, Fly.io litestream offerings and Turso are pretty reasonably priced, given the global coverage.

AWS with Aurora is more expensive for sure and isn’t edge located if I recall correctly, so you don’t get near instant propagation of changes on the edge

The bigger thing for me is how much control you have. So far with these edge database providers you don’t have a ton of say in how things are structured. To use them optimally, I have found it works best if you are doing database-per-tenant (or customer) scenarios or using it as a read / write cache that gets exfiltrated asynchronously.

And that is where I believe the real cost factors come into play is the flexibility

jama211 5 hours ago | parent | prev [-]

Or at least they should. I’ve worked many places where thousands of dollars in engineering hours were wasted on something after they refused to use a service for a fraction of the cost. Some companies understand this but others don’t.

lateforwork 5 hours ago | parent | prev | next [-]

> Maybe I'm not the target market for this, but how hard is it REALLY to manage a RDBMS?

It is not. You can provision a free Postgres instance with a single click: https://neon.new/

jonathanstrange 5 hours ago | parent [-]

Yes, but there is nothing about pricing on this page. That doesn't make sense to me.

lateforwork 5 hours ago | parent [-]

Neon is from Databricks. Here's their pricing page: https://neon.com/pricing

pier25 7 hours ago | parent | prev | next [-]

One instance maybe but multi regional?

wahnfrieden 7 hours ago | parent | prev | next [-]

Look into the capabilities of what I consider the leading edge of open source RDBMS managed solutions, Yugabyte: https://www.yugabyte.com

And tell me how easily you can achieve this "out of the box"

If you don't care about business continuity or high availability then everything gets easier

> And neither MySQL or Postgres ever seem to go down, they're super reliable and stable

The box they're on goes down

senko 7 hours ago | parent [-]

> The box they're on goes down

So? Not everyone needs 99.999999% availability.

stanmancan 7 hours ago | parent | next [-]

The vast majority of products with paying customers need better availability than “database went down on Friday and I was AFK until Monday, sorry for the 3 day downtime everyone”

senko 6 hours ago | parent [-]

If you're offering a hosted service, I've got bad news for you.

Serverless, managed databases and even multicloud won't save you. You'll still have to be on call.

Don't want to be on call? Design your stuff so it works local first.

watermelon0 2 hours ago | parent [-]

Local first stuff can also break, so that's not a foolproof plan.

wahnfrieden 7 hours ago | parent | prev | next [-]

> If you don't care about business continuity or high availability then everything gets easier

stronglikedan 7 hours ago | parent | prev [-]

And some do, so what's your point?

senko 7 hours ago | parent [-]

Read the entire thread to find out.

themafia 2 hours ago | parent | prev [-]

> Any Linux distro

What is the upgrade path?

How often do they release?

Do I have to worry about CVEs?

Who is doing network security?

Who is testing that security?

Where are my credentials stored?

Do I have a dashboard that tracks the hundreds of resources I'm responsible for including this new one?

> Plus you have very stable costs each month

I'm sick and tired of managing linux boxes. It simply doesn't scale in any reasonable way.