Tikv: Distributed key value store powered by Rust
github.com
github.com
This is actually affiliated to https://github.com/pingcap/tidb, which is another implementation of Google Spanner/F1, similar to CockroachDB. So think TiKV as spanner, and TiDB as F1.
They actually started out using Go. And the reason they are changing to Rust is not trying to be a Rust cool kid, but due to real constraints: Go's GC introduces too much of latency time (and no, Go 1.6 is not enough despite being better), they are also not satisfied with cgo's costs. That's why they are changing to Rust. Note that according to their words, they still love Go better, and TiDB is also happily using Go. But for TiKV's case, Rust is perfect.
Disclaimer: I'm not working on TiKV or TiDB, I'm just a fan of their work(they are also the founders behind Codis: https://github.com/CodisLabs/codis, tho not working on that anymore). I'm happy to list references on where I got all the information in case anyone are interested but they are all in Chinese, which I think might not be that polite since not everyone here reads Chinese.
To your technical question, I'm not that familiar with FoundationDB to comment, but I can tell the author's intent is building an open source solution for Spanner/F1. So I'd say TiKV/TiDB is really a drop-in replacement for Spanner/F1, not FoundationDB.
So in that case, I think the guarantees they want to meet include at least distributed transactions on a KV store(Spanner), and zero downtime SQL schema changes(F1).
If you feel like hacking on our code please just let us know, we'd love to help.
As to reinventing the wheel, given the number of competing tire companies that exist apparently even the wheel still has room to improve.
Anybody know where I can find more documentation ?
In percolator design only allow for SI isolation unless lock are taken while reading.
> Thanks rust-clippy. We do love the great project.
This just made my day. :-)
If you think other stories should get attention on HN, please submit some.
I share your question, yet it seems to be what most internet forums are for.