技术开发 频道

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

  (3)DM5.0与DM6.0优化机制的异同

  在处理数据量小、简单查询的情况下,DM5.0和DM6.0的优化机制基本会采用相同的处理方式,甚至基于规则的优化会更高效,因为可以省去过多的成本计算和对比分析。

  对于复杂查询、大数据量的情况下,基于成本的优势就体现出来,尽管会进行较多的成本计算分析,但是这些消耗对于性能的提升基本可以忽略。

  DM5.0采用基于规则和成本的混合优化机制,虽然包含了简单的成本计算,但是不够完善和成熟,基本上还是依赖既定的规则进行优化,部分情况下无法生成最优执行路径,例如在索引选择、驱动表的指定、连接方式等方面成为性能瓶颈的重要因素之一。

  DM6.0采用基于成本的优化机制,在处理SQL语句方面充分体现了灵活性和智能性。针对不同的数据量、数据分布、索引类型等信息,会采用不同的方式进行处理,有效的利用系统资源,提高执行效率。

  实际应用中,DM5.0和DM6.0对于同样的语句环境,分别会采用各自的处理方式,具体可参考下图:

DM5.0和DM6.0处理方式对比

  从以上例子可以看出,基于成本的优化总是会根据上下文环境,通过代价计算选择最优的执行路径,达到较好的性能。可见DM基于成本的优化机制带来的好处还是值得我们坚定地去使用和完善它。

  DM成本优化机制是一套完整的优化体系,内部的相关性很强,是优化器的核心。移植到DM的应用系统性能均有一定程度的提升,得到客户的一致认可和好评。随着DM产品不断的完善,DM成本优化机制会越来越智能,满足客户更高层次的需求。

0
相关文章