利用AIX条带化(STRIPE)优化数据库IO

一、背景

生产环境IBM P560目前用于Oracle DataGuard 的standby机器。在oracle Apply 归档日志时,查看服务器IO情况,发现Hdisk0、1上的IO有时候能达到到100%。而Hdisk2、3上IO活动很少。

经分析,oracle的数据文件存放目录放在/oradata,该目录建立在hdisk0、1上。故在数据库发生读写数据文件时,只有hdisk0,1有IO。另外2块盘IO活动少。故考虑将数据库文件从rootvg迁移出来,将数据库的归档文件建立在rootvg里,达到平均分布服务器的IO的目的。

二、理论支持

一般以LVM管理的存储,一个vg中可能会有很多pv,同样的,一个lv可能跨越多块pv,为了使硬盘存储速度加快,就会用到条带化的技术,即把连续的数据分成大小相同的数据块,然后依次存储在各个pv上。类似于RAID0,使存储速度加快。但并不会使数据像RAID0一样危险容易丢失,因为在正式使用中,不会像此时做测试一样没有任何保障地将多块硬盘做成一个vg,而是普遍连接的后台存储,在划分LUN之前,已经在物理硬盘上做好RAID5或RAID1,在RAID5或RAID1的基础上再划分出多块LUN,即系统上的pv,即使pv所在硬盘损坏,但有底层的硬RAID冗余,并不会丢失数据。

条带单元大小:即条带化的LV中,每一个条带单元的大小,对应于I/O中数据块的大小。对于Oracle来讲,db_block_size即设定的数据块大小。而db_file_multiblock_read_count就一次读取时最多并行的数据块的个数,db_block_size和db_file_multiblock_read_count相乘即一次总的I/O大小。这个大小不能超过操作系统的最大I/O (max_io_size)值。在ORACLE应用中,lv条带的大小一般设置为两倍或两倍以上的Oracle块大小,因为假如设置成与Oracle数据块相同大小,无法保证Oracle数据块的边界正好与条带单元的边界对应,如果不对应的话,就会出现大量的一个I/O由两个条带单元,来处理的情况。

条带大小的原则:对于高并发并且IO请求小的情况下,一块物理硬盘处理多个I/O请求,低并发但I/O请求较大时,可能需要多块硬盘处理一个I/O请求。原则上的要求是一次I/O请求能被一次性处理完成。

大概的条带化的概念就是这样。

时间: 2025-01-26 17:32:01

利用AIX条带化(STRIPE)优化数据库IO的相关文章

AIX (NORAC)下面 ASM的安装及条带化和镜像的实现

原创 转载请注明: 前期要建立用户和组,查看补丁是否都打了1.建立多个LV 用来准备做RAW.通过SMIT就可以轻松的完成.没有安装文件系统的LV就是RAW我这里建立了5个RAW AMS1 AMS2 ASM3 ASM4 ASM5(妈妈的前面ping错了^_^)2.需要对RAW 设备进行权限改变如下:crw-rw----   1 oracle   dba          10, 12 Apr 19 14:47 rams1crw-rw----   1 oracle   dba          1

Oracle DBA优化数据库性能心得体会

很多的时侯,做Oracle DBA的我们,当应用管理员向我们通告现在应用很慢.数据库很慢的时侯,我们到数据库时做几个示例的Select也发现同样的问题时,有些时侯我们会无从下手,因为我们认为数据库的各种命种率都是满足Oracle文档的建议.实际上如今的优化己经向优化等待(waits)转型了,实际中性能优化最根本的出现点也都集中在IO,这是影响性能最主要的方面,由系统中的等待去发现Oracle库中的不足.操作系统某些资源利用的不合理是一个比较好的办法,下面把我的一点实践经验与大家分享一下,本文测重

ASP中优化数据库处理

ASP是一个Web服务器端的开发环境,它提供了一种简单易学的脚本(VBScript或Jscript),并带有许多内置的对象,从而提供了一条简捷的编程之路.更为重要的是,ASP中提供了ADO对象,让程序员可以轻松操作各种数据库,从而可以产生和运行动态的.交互的Web服务应用程序. 目前,国内很多电子商务站点都采用了ASP技术来与数据库交互,为用户提供各类服务. 由于电子商务站点的大部分信息都存放在数据库中,要提高Web的响应速度.建立高性能的电子商务站点,很大一部分取决于ASP与数据库之间的处理性

在ASP中优化数据库处理的实现

数据|数据库|优化 ASP是一个Web服务器端的开发环境,它提供了一种简单易学的脚本(VBScript或Jscript),并带有许多内置的对象,从而提供了一条简捷的编程之路.更为重要的是,ASP中提供了ADO对象,让程序员可以轻松操作各种数据库,从而可以产生和运行动态的.交互的Web服务应用程序. 目前,国内很多电子商务站点都采用了ASP技术来与数据库交互,为用户提供各类服务. 由于电子商务站点的大部分信息都存放在数据库中,要提高Web的响应速度.建立高性能的电子商务站点,很大一部分取决于ASP

在ASP中优化数据库处理

数据|数据库|优化 ASP是一个Web服务器端的开发环境,它提供了一种简单易学的脚本(VBScript或Jscript),并带有许多内置的对象,从而提供了一条简捷的编程之路.更为重要的是,ASP中提供了ADO对象,让程序员可以轻松操作各种数据库,从而可以产生和运行动态的.交互的Web服务应用程序. 目前,国内很多电子商务站点都采用了ASP技术来与数据库交互,为用户提供各类服务. 由于电子商务站点的大部分信息都存放在数据库中,要提高Web的响应速度.建立高性能的电子商务站点,很大一部分取决于ASP

一起谈.NET技术,asp.net利用log4net写入日志到SqlServer数据库

asp.net利用log4net写入日志到SqlServer数据库,Log4net是一个开源的错误日志记录项目,易用性强,源自log4j,品质值得信赖. 下面就我的安装部署log4net到MS sql server的经验与大家分享. 下载log4net的Dll文件并引入到项目中,在你的web主项目(比如MainWeb.csproj)添加对log4net.dll的引用,并在相应的Globall.cs文件中的Application_Start 事件中写入 protected void Applica

asp.net利用log4net写入日志到SqlServer数据库

asp.net利用log4net写入日志到SqlServer数据库,Log4net是一个开源的错误日志记录项目,易用性强,源自log4j,品质值得信赖. 下面就我的安装部署log4net到MS sql server的经验与大家分享. 下载log4net的Dll文件并引入到项目中,在你的web主项目(比如MainWeb.csproj)添加对log4net.dll的引用,并在相应的Globall.cs文件中的Application_Start 事件中写入 protected void Applica

在 Linux 下使用 RAID(五):安装 RAID 6(条带化双分布式奇偶校验)

RAID 6 是 RAID 5 的升级版,它有两个分布式奇偶校验,即使两个磁盘发生故障后依然有容错能力.在两个磁盘同时发生故障时,系统的关键任务仍然能运行.它与 RAID 5 相似,但性能更健壮,因为它多用了一个磁盘来进行奇偶校验. 在之前的文章中,我们已经在 RAID 5 看了分布式奇偶校验,但在本文中,我们将看到的是 RAID 6 双分布式奇偶校验.不要期望比其他 RAID 有更好的性能,除非你也安装了一个专用的 RAID 控制器.在 RAID 6 中,即使我们失去了2个磁盘,我们仍可以通过

html文件利用ajax方法 通过 servlet 获取数据库信息 显示乱码,求解?

问题描述 html文件利用ajax方法 通过 servlet 获取数据库信息 显示乱码,求解?suggest.html:<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"><script language="JavaScript" type="text/javascript" sr