技术开发 频道

DM6.0基于成本的优化机制原理

  【IT168 文档】“成本”一词被广泛使用,一般指进行某项工作花费的代价。目前,数据库产品中也引入了基于成本的优化方法。达梦数据库(以下简称DM)中优化器是采用基于成本的优化,对SQL语句执行中各个环节进行代价评估,基于DM成本计算模型计算出成本,形成最优的执行计划去执行。总之,DM基于成本优化的最终目的是花费最小的代价,达到最优的性能。

  DM中成本计算的依据是统计信息,主要包含表数据的分布、重复率、索引信息等。对于一个多表连接查询,优化器首先根据待处理数据库对象的统计信息,计算出相应的成本;然后调整表对象的执行顺序、连接方式、选择合适的索引,形成最优的执行计划;最后执行并输出结果。

  以上对DM基于成本的优化机制做了简要介绍,对相关概念进行阐述,下面对DM优化机制的发展进行对比分析,最后通过具体例子证明基于成本的优化机制带来的好处。供客户、相关技术人员参考。

  DM的查询优化机制经历了从基于规则的到基于成本的发展,下面简要介绍这两种机制在的处理过程。

  (1)DM5.0优化机制

  DM5是基于规则和成本的混合优化机制,其中成本优化只是进行简单情况的成本计算,可以认为DM5.0是基于规则的优化。语句执行过程是首先将语句转换成系统可识别的语法树,然后进行词法、语法分析,接着进行优化处理,最后形成执行计划去执行。具体过程如图1所示:

  (2)DM6.0优化机制

  DM6.0庰弃了基于规则的优化方式,采用完全基于成本的计划,通过各个环节的成本计算,形成最优执行计划,语句处理过程如图2所示:

0
相关文章