数据库管理系统(DBMS)中的启发式优化是什么?
基于成本的优化成本高昂。启发式方法用于减少基于成本的方法中必须做出的选择数量。
规则
启发式优化通过使用一组可以提高性能的规则来转换表达式树。这些规则如下:
首先执行查询中的选择过程。对于任何SQL表,这都应该是第一个操作。通过这样做,我们可以减少查询所需的记录数量,而不是在查询期间使用所有表。
在查询中尽快执行所有投影。有点像选择,但这种方法有助于减少查询中的列数。
执行最严格的连接和选择操作。这意味着只选择那些将导致相对较少记录并且在查询中非常必要的表和/或视图集。显然,当连接记录较少的表时,任何查询的执行效率都会更高。
有些系统只使用启发式方法,而另一些系统则将启发式方法与部分基于成本的优化相结合。
启发式优化的步骤
让我们看看启发式优化中涉及的步骤,如下所述:
将连词选择分解成一系列单一选择操作。
将选择操作向下移动到查询树,以便尽早执行。
首先执行那些将产生最小关系的选择和连接操作。
用连接操作替换笛卡尔积操作和选择操作。
尽可能地向下分解和移动树。
识别其操作是流水线的那些子树。
广告