文件名称:Best Practice--排序段的使用
文件大小:32KB
文件格式:DOC
更新时间:2014-05-10 03:22:56
排序段
多数SQL script 会用到排序, 如order by, union, join等等, 排序会用到oracle的排序区. 如果sql script所用的排序区过大, 超过了oracle设定的sort_area_size, 这时oracle将会使用磁盘排序, 一般使用temporay tablespace的空间, 这时也就会出现disk_reads. Disk_reads所花的代价是很大的,一般是不建议使用,更不允许有太大的disk_reads。 而且当前的 sql script执行后, 排序完成后这个空间并不立即删除, 下次有磁盘排序时会重新申请空间. 结果就是会使temporay tablespace可用空间越来越小, 用完后会extent. 最终结果是sql script效率低下, 影响db instance性能, 浪费oracle db instance资源.