WEB开发网
开发学院数据库Oracle 索引在ORACLE中的应用分析 阅读

索引在ORACLE中的应用分析

 2008-09-08 12:53:16 来源:WEB开发网   
核心提示:正确的索引可能使效率提高10000倍,而无效的索引可能是浪费了数据库空间,索引在ORACLE中的应用分析,甚至大大降低查询性能,索引是提高数据查询最有效的方法,因为OLAP中大部分是对数据库的查询操作,而且一般采用数据仓库技术,也是最难全面掌握的技术,因为正确的索引可能使效率提高10000倍

正确的索引可能使效率提高10000倍,而无效的索引可能是浪费了数据库空间,甚至大大降低查询性能。索引是提高数据查询最有效的方法,也是最难全面掌握的技术,因为正确的索引可能使效率提高10000倍,而无效的索引可能是浪费了数据库空间,甚至大大降低查询性能。

索引的管理成本

1、存储索引的磁盘空间

2、执行数据修改操作(INSERT、UPDATE、DELETE)产生的索引维护

3、在数据处理时回需额外的回退空间。

实际数据修改测试:

一个表有字段A、B、C,同时进行插入10000行记录测试

在没有建索引时平均完成时间是2.9秒

在对A字段建索引后平均完成时间是6.7秒

在对A字段和B字段建索引后平均完成时间是10.3秒

在对A字段、B字段和C字段都建索引后平均完成时间是11.7秒

从以上测试结果可以明显看出索引对数据修改产生的影响

索引按存储方法分类

B*树索引

B*树索引是最常用的索引,其存储结构类似书的索引结构,有分支和叶两种类型的存储数据块,分支块相当于书的大目录,叶块相当于索引到的具体的书页。一般索引及唯一约束索引都使用B*树索引。

位图索引

位图索引储存主要用来节省空间,减少ORACLE对数据块的访问,它采用位图偏移方式来与表的行ID号对应,采用位图索引一般是重复值太多的表字段。位图索引在实际密集型OLTP(数据事务处理)中用得比较少,因为OLTP会对表进行大量的删除、修改、新建操作,ORACLE每次进行操作都会对要操作的数据块加锁,所以多人操作很容易产生数据块锁等待甚至死锁现象。在OLAP(数据分析处理)中应用位图有优势,因为OLAP中大部分是对数据库的查询操作,而且一般采用数据仓库技术,所以大量数据采用位图索引节省空间比较明显。

1 2 3 4 5  下一页

Tags:索引 ORACLE 应用

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