- 8
- 0
- 约7.88千字
- 约 3页
- 2018-05-09 发布于福建
- 举报
lSSN 1009—3044 E—mail:jslt@cccc.net.cn
Compu~rKnowledgeandTechnology电脑知识与技术 http://www.dnzs.net.cn
Vo1.6,No28,October2010,PP.7902—7904 Te1:+86—551—5690963 5690964
基于Oracle数据库的索引优化
魏科科
(中国石油大学 ,山东 东营 257061)
摘要 :为优化 OP,ACLE数据库应 用系统性能,提 高数据检 索速度 ,提 出了一套针对 ORACLE数据库索引的跟踪和优化方法。该 文
一 方面 简述了0KACLE索引分类 、区别 、适 用场合,另一方面深入总结 了ORACLE数据库 索引优 化设计的八个重要方面和应用过
程 中的注意事项。实验结果表 明,遵循这些分析、优化原则,对于数据库应用系统性能调整的效果显著,因而,为数据库管理人员提
供 了一套可行 的索引优化的方法
关键词 :数据库 :0RACLE:索引:优化
中图分类号:TP391 文献标识码 :A 文章编号:1009—3044(2010)28—7902—03
在数据库应用系统中,数据的查询效率是用户最关心的问题之一。由于数据库系统在最初设计不够合理,而导致后期查询效率
低下的情况比比皆是。因此对数据库查询进行优化是 DBA乐此不疲的工作。在数据库的优化过程中,首当其冲的是对索引的优化。
有效地创建索 引也是数据库开发过程中,最复杂的一点 。
ORACLE提供 了大量的索引选项。合理的使用索引,能够极大缩短一些长进程的耗时 。相反 ,如果对索引使用不合理 ,可能导致
数据库性能急速下降.甚至进程终止。
显然 ,索引设计 的合理性对系统 的性能至关重要 。然而,很多数据库开发人员对索引只是粗浅 的了解。下面简略介绍 ORACEL
索 引的基本概念和分类 ,详细介绍笔者在工作 中经常使用的索引优化设计方法。
1索引的概念
索引类似于书 的目录 ,是为了加速对待定表数据的访问而创建 的数据段。要理解索 引,首先要清楚什么是 ROWID.在关系数据
库 中,一个行的物理位置无关紧要 ,除非数据库需要找到它。为了能找到数据,表中的每一行均用一个行 内部地址 (ROWID)来标识。
ROWID告诉数据库这一行的准确位置 (指 出行所在的文件 、该文件中的块、该块中的行地址)。
一 个索引拥有表的一列或多列 的值以及这些列值相对应的ROWID。当 ORACLE服务器需要在表 中查找某一指定行时 ,它在索
引中查找 ROWID,然后直接从表中提出数据 。
2索引分类
ORACEL 提供了多种不同类型的索引以供使用。ORACLE中包括 的索弓I如下: ‘
2.1B 树索引
到 目前为止 ,这是 ORACLE和大多数其他数据库 中最常用 的索引。B 树的构造类似于二叉树 ,能根据键提供一行或一个行集
的快速访问。通常只需很少的读操作就能找到正确 的行 。不过 ,需要注意重要的一点,“B 树”中的 “B”不代表二叉(binary),而代表
平衡(balanced)。B 树索引有一下子类型:
2.1.1索引组织表 (indexorganizedtable)
索引组织表以B 树结构存储 。堆表的数据行是 以一种无组织的方式存储 的,而 IOT与之不同,lOT中的数据要按主键 的顺序
存储和排序 。对应用来说,IOT表现得与 “常规”表并无二致 ;需要使用 SQL来正确地访 问IOT。 lOT对信息获取、空问系统和 O·
IAP应用最为有 用。
2.1.2B%树聚簇索引(Btreeclusterindex)
这是传统 B 树索引的一个变体 。B 树聚簇索引用于对聚簇键建立索引,在传统 B 树 中 ,键都指向一行 ;而 B 树聚簇不同,
一 个聚簇键会指 向一个块 ,其中包含与这个聚簇键相关 的多行。
2.1.3降序 索引(descendingindex)
降序索 引允许数据在索 引结构 中按 “从大到小”的顺序 (降序)排序 ,而不是按 “从小到大 ”的顺序 (升序)排序。
2.1.4反向键索引(reversekeyindex)
这也是 B 树索引,只不过键中的字
原创力文档

文档评论(0)