设为首页 加入收藏

TOP

浅谈Oracle优化排序的操作
2014-11-24 17:39:47 】 浏览:6527
Tags:浅谈 Oracle 优化 排序 操作

服务器首先在sort_area_size指定大小的内存区域里排序,如果所需的空间超过sort_area_size,排序会在临时表空间里进行。在专用服务器模式下,排序空间在PGA中,在共享服务器模式下,排序空间在UGA中。如果没有建立large pool,UGA处于shared pool中,如果建立了large pool,UGA就处于large pool中,而PGA不在sga中,它是与每个进程对应单独存在的。



PGA:program global area,为单个进程(服务器进程或后台进程)保存数据和控制信息的内存区域。PGA与进程一一对应,且只能被起对应的进程读写,PGA在用户登录数据库创建会话的时候建立。


有关排序空间自动管理的两个参数:


Workarea_size_policy: auto/manual,只有Pga_aggregate_target已定义时才能设置为auto。


这两个参数会取代所有的*_area_size参数。


措施:


尽可能避免排序;尽可能在内存中排序;分配合适的临时空间以减少空间分配调用。


2、需要进行排序的操作:


A、创建索引;


B、涉及到索引维护的并行插入


C、order by或者group by(尽可能对索引字段排序)


D、Distinct


E、union/intersect/minus


F、sort-merge join


G、analyze命令(仅可能使用estamate而不是compute)


3、诊断和措施




4、监控临时表空间的使用情况及其配置




】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇MySQL的my.cnf 文件里的配置项解释 下一篇Sun的消失和Oracle的猜想

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目