Jump to content
David Schwartz

your own DB vs. 3rd-party?

Recommended Posts

If you're building a web app that needs to save data in a back-end DB, I'm curious about the trade-offs between buiding your own DB using MySQL, MariaDB, SQL Server, etc., versus going with a 3rd-party solution like AirTable, DreamFactory, or something similar. (Suggestions for such services are welcome.) 

 

EDIT: I stumblled onto this and they've got a bunch of 3rd-party services that they work with. (I'm pointing it out as a source of info; I don't know anything about the vendor.)

 

https://retool.com/integrations/

 

Honestly, over the past 20 years or so, I've worked on plenty of apps that rely on back-end DBs of various flavors (namely SQL Server, MySQL, Oracle, and PostgreSQL), but they've all been managed by an IT Dept. In theory, there's not much required. But it seems every one has had one or two major melt-downs per year. I like to focus on what I'm best at and leave other stuff like this to people who understand it more than I do.

Edited by David Schwartz

Share this post


Link to post

I would go with Supabase. In the end it's "just" postgreSQL, but they sprinkled tons of sugar on top of it.

  • Like 1

Share this post


Link to post

Depends. As for me, your own is your own and any 3rd party service is just another link in the chain that you can't control. For the quick start they're nice though

Share this post


Link to post

The more "fancy" you go, the more unusual challenges you'll meet.

I like vanilla.  It goes with everything, and the problems I get, have already been solved by others.

 

I think the real question is

- Do I need actual SQL abilities or do I just need a basic keystore (key = value(s)).

 

If you need SQL, you need to know

- How scalable does it need to be

- Do I want to go free/self-hosted or paid/hosted (or the variations in between) - Usually, you get what you pay for.


If you just need a keystore, someone else needs to chip in, as I've only done SQL DBs.

MongoDB was all the rage for a while in the web store world. Not sure if it has been superceeded by something newer and more shiny?

 

1 hour ago, Fr0sT.Brutal said:

your own is your own and any 3rd party service is just another link in the chain that you can't control

This is true - but even so, enterprise solutions are swinging heavily towards cloud hosting and third party services.

That is worth noticing.

 

 

  • Like 1

Share this post


Link to post

If you use "normal" databases liky MySQL, Firebird etc., network administrators should be familier with them and can backup them, restore, move to another server etc. - form the point of view of a network administrator, this is much better than having to work with something unknown.

  • Like 1

Share this post


Link to post

Don't forget that you also have managed services for databases. For example, AWS RDS. It automatically handles some manage tasks for you, like installing, upgrading, backup, replication, etc. And still, you have the advantages of DB, which is you still "own it".

  • Like 1

Share this post


Link to post

"... In theory, there's not much required. But it seems every one has had one or two major melt-downs per year. ..."

 

Really, I have run a Postgres server for 15 years, one "meltdown" only and that was due to Linux.

 

Not much traffic, storing about 1 million records per year. But still.

 

More impressive, Dell server with three 15' rpm disks. You do the math :classic_smile: The quality of that server is just fantastic.

Edited by Skrim
  • Like 1

Share this post


Link to post

I worry about the maintenance of applications using some of these cloud services. Sourcing a replacement library/component/backend between major releases or updates is a walk in the park compared to having to replace a cloud service possibly live or at least on the cloud service provider's schedule vs your own. 

  • Like 1

Share this post


Link to post
2 hours ago, Brian Evans said:

I worry about the maintenance of applications using some of these cloud services. Sourcing a replacement library/component/backend between major releases or updates is a walk in the park compared to having to replace a cloud service possibly live or at least on the cloud service provider's schedule vs your own. 

 

Time-to-market is my primary driver right now. I can integrate a 3rd-party API in a day or two. Reinventing what they've already built is just not a luxury I can afford at the moment.

 

Edited by David Schwartz

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×