通过详细的10046 trace发现,大量的io等待分布在以下数据文件上:
Misses in library cache during parse: 0
Elapsed times include waiting on following events:
  Event waited on                             Times   Max. Wait  Total Waited
  ----------------------------------------   Waited  ----------  ------------
  SQL*Net more data from client                  47        0.00          0.00
  db file sequential read                      1396        1.40         69.48
通过查看发现其中file#=后面的文件号对应的数据文件分别为:
WAIT #3: nam='SQL*Net more data from client' ela= 97 driver id=675562835 #bytes=5 p3=0 obj#=-1 tim=2087739809552
WAIT #3: nam='db file sequential read' ela= 9787 file#=203 block#=65516 blocks=1 obj#=139501 tim=2087739819840
WAIT #3: nam='db file sequential read' ela= 29250 file#=88 block#=903826 blocks=1 obj#=139503 tim=2087739849887
WAIT #3: nam='db file sequential read' ela= 14184 file#=86 block#=262556 blocks=1 obj#=139503 tim=2087739864826
WAIT #3: nam='db file sequential read' ela= 62924 file#=89 block#=914843 blocks=1 obj#=139503 tim=2087739927918
WAIT #3: nam='db file sequential read' ela= 30286 file#=86 block#=788126 blocks=1 obj#=139505 tim=2087739959072
WAIT #3: nam='db file sequential read' ela= 12197 file#=85 block#=346836 blocks=1 obj#=139505 tim=2087739971677
WAIT #3: nam='db file sequential read' ela= 19443 file#=89 block#=825411 blocks=1 obj#=139505 tim=2087739991255
WAIT #3: nam='db file sequential read' ela= 73414 file#=89 block#=378855 blocks=1 obj#=139505 tim=2087740064903
WAIT #3: nam='db file sequential read' ela= 25007 file#=87 block#=279733 blocks=1 obj#=139505 tim=2087740090218
WAIT #3: nam='db file sequential read' ela= 34222 file#=86 block#=349231 blocks=1 obj#=139505 tim=2087740124718
WAIT #3: nam='db file sequential read' ela= 12976 file#=87 block#=639786 blocks=1 obj#=139505 tim=2087740137987
WAIT #3: nam='db file sequential read' ela= 42800 file#=87 block#=277869 blocks=1 obj#=139505 tim=2087740180951
WAIT #3: nam='db file sequential read' ela= 26248 file#=203 block#=39292 blocks=1 obj#=139505 tim=2087740207500
WAIT #3: nam='db file sequential read' ela= 16534 file#=88 block#=75324 blocks=1 obj#=139505 tim=2087740224369
WAIT #3: nam='db file sequential read' ela= 14318 file#=87 block#=276944 blocks=1 obj#=139505 tim=2087740238924
WAIT #3: nam='db file sequential read' ela= 10609 file#=15 block#=50567 blocks=1 obj#=139505 tim=2087740249666
WAIT #3: nam='db file sequential read' ela= 15451 file#=86 block#=349898 blocks=1 obj#=139505 tim=2087740265319
WAIT #3: nam='db file sequential read' ela= 41652 file#=89 block#=766147 blocks=1 obj#=139505 tim=2087740307199
WAIT #3: nam='db file sequential read' ela= 24658 file#=86 block#=352515 blocks=1 obj#=139505 tim=2087740332184
WAIT #3: nam='db file sequential read' ela= 18741 file#=87 block#=408687 blocks=1 obj#=139505 tim=2087740351201
WAIT #3: nam='db file sequential read' ela= 13814 file#=87 block#=213143 blocks=1 obj#=139505 tim=2087740365202
WAIT #3: nam='db file sequential read' ela= 19805 file#=85 block#=809539 blocks=1 obj#=139505 tim=2087740385174
WAIT #3: nam='db file sequential read' ela= 84448 file#=88 block#=648443 blocks=1 obj#=139505 tim=2087740469831
WAIT #3: nam='db file sequential read' ela= 19118 file#=14 block#=49758 blocks=1 obj#=139505 tim=2087740489121
WAIT #3: nam='db file sequential read' ela= 18210 file#=85 block#=260618 blocks=1 obj#=139505 tim=2087740507502
WAIT #3: nam='SQL*Net more data from client' ela= 50 driver id=675562835 #bytes=1 p3=0 obj#=139505 tim=2087740508284
WAIT #3: nam='db file sequential read' ela= 16073 file#=203 block#=65574 blocks=1 obj#=139501 tim=2087740524783
 
 
综上所属,通过详细的10046 trace中可以看到,在一条数据插入时会写入5到8个不同的数据文件,原因为oracle会在此表空间中寻找可用块,这些块不一定连续,因此硬盘寻道会话费大量的时间因此造成大量的db file sequential read等待事件。因此本月余下的几天会持续出现导入数据慢的问题,预计在下个月份使用新的表空间时问题会得到缓解。

记一次insert因为db file sequential read影响性能导致性能原因的分析的更多相关文章

  1. oracle之 db file sequential read等待事件优化思想

    为什么db file sequential read事件在full table scan操作中显现,为什么在多块读中为什么会有单块读存在 ? extent的大小 :当扩展区中的最后一组块仅是1个块,o ...

  2. 何时会发生db file sequential read等待事件?

    很多网友对系统内频繁发生的db file sequential read等待事件存有疑问,那么到底在那些场景中会触发该单块读等待事件呢? 在我之前写的一篇博文<SQL调优:Clustering ...

  3. 模拟等待事件:db file sequential read

    相关知识: db file sequential read  单块读 optimizer_index_cost_adj 这个初始化参数代表一个百分比,取值范围在1到10000之间.该参数表示索引扫描和 ...

  4. 常识之外:全表扫描为何产生大量 db file sequential read 单块读?

    原创 2016-07-05 熊军 Oracle   编辑手记:在理解Oracle技术细节时,我们不仅应该读懂概念,还要能够通过测试验证细节,理解那些『功夫在诗外』的部分,例如全表扫描和单块读. 开发人 ...

  5. db file sequential read (数据文件顺序读取)

    转载:http://www.dbtan.com/2010/04/db-file-sequential-read.html db file sequential read (数据文件顺序读取): db ...

  6. 全表扫描出现db file sequential read

    SESSION 1执行 SQL> update test1 set id=1000; SESSION 2 : select * from test1 如果表上面有大量的行迁链接,会是单块读等待事 ...

  7. 等待事件--db file sequential read

    对于最小化db file sequential read 事件所带来的影响,你可以做的另一件事情是减少AVERAGE_WAIT时间. 这是会话必须等待从磁盘提取单块的平均时间,这些信息可以从v$ses ...

  8. db file sequential read等待事件的一点研究

    db file sequential read等待事件有3个参数:file#,first block#,和block数量. 这个等待事件有3个参数P1,P2,P3, 其中P1代表Oracle要读取的文 ...

  9. 全表扫描引发的db file sequential read

    今天我要做一个SQL调优,监控该SQL, 利用ASH 监控 该SQL是在sid=4848 上面跑的 db file sequential read等待事件有3个参数:file#,first block ...

随机推荐

  1. centos 7编译安装apache

    1.安装工具和依赖包 yum install unzipyum -y install gcc gcc-c++ 2.创建软件安装目录mkdir /usr/local/{apr,apr-util,apr- ...

  2. ADT安装Genymotion的eclipse插件安装及错误解决办法

    接触安卓开发也有很长一段时间了,但是一直使用的真机测试程序,因为感觉android模拟器实在是太不方便,运行慢,而且经常出错.最近听人介绍说Genymotion这款Android模拟器相当不错,于是打 ...

  3. IDEA里运行代码时出现Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger的解决办法(图文详解)

    不多说,直接上干货! 问题详情 运行出现log4j的问题 -classpath "C:\Program Files\Java\jdk1.8.0_66\jre\lib\charsets.jar ...

  4. 单元测试工具 - karma

    在离开上一家公司之前,team leader 在我离开前留给了我最后几个关键字:karma,断言库,JASMINE,QUNIT,MOCHA. 可一直拖拖沓沓的,没有去了解.直到今天,才终于抽出心情和时 ...

  5. React.js 小书 Lesson20 - 更新阶段的组件生命周期

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson20 转载请注明出处,保留原文链接和作者信息. 从之前的章节我们了解到,组件的挂载指的是将组件 ...

  6. master.sys.sysprocesses相关内容

    sysprocesses 表中保存关于运行在 Microsoft® SQL Server™ 上的进程的信息.这些进程可以是客户端进程或系统进程. sysprocesses 只存储在 master 数据 ...

  7. MySql数据库与JDBC编程

    JDBC -- Java Database Connectivity,即Java数据库连接,通过使用JDBC就可以使用同一种API访问不同的数据库 SQL语句基础(SQL结构化查询语言) 能完成的任务 ...

  8. Redis单机数据迁移至Sentinel集群

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  9. maven filter不起作用

    遇到的一个坑, spring boot + maven maven fileter没有起作用.spring boot把默认占位符改了 参考:https://blog.csdn.net/mn960mn/ ...

  10. 二、NAT(地址转换模式)

    刚刚我们说到,如果你的网络ip资源紧缺,但是你又希望你的虚拟机能够联网,这时候NAT模式是最好的选择.NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网.其网络结构如下图所示: NA ...