3 ms·
Ask HN: What to use after SQLite?
All
I love SQLite and use it to for a client/server web app. I'm fully aware it's designed for embedded application use but the developers encourage you to use it for client/server task if the concurrency is relatively small. [1]
My web app has grown and I'm now running into currency issues.
What do you recommend to replace SQLite?
I love the simply, how small it is (code base, install, resources) and focus on being bug free of SQLite.
But am worried that replacing SQLite with something like MySQL or Postgres is replacing SQLite with a slow and heavy tank.
Does anyone have any good recommendation on what database I should move to next?
[1] https://sqlite.org/whentouse.html
- selectnull 10y agoIf you're running into concurrency issues, than both MySQL or Postgres are good solutions. Tanks compared to SQLite? Yes. Slower? No. But if you're looking into something small, check out Firebird (http://firebirdsql.org/ http://firebirdsql.org/). It's fully ACID compliant relational database, can work both in embedded or client/server mode, fast, easy to maintain and cross platform. IMHO, the only drawback of that RDBMS is small(er) developer mindshare. I worked a lot with it before (8 years ago) and loved it.
- dozzie 10y ago8 years ago I actually disliked it, because it was descendant of Borland's database and shared with it the administration tools and documentation. In both aspects it was worse than PostgreSQL or MySQL. I don't know if anything got better, because I haven't worked with it ever since.
- selectnull 10y agoYes, Firebird came to the world after Borland's Interbase got open sourced. After that, Borland continued with Interbase development and they kinda existed for a while. I have no clue what happened to Interbase afterwards, as I've stopped caring. As a former Delphi developer, I also dislike Borland. But I very much loved their products, no reason I would dismiss one just because it was made by Borland (and I'm talking about "new" Borland, not the Borland of the 80es and early 90es which was awesome).
- dozzie 10y agoIt's not that I disliked Firebird because Borland. I disliked it because tools and procedures (mainly the latter) were underdocumented and felt unpleasant to work with from a sysadmin's perspective compared to PostgreSQL and MySQL. At that time I didn't care about Borland for a long time already, because I was a Linux sysadmin then.
- rgacote 10y agoNice Firebird feature is the ability to embed it and run without a server.
- svennek 10y agoPostgreSQL, it also has the advantage, that SQLite is modelled after pgsql, so porting is going to be slightly easier than MySQL. Also, both of them (MySQL and PostgreSQL) can handle an enormous amount of concurrent work at very high speed. Unless you are relying on optimizing nanoseconds in response time, you will never feel the difference...
- andyzweb 10y agoSQLite has an option to use a different commit/rollback mechanism called the Write-Ahead-Log. It can alleviate some of the concurrency issues in certain workloads. https://www.sqlite.org/wal.html https://www.sqlite.org/wal.html