文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Oracle:db file scattered read

2024-04-02 19:55

关注

这个等待事件在实际生产库中经常可以看到,这是一个用户操作引起的等待事件,当SESSION等待multi-block I/O完成时,会产生这个等待事件。

这通常发生在两种情况下:全表扫描(FTS: Full Table Scan)和索引快速扫描(IFFS: index fast full scan)。

Oracle每次读取一个连续块的DB_FILE_MULTIBLOCK_READ_COUNT,并将它们分散到缓冲区缓存中。如何做到这一点取决于平台和您正在运行的Oracle的发布。它也可能根据所读取的设备类型和请求的块的数量而变化。

这个等待事件有三个参数:

select event#,name,parameter1,parameter2,parameter3 from v$event_name where name = 'db file scattered read';
    EVENT# NAME                          PARAMETER1     PARAMETER2      PARAMETER3
---------- ----------------------------- -------------- --------------- ---------------
       154 db file scattered read        file#          block#          blocks

一、等待——定位

  1. 会话信息
    查看哪些会话正在执行扫描,并跟踪它们以查看扫描是否被期望是很有用的。

    SELECT sid, total_waits, time_waited
      FROM v$session_event
    WHERE event='db file scattered read'
      AND total_waits>0
    ORDER BY 3,2;
    也在V$SESSTAT中查询具有高“table scans blocks gotten”的会话
    当这个等待事件比较显著时,可以结合v$session_longops 动态性能视图来进行诊断,该视图中记录了长时间(运行时间超过6 秒的)运行的事物。
  2. 表空间 & 数据文件

    可以查看AWR(或STATSPACK)报告的“Tablespace IO”和“File IO”部分,以及ADDM和ASH输出。这些文件应该显示哪些tablespaces / files正在为大多数I/O请求提供服务,并显示I/O子系统的速度。在“db file scattered read”中所涉及的 tablespaces/files 将有 "Av Blks/Rd" > 1。
    读取文件的文件也可以通过查看V$FILESTAT中BLKS_READ / READS > 1找到(大于1的比率指示出现了多个块读取)。

  3. segments & objects
    查看哪些 segments/objects 对象执行读操作。

  4. select event,p1,p2,p3,row_wait_obj# from gv$session where event = 'db file scattered read';
    select object_name,object_type from dba_objects where object_id=row_wait_obj#;
  5. SQL
    可以查看AWR报告的“Top SQL by Disk Reads”部分,以获得任何导致高I/O的SQL的线索。如果启用了统计信息收集,那么V$SQL_PLAN还可以使用完整扫描提供有关SQL语句的线索。
    V$SQL中高DISK_READS语句——在awr的“Top SQL by Disk Reads”部分中显示。
    如果一个数据库的大表扫描过多,那么db file scattered read等待事件可能同样非常显著。如果table scans (long tables)的per Trans值大于0,你可能需要增加适当的索引来优化你的SQL语句

二、等待——降低

“db file scattered read”的一些具体点包括:

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯