# Coprocessor

![`smart`](Coprocessor01_aa_001_2022051.png)

-------------------------------------------------------------------
The TiDB server is stateless, and the data is stored in the TiKV layer. When the TiDB server receives a query request from the client, it will get the specific data information from TiKV.

This architecture has two performance issues:
- TiKV returns all data, which incurs too much network overhead.
- TiDB needs to calculate all the data, which consumes a lot of CPU, while TiKV has no calculation pressure.
