ORACLE磁盘IO优化

上传人:简****9 文档编号:109720624 上传时间:2019-10-27 格式:DOC 页数:7 大小:71.50KB
返回 下载 相关 举报
ORACLE磁盘IO优化_第1页
第1页 / 共7页
ORACLE磁盘IO优化_第2页
第2页 / 共7页
ORACLE磁盘IO优化_第3页
第3页 / 共7页
ORACLE磁盘IO优化_第4页
第4页 / 共7页
ORACLE磁盘IO优化_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《ORACLE磁盘IO优化》由会员分享,可在线阅读,更多相关《ORACLE磁盘IO优化(7页珍藏版)》请在金锄头文库上搜索。

1、ORACLE磁盘I/O优化适用机型:所有服务器文档内容:随着SAN存储的介入,I/O子系统的性能调整达到了一个较为复杂的层次。因为,SAN光纤存储网络包括以下几个方面:存储共享,也就是不同的结点对同一具有不同访问模式的存储子系统进行读写操作。I/O子系统变得更为复杂,在I/O通讯路上存在不同类型的设备,比如SAN交换机及陆游器,在多种节点间共享。上述方面会严重地影响到系统的性能。值得强调的一点是,设计不是为了追求最好的配置的研究而是追求最好取舍的研究。举个例子来讲,我们可以简单容易地尽可能延迟检查的结点来提高性能,可是这样会使ORACLE数据恢复起来需要相当长的时间。同样地,RAID0能体现最

2、优的I/O性能却没有数据的保护功能。I/O子系统的设计主要是价格,可靠性及性能三者之间的衡量。如果我们忽略FC SAN设备的昂贵价格,其它主要的影响价格的因素有:硬盘的主要制造价格硬盘的电子接口(光纤VS SCSI)硬盘容量大小,比如,只使用一个72G的硬盘的解决方案比使用两个36G硬盘的解决方案要来得便宜。除此之外,我们使用越多的硬盘,我们就必须购买越多的背板,线缆,机柜等等。RAID级别。实际上RAID级别的选择对满足相应的数据库的存储容量所需的硬盘数量有明显的影响。因此也会影响前面所述的总的花费。如果我们忽视FC SAN所具有的特定特性,那么主要的影响可靠性的因素有:硬盘平均损坏时间硬盘

3、的数量。从一个统计的观点来看,硬盘的数量越多,存储子系统出现问题的风险就越高。每个硬盘的容量。容量越小,硬盘的个数就越多。阵列级别,RAID级别对总的存储子系统的可靠性来讲有复杂的影响。如果我们再次忽略SAN在性能方面的影响,影响性能的主要因素有:RAID控制器的缓存大小RAID级别(比如,RAID10 VS RAID5)RAID阵列的条带单元大小ORACLE数据库块大小表空间的分配下面我们来一一述:RAID控制器的缓存大小取决于存储访问的模式,RAID控制器的缓存可能对系统的性能产生决定性的影响。缓存在RAID5阵列的写操作中担任着重要的角色。写缓存在得到RAID控制器的承认后才将数据写入硬

4、盘。由此会在以下几个方面给性能造成影响:更新可以覆盖之前的更新,由此来减少硬盘写操作的次数。多次组需求,硬盘的工作日程可能可以达到最优的性能。通过在控制器缓存里对连续的请求分组来实现。写小容量的数据(操作更新一个单一的条带单元)可能转换成大容量的写操作(将对所有条带单元的写操作提升为整个条带写操作)。一个写小数量的操作比如只修改一个单一的条带单元,请求基于读-修改-写运算法则,需要两次读操作并要两次写操作。如果是大容量的写操作需要最大数量为2xN次操作来更新N个数据块(N是硬盘的个数),由此来来达到更好的性能。读-修改-写运算法则要求对每个条带单元的修改作两次读操作。如果RAID控制器使用完全

5、XOR运算法则的话,将会要求更多的读操作,在三个硬盘的阵列中除外。RAID控制器缓存里可能存有这些数据,由此来减少读操作的次数。然而,不要过高估计缓存的大小。有时小容量的缓存会带来高效益,通常翻剖提高缓存的容量带来的效益较小。而且,RAID控制器缓存只是众多缓存中会影响I/O子系统性能的成员之一。其中一个主要的扮演角色是ORACLE DBMS 缓存。阵列级别的优化如果不受价格的限制,那么最好的选择是RAID10。问题是要明白在什么样的应用中选择RAID10能带来最大的性能优化的同时,使付出的昂贵的价格有所值。在数据仓库中,传统的对数据文件的访问模式几乎100%是读操作;因此RAID10所能带来

6、的性能优化在写操作中是体现不出来的,RAID5级别是可以接受的。从另一方面来讲,在一个传统的OLTP环境中,大量的写操作使得RAID10成为数据文件阵列的最好选择。当然,即使是 对OLTP数据文件来讲,RAID5在低价格的前提下还是可以接受的(以下为低投入理念的解释)。数据保护总的来讲RAID1比RAID5更可靠。配备了热备盘的RAID5一般比没有配备热备盘的RAID1更可靠。配备了热备盘的RAID1比配备了热备盘的RAID5更可靠。对于RAID5来讲最优化可靠的方法是配备两个热备盘。配备了两个热备盘的RAID5阵列具有相当高的可靠性,相对而言配备了热备盘的RAID1没有带来特别显注的可靠性,

7、所以可以将RAID级别能从可靠性问题中独立出来。除了RAID级别外,还有其它少数的因素会影响I/O子系统的可靠性。为了使问题简单化,我们应该忽略热备盘所带来的影响。根据G. A. Gibsons的论文有关高可靠性数据的硬盘阵列的设计。假设现有一个独立的有问题例子,对于阵列 的平均丢失数据时间由以下公式来决定: 其中MTTF 是硬盘的平均损坏时间,MTTR是平均维修时间。G是对每组具有N+1硬盘错误校验的次数据,为了区分清楚这些符号的意义,我们指出系统是否有一个热备盘,MTTR是需要恢复数据的时间(错误校验组),在这种情况下是将一个工作的硬盘替换损坏的硬盘重建阵列的时间。以上公式清楚地表明了创建

8、非常大的RAID5阵列的风险。举例子来说,10 (G=10)10个硬盘(N=9)阵列(总共为100个硬盘),产品GN(N+1)是900,当5 (G=5) 20硬盘 (N=19) 阵列 (总共 100 硬盘) 产品数量为 GN(N+1) 是1900,数据库文件考虑到写操作,RAID10阵列比RAID5要好的多,反而对于读操作来讲,两者之间的差别是很小的。从这个简单的道理中我们得出以下建议:在线重新生成的LOG文件-强烈建议使用RAID1。万一是要求很高的性能的话有可能必要选择RAID10.然而,RAID10的高性能在处理非常小的条带单元大小的时候才体现出来。存档重新生成的LOG文件-推荐使用RA

9、ID1。然而,存档重做LOGS 并不象重做log文件那样对性能的要求如此严格。因此,最好是将存档重做LOGS存在RAID5阵列中,而不是将重做LOGS在线重做LOGS文件存在RAID5阵列上。临时段-RAID1或者,最好是选择RAID10,推荐使用在象数据仓库中具有很多类别操作的案例中。数据文件-对于数据仓库来讲可以选择RAID5,因为主要的访问是读取小容量的数据库。总的来讲,RAID10是建议的RAID级别。优化条带单元大小优化性能是介于性能与其它必要需求的取舍操作,特别是可靠性,同时它也是介于不同点与对应性能需求两者之间的取舍。举个例子来讲,如果一个阵列在经典OLTP活动中使用了两者,在一

10、个普通DB里更新小标签,同时也为大量的报告,那么我们就必须决定某些可以接受的性能的下降来提高其它的操作的性能。选择最优化的条带单元大小是介于大I/O操作与小I/O操作之间的权衡取舍。目的是让所有的硬盘工作。如果应用频繁,也就是同时发生的逻辑I/O操作次数很高的话,那么条带单元的大小应该大些来确保每一个逻辑I/O是被单一硬盘来提供服务。从另一方面来讲,如果应用低的话,条带单元大小应该小些,由此来确认发出每个单一指令时所有的硬盘都有相应操作,由此来达到最大的吞吐量。第二个影响条带单元大小选择的因素是平均I/O大小。用抽象的术语来讲,I/O大小跟条带单元大小应该是一致的。ORACEL数据块没有必要跟

11、条带单元看齐为了提高逻辑I/O操作与一个物理I/O操作完全吻合的可能性,推荐将条带单元的大小设置成至少比平均I/O尺寸大小大两倍。在设计ORACEL I/O使之达到最优化的时候,必须明白应用率以及平均I/O尺寸大小。Cary V. Millsap在设计ORACLE VLDB服务器时,总结了以下表格中的推荐值:由于条带单元大小有可能对I/O性能有非常重要的影响,推荐在对性能要求敏感的系统中使用相应技术使之允许在线改变条带单元大小。比如IBM存储性能,这是选择使用光纤存储(IBM TotalStorage DS4000 系列)而不是SCSI存储(ServeRAID 适配器)的其中一个主要原因。OR

12、ACLE数据库块大小 ORACLE 数据库管理员经常会被要求设置数据库的块大小(DB_BLOCK_SIZE),这是最会影响I/O性能的参数。实际上,有I/O访问的经历可能是很小的。改变该参数的唯一方法是创建一个新的数据库,并将数据转移到上面。在安装的时候,如果有的话也是非常少的一些信息在经典I/O尺寸中可以使用,数据库的管理员可以会衡量以下基本的首要原则:通常数据库给OLTP系统的数据块大小为8 KB 或 16 KB通常数据库给DW系统的数据块大小为8 KB 或 16 KB,有时候甚至大到64 KB都可以。一个4 KB的数据库块尺寸大小可以在VLDBs包含上千个非常小的段的情况下提高性能。除此

13、之外,为了避免不必要的I/O操作,块尺寸应该是多操作系统基本数据块的大小(分配单元)。以发布的9i来讲,ORACLE在同一数据库中可支持多块尺寸大小。这种能力提高I/O性能,因为在数据库里的每一表格空间选择最好的块尺寸大小是不可能的。表格空间分配对于表格空间来讲,基本的在表格空间设计的方向是为了达到一个好的基于相对立的性能及可靠性两者之间的选择是:在表格空间内分散数据,由于使得每一个表格空间段包含最大的具有相似特性的数据。 I/O访问率 I/O尺寸 访问模式(读VS写,连续VS随机) 时间段的范围 这使得你可以容易地选择最好的条带单元大小,来取得最多的I/O存储子系统和最小化数据块。在表格空间

14、内分配数据必须注意表格空间的维护要求。特别的操作需要表格空间在离线的状态。举个例子来讲,由于系统表格空间不可以离线,建议最好避免在之内存放数据。有了这些向导,以下列出了最重要的推荐。只放置字典段及系统反转段在系统的表格空间内。这是同时兼顾性能及维护原因。将临时段放在专门的表格空间内。将反转段放在专门的表格空间内。不要将段放在较短的时间段内,会带来很高的分裂,在表格空间中也会带来长时间的时间段。只将只读段放在专门的表格空间内。将类似的尺寸段放在专门的表格空间内。配置例子表27-2表明了最小的配置。RAID-1被选为连续访问(在线及存档再做LOGS)硬盘,RAID-5被选作随机访问硬盘。表27-4表明了一种高性能的配置。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号