【预告:CGTN#博鳌亚洲论坛#特别节目即将精彩开播】通胀加剧、失业激增、贸易受阻,全球经济复苏路在何方? 欢迎围观CGTN博鳌亚洲论坛特别节目“对话思想者——为全球经济复苏注入动力”。锁定CGTN,北京时间4月22日19:30-20:25,戳二维码。Rising inflation, job loss and trade disruption, where is the way out for the global economy? CGTN and Boao Forum for Asia join forces for a special program, "Dialogue with Thinkers: Injecting Impetus into Global Economic Recovery." Tune in to CGTN on April 22 at 11:30 GMT to watch.
SQL执行与优化器
一条SQL在MySQL服务器中执行流程主要包含:SQL解析、基于语法树的准备工作、优化器的逻辑变化、优化器的代价准备工作、基于代价模型的优化、进行额外的优化和运行执行计划等部分。具体如下图1所示。
对于优化器来说,执行一条SQL有各种各样的方案可供选择,如表是否用索引、选择哪个索引、是否使用范围扫描、多表Join的连接顺序和子查询的执行方式等。如何从这些可选方案中选出耗时最短的方案呢?这就需要定义一个量化数值指标,这个指标就是代价(Cost),我们分别计算出可选方案的操作耗时,从中选出最小值。
代价模型将操作分为Server层和Engine(存储引擎)层两类,Server层主要是CPU代价,Engine层主要是IO代价,比如MySQL从磁盘读取一个数据页的代价io_block_read_cost为1,计算符合条件的行代价为row_evaluate_cost为0.2。除此之外还有:
memory_temptable_create_cost (default 2.0) 内存临时表的创建代价。
memory_temptable_row_cost (default 0.2) 内存临时表的行代价。
key_compare_cost (default 0.1) 键比较的代价,例如排序。
disk_temptable_create_cost (default 40.0) 内部myisam或innodb临时表的创建代价。
disk_temptable_row_cost (default 1.0) 内部myisam或innodb临时表的行代价。
在MySQL 5.7中,这些操作代价的默认值都可以进行配置。为了计算出方案的总代价,还需要参考一些统计数据,如表数据量大小、元数据和索引信息等。MySQL的代价优化器模型整体如下图2所示。
一条SQL在MySQL服务器中执行流程主要包含:SQL解析、基于语法树的准备工作、优化器的逻辑变化、优化器的代价准备工作、基于代价模型的优化、进行额外的优化和运行执行计划等部分。具体如下图1所示。
对于优化器来说,执行一条SQL有各种各样的方案可供选择,如表是否用索引、选择哪个索引、是否使用范围扫描、多表Join的连接顺序和子查询的执行方式等。如何从这些可选方案中选出耗时最短的方案呢?这就需要定义一个量化数值指标,这个指标就是代价(Cost),我们分别计算出可选方案的操作耗时,从中选出最小值。
代价模型将操作分为Server层和Engine(存储引擎)层两类,Server层主要是CPU代价,Engine层主要是IO代价,比如MySQL从磁盘读取一个数据页的代价io_block_read_cost为1,计算符合条件的行代价为row_evaluate_cost为0.2。除此之外还有:
memory_temptable_create_cost (default 2.0) 内存临时表的创建代价。
memory_temptable_row_cost (default 0.2) 内存临时表的行代价。
key_compare_cost (default 0.1) 键比较的代价,例如排序。
disk_temptable_create_cost (default 40.0) 内部myisam或innodb临时表的创建代价。
disk_temptable_row_cost (default 1.0) 内部myisam或innodb临时表的行代价。
在MySQL 5.7中,这些操作代价的默认值都可以进行配置。为了计算出方案的总代价,还需要参考一些统计数据,如表数据量大小、元数据和索引信息等。MySQL的代价优化器模型整体如下图2所示。
#正能量艺人周柯宇# #青年演员周柯宇#
4.21日总结
▪️114301条,↑29935条
@别再过敏啦·
▪️29420条,↑3499条
@负型-
▪️GAI楼: 766条,↓68条
▪️活跃fo: 2927人,↓710人
夸夸以上两个宝贝。狐友需要宝贝们的积极参与哦!公益、航员运动会也都需要宝贝们join。今天和很不错哦。GAI楼和活跃明天加加油!和的打卡也很好。宇航员们,不要忘记给个人博➕呦~
狐友:https://t.cn/A66ZDBvw
小招新https://t.cn/A6iFa63T
公益:https://t.cn/A666ocoj
航员运动会:https://t.cn/A66lyRbB
周柯宇@INTO1-周柯宇
4.21日总结
▪️114301条,↑29935条
@别再过敏啦·
▪️29420条,↑3499条
@负型-
▪️GAI楼: 766条,↓68条
▪️活跃fo: 2927人,↓710人
夸夸以上两个宝贝。狐友需要宝贝们的积极参与哦!公益、航员运动会也都需要宝贝们join。今天和很不错哦。GAI楼和活跃明天加加油!和的打卡也很好。宇航员们,不要忘记给个人博➕呦~
狐友:https://t.cn/A66ZDBvw
小招新https://t.cn/A6iFa63T
公益:https://t.cn/A666ocoj
航员运动会:https://t.cn/A66lyRbB
周柯宇@INTO1-周柯宇
✋热门推荐