Which database do you use?

Hello everyone,
can you please share your experience with the database you use for your startups answering these simple questions?

  1. Which database is it?
  2. Where do you host it?
  3. What do you lack with the solution you use?

Let me answer my own questions

  1. MongoDB
  2. mLab
  3. Lack of the convenient way to create new records; there is no way to use it in iOS apps; sometimes it’s hard to create a query.

Update. Thanks for sharing your database experience! Please keep going and, if you can share, why I choose this specific database, add this information too. Thanks!!

What’s the point?

Mongo, for instance, is a document DB with no transactions, and say MySQL is a tuple-based DB with full ACID. Should I trade MySQL for MongoDB just because there are 3 answers with Mongo and 1 with MySQL? Not if I need the transactions!

The point is in the question. Which database do you use? (Note, I’m not asking why do you use it.)

This question has no point. You can ask about languages, web frameworks, whatnot. It really either makes no difference, or depends on project requirements.

These random answers won’t help you choose your own DB.

This question could have a point.

1 Like

RethinkDB

Because can’t answer lower than 20 characters, so I write this paragraph.

RethinkDB

Thanks, where do you host it?

These random answers won’t help you choose your own DB.

Hmmm… why random? I ask which database do YOU use? Do you use any databases for your projects? Which one is it?

Okay, I think I got your point. But think about my question as about kinda survey, that’s it. The only thing I want to know is just a stats. Numbers. For me currently, it absolutely doesn’t matter why you use that or this database. Just which one.

Virtual Private Server. DigitalOcean.

  1. Postgres
  2. AWS
  3. Nothing.
  1. Firebase
  2. The Great Googly Moogly in the Cloud (Google)
  3. More hours in each a day.

Edit: explaining why…

Firebase might seem like an odd choice for someone who uses MSSQL in his day job and has 22 years experience with it (omg has it really been that long?! Since v6.0 in 1995, so yeah).

But, that is precisely why!

First, using a fresh database paradigm (and fresh tech stack, bottom to top) for a real app with real, paying customers forces deep, focused learning. Looking at the same problems from a different perspective, and solving those problems with a different toolbelt gives renewed insight into how I look at problems in the old sphere of knowledge.

Second, a current employer can never rightly lay claim to my work, as the entire stack is entirely novel from what I work with at the 9-5.

Third, sysops. In my stack, starting with Firebase, sysops are someone else’s concern. Yes, this does come at a price. I build and maintain SaaS apps and eCom sites for a living at the day job, so I know how much care and feeding can be required just to keep the server racks happy and humming along. As a solo founder, I need to delegate as much as possible to leave time to concentrate on more important things like product, customer support, and marketing. Someday, if I can ever burn the boats and concentrate full time on this app, maybe I reconsider this stance, but for now, let someone else cut the lawn, let someone else keep the database running fast. And for all its many shortcomings, Firebase is verifiably and consistently fast.

I just started a new project and will use the new Firebase Database.

The whole firebase thing doesn’t fit every project but when it does fit, it saves a fair amount of time on basics like auth and db storage.

I keep it simple… Self hosted MySQL for data, Redis for Queues, com and other real time states… … Would need to have a real good reason to change…

I use Postgres pretty much exclusively when I need a relational database, and Redis for queuing and short-term storage. Hosting varies: we have managed hardware for our primary databases and use Heroku Postgres for systems deployed to Heroku.

  1. MongoDb
  2. Self hosted
  3. Automated backups/replication (can make provision for this but not yet worth the effort)

We use SQL Azure (hosted) on Azure and Redis for caching. Also use blob storage for documents and images.

Well, on my current SaaS: https://www.contabulo.com,
I’m using Postgres as the main database (it’s pretty much my default choice unless an application cries out for something NoSQL), and Elasticsearch for my search index. I’m hosting both on VMs running on Linode. I’m storing user uploads on AWS S3 (which isn’t a database, really, but meh).

  1. Mongodb
  2. Digital Ocean
  3. Off-line support.

I use SQLite with Entity Framework (code first) for tvCAD, my Windows desktop app. It’s hosted on the local file system as an adjunct to a user project, they can save and load different snapshot-versions of the same database. SQLite is ephemeral by nature so it doesn’t really suit web-server scenarios but it’s perfect for desktop apps.

What does it lack? Easy schema migrations, mostly because you can’t delete or rename columns. It doesn’t do JSON natively but storing them as strings and using JSON.NET is surprisingly performant and works just as well for serialized objects .

I know the OP didn’t ask “why” but others may like to know, at least for context.

1 Like

Thanks, but even if I didn’t ask the reasons why you choose your database, it would be great to know :slight_smile:

  1. MySQL
  2. AWS RDS
  3. It has surprising bugs or limitations. For example, you can only index varchar columns that are emoji-capable if they have a length of 191 or less.

I wish I had gone with PostgreSQL.