Skip to content

Commit

Permalink
adds content to Execution Plans and VTGate sections
Browse files Browse the repository at this point in the history
  • Loading branch information
Verolop committed Oct 19, 2022
1 parent 9161ece commit 719c65f
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 2 deletions.
14 changes: 13 additions & 1 deletion content/zh/docs/15.0/concepts/execution-plans.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,17 @@
title: Execution Plans
---

正在建设之中
Vitess解析VTGate和VTTablet层解析查询,以评估执行查询的最佳方法。这种评估被称为查询规划,并导致查询执行计划。

执行计划取决于查询和相关的VSchema。Vitess的计划策略的基本目标之一是将尽可能多的工作推给底层MySQL实例。当这不可能时,Vitess将使用一个计划,从多个来源收集输入,并合并结果以产生正确的查询结果。

### 评价模型
执行计划由运算符组成,每个运算符实现一个特定的工作。这些操作符组合成一个树状结构,代表了整个执行计划。该计划将每个运算符表示为树上的一个节点。每个运算符接受零个或多个行作为输入,并产生零个或多个行作为输出。这意味着一个操作者的输出成为下一个操作者的输入。连接树中两个分支的操作符结合了来自两个输入流的输入,并产生一个单一的输出。

执行计划的评估从树的叶子节点开始。叶子节点从VTTablet, Topology Service 中拉入数据,在某些情况下还能在本地评估表达式的值。每个叶子节点不会有来自其他操作者的输入,并将它们产生的任何节点输送到其父节点。父节点然后将节点输送到其父节点,一直到根节点。根节点产生最终的查询结果,并将结果传递给用户。

### 观察执行计划
在VTGate个级可以通过浏览`/queryz`端点观察到缓存执行计划。
从Vitess 6 开始,也可以用`EXPLAIN FORMAT=vitess <query>` 观察到单声明计划。


9 changes: 8 additions & 1 deletion content/zh/docs/15.0/concepts/vtgate.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,11 @@
---
title: VTGate
---
正在建设之中

VTGate是一个轻量级的代理服务器,它将流量导向正确的VTTablet服务器并将综合结果返回给客户。它同时使用MySQL协议和Vitess gRPC协议。因此,您的应用程序可以像连接MySQL服务器一样连接VTGate。

在将查询路由到适当的VTTablet服务器时,VTGate会考虑分片方案、所需的延迟、表的可用性以及其底层MySQL实例

相关的Vitess文档。

[Execution Plans](../execution-plans)

0 comments on commit 719c65f

Please sign in to comment.