# Tiflash Server

+ column oriented store improves analytical query efficiency
+ Supports strong consistency and real-time
+ Business isolation
+ smart selection


![right](./student-guide/diagram/01-TiFlash-01-01.png)
------------------------------------------------------------

- column oriented store improves analysis query efficiency
  - TiFlash is different from TiKV, it uses column oriented store data structure, it can also be said that TiFlash is a columnar version of TiFlash. As we all know, column storage is very friendly for statistical analysis and query, and row storage is friendly to transaction business, so we can put statistical analysis and query services that require violent scanning on TiFlash to improve efficiency. Coupled with the introduction of MPP (Massively Parallel Processing) functional architecture, computing tasks are distributed to multiple server nodes in parallel. After the computation is completed on each node, the results of each part are aggregated together to obtain the final result, making the analysis query service on TiFlash more efficient.

- Supports strong consistency and real-time
  - As more and more statistical analysis requires real-time query, TiFlash internally uses technologies such as Delta Main to support real-time update and multi-version read of the primary key. At the same time, TiFlash is connected to the multi-raft system as a learner for TiKV data. logical near real-time replication and strong consistency.

- Business isolation
  - As mentioned earlier, column store is very friendly for statistical analysis queries (OLAP) and row store is transaction (OLTP) friendly, so TiKV and TiFlash can be used for both OLTP and OLAP business scenario, respectively. In this way, the two businesses are isolated and do not interfere with each other.

- Smart selection
  - Whether it is TiKV or TiFlash, their SQL entry is TiDB Server. The optimizer model in TiDB Server can smart selection to read data from TiKV row store or TiFlash column store according to the characteristics of SQL statements