WEB开发网
开发学院数据库DB2 DB2 基础: 编码 DB2 SQL 以获得最佳性能 阅读

DB2 基础: 编码 DB2 SQL 以获得最佳性能

 2008-09-17 16:29:04 来源:WEB开发网   
核心提示: 如我所说的,SQL 指定了要检索或操作什么数据,DB2 基础: 编码 DB2 SQL 以获得最佳性能(3),但没有指定数据库如何完成这些任务,这就使 SQL 本身变得很简单,DB2 和 SQL 都可以访问该数据,从物理存储特征中分离出访问标准叫作物理数据独立性,如果您能够记得关系数据库的一

如我所说的,SQL 指定了要检索或操作什么数据,但没有指定数据库如何完成这些任务。这就使 SQL 本身变得很简单。如果您能够记得关系数据库的一次处理一个集合(set-at-a-time)的特点,您就开始掌握 SQL 的本质和性质了。一条 SQL 语句可以作用于多行。作用于一组数据而不需要建立如何检索和操作数据的能力将 SQL 定义成非过程化语言

因为 SQL 是一种非过程化语言,所以一条语句可以代替一系列过程。同样,由于 SQL 使用集合级别的处理以及 DB2 优化查询来确定数据导航逻辑,所以这是可能的。有时,如果不使用 SQL 语句,一条或两条 SQL 语句可以完成的任务就需要完整的过程化程序来完成。

优化器

优化器是 DB2 的心脏和灵魂。它分析 SQL 语句并确定可以满足每条语句的最有效的存取路径(请参阅图 1)。DB2 UDB 通过解析 SQL 语句来确定必须访问哪些表和列,从而完成该操作。DB2 优化器然后查询存储在 DB2 系统目录中的系统信息和统计信息,以确定完成满足 SQL 请求所必需的任务的最佳方法。

图 1. 运行中的 DB2 优化

DB2 基础: 编码 DB2 SQL 以获得最佳性能

优化器在功能上等价于一个专家系统。专家系统是一个标准规则集合,当与情境数据组合时,它返回一个“专家”意见。例如,医学专家系统采用一个规则集合,用来确定哪些药可以用于哪些疾病,将规则集与描述疾病症状的数据组合,并将知识库应用于输入症状的列表。DB2 优化器会根据存储在 DB2 系统目录中的情境数据和 SQL 格式的查询输入来生成对数据检索方法的专家意见。

在 DBMS 中优化数据访问的概念是 DB2 最强大的能力之一。请记住,您访问 DB2 数据时应告诉 DB2 要检索什么,而不是如何检索。无论数据实际上是如何存储和操作的,DB2 和 SQL 都可以访问该数据。从物理存储特征中分离出访问标准叫作物理数据独立性。DB2 的优化器是完成该物理数据独立性的组件。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:DB 基础 编码

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接