网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>数据库技术>>Oracle技术>>Oracle开发>查看文档  
  深入了解缓冲日志文件i/o重要性能问题     
  文章作者:未知  文章来源:赛迪网技术社区  
  查看:72次  录入:管理员--2008-04-16  
 

【赛迪网-it技术报道】本文中,我们将主要讲解缓冲日志文件i/o的两个重要性能问题,具体内容如下:

1.缓冲日志i/o会经历局部块写。因为重做写随机的日志块号并且日志块相对于文件系统缓冲较小。通常重做写的最后一个日志块不会分配到文件系统缓冲结尾。因此,除非日志文件旧映像所在的目标文件块仍在缓存中,否则在重做拷贝到其文件系统缓冲的另一部分前必须将那个块从磁盘读取到内存。从日志文件预读主要用于缓冲重做写。

如果磁盘阵列有很大的缓存并且在日志文件上具有高效的预推进算法,那么预读花费的时间可能非常小,并且不会推迟重做写。但是如果预读和重做写要求物理磁盘服务,则肯定会有额外的延迟,并且等于磁盘全旋转的延迟。

2.缓冲日志i/o也会经历i/o碎片。当重做写到多个文件系统缓冲时,每个缓冲的物理写无法排队为并行的,因此不能被硬件流水线操作。相反,组件物理写串行执行,并且在每对写之间维持一个完全的旋转延迟。

这些问题都可以通过使用文件系统直接i/o或者使用裸日志文件解决。裸i/o通常比直接i/o更好,因为其允许更有效的使用异步i/o。

lgwr需要异步i/o并行化写多个日志文件成员以及在事务提交时迭代重做写。可以使用硬件镜像重做日志以避免串行写到多个日志文件成员,并且可以使用硬件镜像最小化重做写的cpu代价。但是异步i/o需要迭代随后的重做写,因为lgwr i/o slaves不会一致的做该工作。裸i/o使得异步i/o有可能实现,而其他的需要lgwr依赖线程异步i/o或lgwr i/o slaves。

注:部分块写,i/o碎片和同步i/o写都会严重影响lgwr's i/o的性能及可扩展性。

 
 
上一篇: _row_cache_cursors参数应当如何设置    下一篇: 由浅至深讲解oracle数据库 b-tree索引 (1)
  相关文档
利用SQL *Plus复制遗留的Oracle数据表 05-13
入门级的oracle数据库备份与数据库还原 09-24
解析:用dbv和rman检查数据文件中的坏块 11-15
为什么oracle中只能用sys和system登录 07-30
在oracle中重新编译所有无效的存储过程 03-14
Oracle中对像名大小写敏感性的深入解析 08-05
怎样在oracle里用存储过程定期分割表 (1) 01-25
详细讲解数据缓冲区与共享池的命中率 04-07
用Oracle 10g列值掩码技术隐藏敏感数据 04-11
什么是Oracle数据访问组件(ODAC) 09-29
Oracle案例详细分析:Job任务停止执行 04-23
理解和使用Oracle 8i分析工具-LogMiner 01-15
Oracle DBA数据库日常维护完全手册 04-23
将Oracle的数据倒入EXCEL中的方法 04-23
Oracle7.X 回滚表空间数据文件的误删除 06-03
Oracle Online Redo LogFile 09-29
Oracle中用LogMiner分析重做及归档日志 04-11
oracle 9i和10g安装后的基本环境与服务 (1) 04-30
记录一致性错误日志可以简化PL-SQL调试 07-07
Oracle数据库的空间管理技巧 01-15
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息