2013-03-13等待事件PX Deq Credit: send blkd
来源:互联网 发布:vue双向数据绑定原理 编辑:程序博客网 时间:2024/06/11 07:06
今天出现严重的等待事件PX Deq Credit: send blkd,与实施组沟通,系统并没有慢的情况。
Elapsed Time (s)
通过数据字典查到此表是有并行操作的。
SQL>select table_name,degree from user_tables where table_name='ARCHIVES_CONTENT';
TABLE_NAME DEGREE
------------------------------ --------------------
ARCHIVES_CONTENT 4
一般来说空闲等待可以忽略它,但是实际上空闲等待也是需要关注的,因为一个空闲的等待,它反映的是另外的资源已经超负荷运行了。基于这个原因,在Oracle 10g里已经把PX Deq Credit: send blkd等待时间不在视为空闲等待,而是列入了Others 等待事件范围。
PX Deq Credit: send blkd 等待事件的意思是:当并行服务进程向并行协调进程QC(也可能是上一层的并行服务进程)发送消息时,同一时间只有一个并行服务进程可以向上层进程发送消息,这时候如果有其他的并行服务进程也要发送消息,就只能等待了。 知道获得一个发送消息的信用信息(Credit),这时候会触发这个等待事件,这个等待事件的超时时间为2秒钟。
如果我们启动了太多的并行进程,实际上系统资源(CPU)或者QC 无法即时处理并行服务发送的数据,那么等待将不可避免。 对于这种情况,我们就需要降低并行处理的并行度。
当出现PX Deq Credit:send blkd等待的时间很长时,我们可以通过平均等待时间来判断等待事件是不是下层的并行服务进程空闲造成的。该等待事件的超时时间是2秒,如果平均等待时间也差不多是2秒,就说明是下层的并行进程“无事所做”,处于空闲状态。 如果和2秒的差距很大,就说明不是下层并行服务超时导致的空闲等待,而是并行服务之间的竞争导致的,因为这个平均等待事件非常短,说明并行服务进程在很短时间的等待之后就可以获取资源来处理数据。
所以对于非下层的并行进程造成的等待,解决的方法就是降低每个并行执行的并行度,比如对象(表,索引)上预设的并行度或者查询Hint 指定的并行度。
- 2013-03-13等待事件PX Deq Credit: send blkd
- PX Deq Credit: send blkd 等待事件
- 'Px Deq Credit: Send Blkd
- PX Deq Credit:send blkd(待验证)
- oracle wait event:PX Deq Credit: send blkd
- AWR实战分析之---- PX Deq Credit: send blkd
- 等待时间 PX Deq Credit: need buffer 和 PX Deq Credit: send blkd
- 遇到PX Deq: reap credit等待事件
- PX Deq: Execution Msg,PX Deq: Execute Reply等待事件
- PX Deq: reap credit & GV$SESSION
- px等待事件
- PX Deq: Table Q Close
- 等待事件
- 等待事件
- oracle等待事件13——小结
- 等待事件之日志等待事件解决办法
- Latch Free等待事件
- ORACLE等待事件
- oracle体系结构详解
- 浅谈Android系统开发中LOG的使用
- 黑马程序员_java高新技(9) 代理
- 10大iOS开发者最喜爱的类库
- Eclipse搭建s2sh框架
- 2013-03-13等待事件PX Deq Credit: send blkd
- ASP.NET MVC3 中的UrlRewrite
- 制作可独立分发的Android模拟器
- showModalDialog 弹窗 传接值
- 链表的基本操作
- Android日志系统驱动程序Logger源代码分析
- js 正则总结
- [.NET/C#] [串口通讯] 二进制通讯 协议
- project euler Problem 13