Oracle性能优化之高级SQL优化(二)

 
SQL优化简介
一般在应用中,  糟糕的SQL语句是造成系统性能低下的最主要原因,例如大小写的不统一、同样的SQL语句不同的写法等。而且,随着数据量的增加,情况会变得越来越严重。(题外话:优秀的Oracle数据库优化人才,是任何公司都稀缺的)
  SQL优化又称SQL调节,其步骤一般包括:
 
SQL调节的目标
 
SQL调节包括三大目标:降低负载、均衡负载和并行化负载。
 
l降低负载:即寻找更高效的途径来完成相同的功能
如某个非大表(小于2000万行数据数据或小于2G大小的单表),常规查询需要访问的数据实践中90%情况下是不会超过20%的,此时建立合理的索引是有效的方法之一
l均衡负载:即应该把任务分时段均衡调度
如一般系统白天是访问高峰,如果此时备份任务、批处理任务或报表数据抽取任务也  在这个时段则易造成负载峰值现象,正确的做法应该是把备份任务、批处理任务和报表数据抽取任务放到晚上进行处理,或采用并行化策略
l并行化负载:即大数据量的查询访问需要使用并发策略
如在数据仓库环境中应该多使用并发策略,此举可以明显减少响应时间
 
 
SQL优化阶段
 
 
使用OEM发现顶级SQL
 
 
在OEM中,选择性能->其它监视链接->定级活动,如下图:
 
 
不要用*代替所有列名
 
 
指定仅仅需要的列名与使用*对比:
时间:359/1327=27.05%  CUP耗费: 4092121327/6413227637=63.81%
IO耗费: 29601/110117=26.88%  可见大幅降低I/O从而降低响应时间!
 
 

你可能感兴趣的:(Oracle性能优化之高级SQL优化(二))