提高查询性能的方法
访问路径对 Db2 的性能有重大影响。 Db2 选择访问路径,但您可以使用工具来了解访问路径在某些情况下对性能的影响。
访问路径是 Db2 用于定位SQL语句中指定数据的路径。 访问路径可以是索引式的,也可以是顺序式的。
SQL语句性能的两个重要因素是 Db2 在运行时确定访问路径所用的时间以及访问路径的效率。 Db2 在绑定包含 SQL 语句的计划或包时或在执行 SQL 语句时确定语句的访问路径。
Db2 确定访问路径的时间取决于语句是静态执行还是动态执行,以及语句是否包含输入主机变量。
Db2 选择的访问路径决定了SQL语句的运行时间。 例如,要执行一个连接两个表的SQL查询, Db2 有多个选项。 Db2 可能会选择以下任何一种方法来处理这些连接:
- 扫描零件表,找到与产品表中的某一行匹配的每一行。
- 扫描产品表,找到与零件表中的某一行匹配的每一行。
- 按产品编号对两个表进行排序;然后合并排序后的表,以处理连接。
选择最佳的SQL语句路径取决于多种因素。 这些因素包括SQL语句查询的任何表的内容以及这些表上的索引。
Db2 还利用数据库和资源使用的广泛统计信息来做出最佳访问选择。
此外,存储中的数据物理组织方式会影响 Db2 处理查询的效率。