使用TiDB MPP

1.设置数据库变量

SET tidb_allow_mpp = 1;

2.注意

TiDB 支持使用 MPP 模式来执行查询。在 MPP 执行模式下,SQL 优化器会生成 MPP 的执行计划。
注意 MPP 模式仅对有 TiFlash 副本的表生效。

3.MPP 查询片段和 MPP 任务

在 MPP 模式下,一个查询在逻辑上会被切分为多个 MPP 查询片段 (query fragment)。示例如
下:
1. EXPLAIN SELECT COUNT(*) FROM t1 GROUP BY id;
这个查询在 MPP 模式下会包含两个查询片段,一个为一阶段聚合,一个为二阶段聚合(最终聚合)。
在查询执行的时候每个查询片段都会被实例化为一个或者多个 MPP 任务。

4.Exchange 算子

MPP 查询的执行计划中有两个 MPP 特有的 Exchange 算子,分别为 ExchangeReceiver 和
ExchangeSender。ExchangeReceiver 表示从下游查询片段读取数据,ExchangeSender 表示
下游查询片段向上游查询片段发送数据。在 MPP 执行模式下,每个 MPP 查询片段的根算子均为
ExchangeSender 算子,即每个查询片段以 ExchangeSender 为界进行划分。一个简单的 MPP
计划如下:

使用TiDB MPP

 

使用TiDB MPP

上一篇:Linux上部署项目用到的mysql命令


下一篇:Linux云计算-使用 MyCat 实现 MySQL 主从读写分离