# 读取的执行 （继续）

__*Cop Task*__
__*Root Task*__

![left](./student-guide/diagram/ExecuteandRead03_aa_002_20220512.png)

-------------------------------------------------------------
最后,查询结果会返回给 TiDB Server,但是能推送到 TiKV 上的计算请求目前有 TableScan、IndexScan、Selection、TopN、Limit 和 PartialAggregation 等,其他更复杂的算子,还是需要在单个 TiDB Server 上进行处理。所以会在 TiDB Server 进行汇总处理。汇总完毕后,结果集就形成了。如果是查询操作,则将结果集（包括Field 列表、行数据）写回客户端。

这里需要提到的是,在读取的执行(B)中,一部分算子被下推到 TiKV 上去执行,另一部分则最后在 TiDB Server 中进行汇总。于是就有了两种计算任务（Task）,它们是 Cop Task 和 Root Task,具体定义如下:

- CopTask 是需要下推到存储引擎（TiKV）上进行计算的物理计划,每个收到请求的 TiKV 节点都会做相同的操作。

- RootTask 是在 TiDB 中进行计算的那部分物理计划。