9 ms·
I know the authors of this project also read Hacker News, so it probably is better if we wait till them to state their motives. But I suppose I could give a bri
by xuejie 11y ago
I know the authors of this project also read Hacker News, so it probably is better if we wait till them to state their motives. But I suppose I could give a brief first, since most of the confusing comments are due to language barriers(sorry if you don't know enough Chinese, you might not have read enough about this project).
This is actually affiliated to https://github.com/pingcap/tidb 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 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.
- zmanian 11y agoI'm super excited to see a Mandarin speaking team building something in Spanner class of databases.
- collyw 11y agoCurious why the language that the team speaks matters to you at all?
- spullara 11y agoThis looks like it could be a drop in replacement for FoundationDB but I don't see enough documentation on the guarantees they give or limitations. Any more information? Maybe even translated from Chinese?
- xuejie 11y agoUnfortunately I don't see much material written in English at the moment. 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).
- spullara 11y agoFoundationDB was a drop-in replacement for spanner as well. Can't wait to see more docs.