I know it's popular, but nowhere near to the level it should be.
I know it's popular, but nowhere near to the level it should be.
So, like, even more popular than that?!
I get the impression that it's used exactly as it should be, in systems that need a database but don't need clustering or failover strategies.
Even for those cases where you do need it, there are emerging options. You can handle replication 100% in business logic (something I personally enjoy), or you can use a path like dqlite to replicate the physical WAL log.
What do you think it "should be" and is missing?
The suggestion of Postgres is very often not required, because there isn't a need for multiple users, different permissions, password protection, etc.
I mean, you could probably use SQLite in many simple cases which currently use Postgres (personal servers, small apps), but advocating it as default solution is inadequate at best, if not misleading to people starting out in the field.
It is not an RDBMS in the true sense so in my opinion it is correctly rated.
I tried using SQLite to solve problems which normally would require an RDBMS and ran into so many issues like the lack of enforced static types, built in date or decimal types (and fast aggregations on dates), concurrent writes, etc. It’s only when you’ve gone through this process that you’ll realize that SQLite it not the database you think it is — and SQLite itself is up front about that: https://www.sqlite.org/aff_short.html