132 karma · joined August 31, 2020
Thanks for the pointer to SpacetimeDB - haven't heard of it before!
Wraparounds are only a theoretical issue. There would have to be exactly UINT64_MAX writers between a reader first checking the version and verifying the version.
When designing CedarDB, we recently had multiple instances where we thought: "If we had just a few KiB of Optane here ... "
Author here, I agree! It's quite sad that we need such an involved solution to offset the inherent complexity of the flash medium (latency spikes, erase blocks, ...). We nearly had the perfect solution with Optane[1]: 100ns latency, instantly persisted writes and all that good stuff.
I'm still not over Intel killing it while I did my PhD on it.
Umbra, on the other hand, is a full fledged, ACID compliant relational database systems with all bells and whistles.
However, Umbra can process multiple 100ks of transactions per second. If you're interested in more details, take a look at Figure 6 in this research paper: https://db.in.tum.de/~freitag/papers/p2797-freitag.pdf
Disclosure: I work for CedarDB (https://cedardb.com), the commercial spinoff of Umbra.