What is Voron? Well, it is a joke, but I’ll leave it for someone else to explain.
Voron is the codename for our next generation storage engine, it is a managed port of LMDB, with some tweaks that we added on. The basic idea is that we will have our own storage solution based on our own code that we fully control.
Voron is different than LMDB in a few details, mostly:
- Only single process (multiple process can read, but only one process can write, and we don’t really care about multi process reads).
- No duplicates (LMDB allows them, we have no need for them yet, so we didn’t do that).
- Support for increasing the file size (LMDB doesn’t support it, but we need to, so we added support for it).
- Pure mmap access to the data (we don’t do manual I/O writes).
Early testing shows that for read speeds, we really couldn’t ask for anything else. For write speed, we are good, but aren’t as good as we would like it to be.
Personally, I think that the codebase is a lot easier to follow, but I wrote it, so… It isn’t ready yet for public consumption, but I would like to share it with a few people. So here is the deal.
I am looking for people to join the alpha program for it. Like with RavenDB at its early stage, I am looking for commitment to do something for the project. It can be anything from testing it out and submitting failing scenarios to actually working on the code to building small scale proofs on it, etc.
What I am not interested is viewers. There will be time enough for that at a later point in time. What I am looking for right now is contributors. And I think that this is a really cool project to be a part of. If you want to join, please ping via email.