Hacker News new | past | comments | ask | show | jobs | submit login

Start with Postgres. Don't start with SQLite. SQLite is a file format, not a database; it scales atrociously (I've seen simple queries run for 10s of seconds with 100MB of data), it basically doesn't work in concurrent update scenarios, and the more data you put into it, the more pain you'll have migrating to Postgres.

Use SQLite if you want a file format where you don't want to rewrite the whole file for every update, or if you're in a situation or environment where it's not feasible to have an actual database server.

Sure if your use case is an analysis of interconnected entities and you either work alone or have someone to help you maintain a shared server.

Otherwise please don’t. I earn my living (amongst other things) due to organisations that went with this as blanket approach.

Use a right tool for the job. SQLite is fantastic for small to medium size datasets, shines in immutable case. Plus its maintenance and sharing cost is close to zero(something you will cherish once docker comes to play or if you want to learn or test some SQL without going through a pain of setting local permissions for your schemas).

I think SQLite is terrific. I don't know what you mean with that it is not a database. It's SQL querying capabilities are definitely database-worthy.

> SQLite is a file format

Well, you could say the same about Postgres...

They are both databases, and the lack of scalability or (not) being able to run as a service does not change that simple (and useful) fact.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact