• 数值优化答案 > db2 优化器 - 让我们以一条语句来开始我们的
  • db2 优化器 - 让我们以一条语句来开始我们的

    免费下载 下载该文档 文档格式:PDF   更新时间:2009-06-02   下载次数:0   点击次数:1
    文档基本属性
    文档语言:English
    文档格式:pdf
    文档作者:Mark Canada
    关键词:
    主题:DoIT pilot study
    备注:
    点击这里显示更多文档属性

    5

    DB2 优化器
    让我们以一条语句来开始我们的 DB2 优化器之旅.这条语句并不是以我们熟悉的 SQL(如"select c1, c2 from …")的方式给出,而是以我们更加熟悉的陈述方式给出: "今天 我需要去商店买冷饮,给汽车加油,还有寄包裹" .假如我们有一个机器人(名字叫 DB2 优 化器)负责决定如何完成这些任务,默认地,它可能会按照我们输入的指令的顺序来完成任 务,这样做任务当然可以完成,但很可能不是完成任务的最好方式.设想以下情形: 如果先买冷饮,冷饮会不会在完成其他任务的过程中化掉 如果在去加油站的路上油就用光了怎么办 当我们到邮局的时候邮局会不会下班 是的,机器人 DB2 优化器需要做的就是给我们提供完成这些任务的最佳方案,然而至 少目前它无法很好地完成这件事情.为什么 因为信息不足! 我们需要提供足够的信息,比如商店,邮局,加油站的位置;商店,加油站,邮局的 营业时间; 冷饮可以保留多久不会化掉 现在车里有多少油 提供的信息越完善, 越准确, 我们就越有可能得到最佳方案;否则,NO 信息,NO 优化!那么需要提供什么信息呢 要 想 DB2 优化器给我们制订最优方案,需要提供如下信息: ● 准确实时的统计信息 ● 合理配置的数据库配置参数 ● 正确的优化级别 ● 设计,创建合理的索引 ● 磁盘 I/O 的合理设计(对应表空间的 TRANSRATE 和 OVERHEAD 参数) ● 高效优化的 SQL 语句 为了在数据库中执行查询或 DML 语句(INSERT,UPDATE,DELETE),DB2 必须创 建一个访问计划(ACCESS PLAN).访问计划定义了按什么方式访问表,使用哪些索引,以 及用何种连接(JOIN)方法来关联表等工作. 好的访问计划对于 SQL 语句的快速执行至关重
    深入解析 DB2— 高级管理,内部体系结构与诊断案例 —
    要.DB2 优化器可以创建访问计划.这是一种基于成本的优化器,这意味着它是根据表和 索引的相关统计信息来做出决策的.关于解释访问计划的详细信息会在本书"第 10 章:深 入讲解解释输出"一章进行讲解. 本章主要讲解如下内容: ● DB2 优化器介绍 ● SQL 语句执行过程 ● 优化器组件和工作原理 ● 扫描方式 ● 连接方法 ● 优化级别 ● 基于规则的优化 ● 如何影响优化器来提高性能 ● 优化器总结
    5.1
    DB2 优化器介绍
    优化器是 DB2 的心脏和灵魂(可以把它比喻成宝马 730 或波音 747 的发动机引擎).它 分析 SQL 语句并确定可以满足每条语句的最有效的存取路径(请参阅图 5-1 和 5-2).DB2 优化器通过解析 SQL 语句来确定必须访问哪些表和列,从而完成该操作.DB2 优化器然 后查询存储在 DB2 系统目录中的系统编目信息和统计信息,以确定完成满足 SQL 请求所 必需的任务的最佳方法.优化器在功能上等价于一个专家系统.专家系统是一个标准规则 集合,当与情境数据组合时,它返回一个"专家"意见.例如,医学专家系统采用一个规 则集合,来确定哪些药可以用于哪些疾病,将规则集与描述疾病症状的数据组合,并将知 识库应用于输入症状的列表. DB2 优化器会根据存储在 DB2 系统目录中的情境数据和 SQL 格式的查询输入来生成对数据检索方法的专家意见. 在数据库中优化数据访问是 DB2 最强大的功能之一(在所有的数据库如 Oracle,DB2, Informix,Sybase 和 SQL Server 中,DB2 的优化器是最强大的).请记住,您访问 DB2 数 据时应告诉 DB2 要检索什么,而不是如何检索.不管数据实际上是如何存储和操作的, DB2 和 SQL 都可以访问该数据.从物理存储特征中分离出访问标准叫做物理数据独立性. DB2 的优化器是实现该物理数据独立性的组件. 优化器根据许多信息执行复杂的计算.要使优化器的工作方式直观化,可以将优化器 想象成执行一个 4 步骤的过程: (1) 接收并验证 SQL 语句的语法语义. 150
    第5章
    DB2 优化器
    (2) 分析环境并优化满足 SQL 语句的方法. (3) 创建计算机可读指令来执行优化的 SQL. (4) 执行指令或存储它们以便将来执行. 这个过程的第(2)步是最有趣的.优化器怎样决定如何以它的方式执行您可以发送的大 量 SQL 语句 优化器有许多类型的优化 SQL 的策略.它如何在优化存取路径中选择使用 这些策略中的哪一个 IBM 并没有发布优化器如何确定最佳存取路径的真正和深入的详 细信息,但优化器是一个基于成本的优化器(CBO),这意味着优化器将始终尝试为每个查 询制定减少总体成本的存取路径.要实现这个目标,DB2 优化器会应用查询成本公式,该 公式对每条可能的存取路径的 4 个因素进行评估和权衡:CPU 成本,I/O 成本,DB2 系统 目录中的统计信息和实际的 SQL 语句.

    下一页

  • 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
  • 免费下载 PDF格式下载
  • 您可能感兴趣的
  • matlab数值优化工具箱  数值优化算法书  数值优化  数值计算方法习题答案  数值分析试题及答案  数值分析课后答案  数值分析答案  清华数值分析习题答案  微分方程数值解法答案