暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
合理使用索引解决Oracle数据库性能问题.pdf
255
14页
0次
2021-02-21
50墨值下载
熊军(网名老熊)
ITPUB 论坛 Oracle 专题深入讨
论版版主,现任云和恩墨西区交
付经理,擅长 Oracle 数据库故
障诊断处理和性能优化。
个人网站:
http://www.laoxiong.net
合理利用
索引解决性能问题
数据驱动,成就未来 www.enmotech.com 合理利用索引解决性能问题
·216·
每一个跟数据库打交道的朋友,不管是开发人员
还是 DBA,都不可避免地要接触到索引,因为索引
如此地常见,对数据库的性能又具有如此巨大的影
响。每一种数据库,不管是 OracleMS SQL Server
SybaseDB2 等企业级数据库,还是如 MySQL 这样
的开源数据库,以及如 MS Access 这样的桌面型数据
库,都支持各种类型的索引。各个数据库的索引从原
理上都非常类似,但是实现细节可能存在比较大的差
异。本只讨论 Oracle 数据库中索引的相关问题。
Oracle 数据库里,与索引相关的话题也是如此
之多。B-Tree 索引、位图索引、函数索引、反向键索
引、全局索引、本地索引、索引的聚集因子Cluster
Factoring)、
否能一直保持平衡、是否应该以及什么时候重建索
引、索引是否应该与表分开放置在不同的表空间……
如果要完全展开这些话题进行讨论,恐怕得写成一本
厚厚的书。
本章将结合多个案例,重点描述 Oracle 数据库的
B Tree 索引的基本原理、特性,以及如何正确、合理
地使用 B Tree 索引来优化 SQL 性能,以解决性能问
题。对于索引的管理、维护,只是略有涉及,不做过
多阐述。
案例一:利用复合索引解决性能问题
这个案例发生在某天早上,运 128GB 内存、64CPU HP Superdome 上的 Oracle 9.2.0.8,出
CPU 占用将近 100%,运行队列达到 60~80,应用反应速度很慢的异常情况
在用户反映速度很慢后,检查 Oracle,发现很多的会话在等待 latch freelatch#98
SQL> select * from v$latchname where latch#=98;
LATCH# NAME
---------- ----------------------------------------------------------------
98 cache buffers chains
由于本重点描述的是索引,关于“cache buffers chains latch”的等待,此处不做过多说明,这个 latch 的等
待,通常情况下表明存在热点块,一般都是由于没有正确使用索引、SQL 所使用的索引选择率不高引起。检查
正在等待 latch free 的会话正在执行的 SQL,大部分都在执行类似于下面的 SQL
SELECT SUM(cnt),
to_char(nvl(SUM(nvl(amount, 0)) / 100, 0), FM9999999999990.90) amount
FROM (select count(payment_id) cnt, SUM(amount) amount
from TABLE_A
where staff_id = 12345
and CREATED_DATE >= trunc(sysdate)
and state = ’C0C’
and operation_type in (’5KA’, ’5KB’, ’5KC’, ’5KP’))
这里对 SQL 做了一些处理。
看起来这个 SQL 并不复杂,查看其执行计划:
PLAN_TABLE_OUTPUT
-------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows |Bytes | Cost |Pstart |Pstop |
-------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 26 | 125K | | |
of 14
50墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜