TiDB has four main components:
1. SQL front end nodes 2. Distributed shared nothing storage (TiKV) 3. Meta data server (PS) 4. TiFlash column store
1 and 3 are written in Go 2 is written in Rust and uses RocksDB 4 is written in C++
2 & 3 are graduated CNCF projects maintained by PingCAP.
Disclaimer: I work for PingCAP