重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 266|回复: 0
打印 上一主题 下一主题

[Oracle] direct path read temp / direct path write temp等待事件

[复制链接]
跳转到指定楼层
楼主
发表于 2025-12-14 11:40:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

direct path read temp / direct path write temp

为了排序工作在临时区域读写时,等待direct path read temp、direct path write temp事件。

这个等待时间是从10g开始被分类的。9i之前是通过direct path read 、direct path write 等特观察的。排序段上的direct path I/O是在需要排序的数据比为排序所分配的PGA内存区大时发生的。因此若排序工作时大量发生direct path read tmp 、direct path write temp等待,就可以通过追加分配内存区域而避免等待。

1)应用程序层:检查需要排序的SQL语句是否已经最优化。不必要的排序操作会导致CPU浪费、PGA区域的浪费、磁盘I/O的浪费。从union和union all 的性能差异上可以得知,只靠减少不必要的排序操作,也能解决许多问题。

2)oracle内存层:PGA拥有为执行排序、Hash join、位图等运算等的内存区域,这个称为工作区(work area);在进程上分配的工作区大小内一次性实现的排序称为one pass sort。与此相反的情况称为multi pass sort。发生multi pass sort时,排序工作过程中将排序结果读写到排序段(sort segment)区域,因此发生direct path read temp 、direct path write emp等待。如果等待大量发生,就可以适当提高PGA_AGGREGATE_TARGET值,以此消除问题。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-17 22:36 , Processed in 0.237600 second(s), 20 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表