tidb数据库可视化界面(TiDB学习笔记八数据库SQL语句执行过程)
一、DML语句读流程:
1、Executor执行器先获取表的元数据,以及key存放的Region
2、点查通过KV,复杂查询通过DistSQL
3、coptask:读取后的数据先在TiKV进行聚合,然后在TiDB Server上聚合
roottask:读取后的数据在TiDB Server上聚合
二、DML语句写流程:
需要修改的数据先从rocksdb kv中读取到memBuffer中,然后进行两阶段提交
三、DDL语句流程:
先写入job队列,然后由TiDB Server的owner执行job,执行完毕后,放入history队列。
增加索引index的job,单独放入add index queue中
四、SQL的解析和编译
Parse:进行词法分析、语法分析,形成AST
Preprocess:1、检测合法性。 2、如果是查询一条记录(点查PointGet),那么直接执行,不需要优化
Optimize:逻辑优化(利用关系型代数等)、物理优化
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com