Follow

Is there any "sqlite killer"?

I mean a reliable data store, sql or not, which can be _painlessly_ integrated into an application?

@kornel Bonus points for a focus on a small and simple implementation rather than the best possible performance.

I have a few projects were I'm using sqlite but would be much better served with a simple and portable key/value store.

@ayo In my case I need multi-core performance. I ended up just loading a HashMap into RAM, but it's far from reliable, and the more I fix it, the more I reinvent a database, which makes me feel someone must have done this already.

@kornel @ayo I have used LMDB, but it isn’t painless. Be prepared to implement your own query boilerplate. It’s nice that it’s memory mapped and that you have one writer and N readers.

@kornel SQLite isn't super painless but its close as it gets right now IMO. Details of the filesystem make it very difficult to do datastore's reliably.

@peregrine I mean it's already wonderful compared to a real RDBMS that needs separate daemons, configs, ports, credentials, and can't be rsync-ed around.

@peregrine I should probably just use Postgres, but I can't be bothered to deal with PGDATA ever again.

@kornel TBH this is why I'm okay for paying for managed services when not using sqlite.

@kornel I've tried out DBM recently and was surprised how far you can get with it. It has many successors, like LMDB.

@kornel not even close, I don't think, but I'm very keen to learn about any project that gets anywhere near sqlite's level of quality

@kornel for a souped up DBM which is painless (compared to LMDB, for example) I liked Tokyo/Kyoto cabinet: fallabs.com/kyotocabinet/

I haven't used it in a few years, though.

@kornel today I stumbled upon a new in-process KV store, and remembered about this thread, so here goes: sled.rs — note that I haven't tested it at all, looks neat on paper, claims that can be used from C even when implemented in Rust.

Sign in to participate in the conversation
Mastodon

Server run by the main developers of the project 🐘 It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!