MySQL Server 结构 - 非官方 MySQL 8.0 优化指南 - 学习笔记

MySQL Server包含两个不同部分:服务端和储存引擎。
查询优化发生在服务端,在储存引擎的 API 之上,分为 4 个阶段:

  • 逻辑转换
  • 基于代价优化的准备
  • 基于代价优化
  • 计划改良
MySQL Server 结构 - 非官方 MySQL 8.0 优化指南 - 学习笔记_第1张图片
MySQL Server 结构.png

将优化器明确划分为各层是逐步发展而来的。在早期的 MySQL 中,优化器只有较少的查询优化,而因为性能的原因,查询优化这一层没有很好地定义或分离。

随着新特性降低了可维护性时,就造就了重构的需求,历来的几个版本 5.6、5.7、8.0 都是这样实施的。将执行过程分层也为以后的新特性作了铺设,例如,计划缓存如果没有明确的分层就会很难实现,原因是连接的重用比较困难。

译自:
Server Architecture - The Unofficial MySQL 8.0 Optimizer Guide

你可能感兴趣的:(MySQL Server 结构 - 非官方 MySQL 8.0 优化指南 - 学习笔记)