Skip to content

查询编译

查询处理

查询处理

  • 查询编译
  • 查询执行

查询编译

查询编译

  • 查询分析
    • 词法分析
    • 语法分析
    • 语义分析
  • 查询重写
  • 查询优化/规划
    • 预处理
    • 生成路径
    • 生成计划
处理步骤输入处理输出
查询处理SQL字符串编译、执行数据库上的操作序列并执行
查询编译SQL字符串分析、重写、优化最优执行计划
查询分析SQL字符串词法、语法、语义Query查询树
词法分析SQL字符串词法分析工具Lex,正则表达式词法分析树
语法分析词法分析树语法分析工具Yacc,寻找语法结构语法分析树
语义分析分析树检查命令是否能正确执行Query查询树链表
查询重写复杂命令规则系统新的查询树
查询优化重写后的查询树预处理、生成路径、成计划优化后的执行计划
预处理重写后的查询树提升自链接、提升子查询改造后的查询树
生成路径改造后的查询树动态规划、遗传算法最优路径
生成计划最优路径基本计划、完整计划最终计划