当RAID 10比RAID 1小时,为什么?

我们有一台带PERC 6 / e的新型戴尔2950和14个外置SAS 15K 73GB硬盘。 运行Oracle 11g数据库作业需要3个小时才能将驱动器设置为硬件RAID 10(跨7个镜像对分条)。 数据库的大小约为26GB。 RAID 1中只有两个驱动器运行的作业只需要1个小时。 操作系统是Win 2008 R2。

在我们改变生产环境中的RAID级别(相当多的停机时间)之前,有没有人知道我们为什么会看到这个奇怪的结果,以及是否有更好的方法来解决这个问题?

添加信息

PERC 6 / e应该运行最新的固件和caching电池好吧。

最后,真实的故事

和DBA讲​​话后,我的脸红了。 原来RAID 1是七个RAID 1卷,每个有两个驱动器。 数据表和索引分配给每个卷以最小化争用。 显然,一个好的DBA可以从14个驱动器获得更多的性能,而不是一个RAID 10控制器在它们之间盲目地分散,而不考虑文件访问模式。 一些SAN声称智能迁移文件以提高性能,但是如果不久的将来会有烘烤,我的钱就在我们的DBA上!

我认为user71281意味着你的RAID控制器(或驱动程序)搞乱了。 当您通过控制器(或驱动程序)的RAID设置时,RAID10设置永远不会比简单的RAID1慢。

你的RAID解决scheme可以让你设置一个非常低效的RAID10arrays,或者你已经发现了一个错误。 也许性能提高了第八对? 或者,也许当你减less设置4对? 最后一个选项可能意味着您必须升级到146GB的磁盘。

但是我会首先检查固件更新,并检查RAID卡上有多lessRAM。 它没有closures其cachingfunction,因为一个BBU(电池备份单元),是吗?

实际上,RAID1比RAID10快,当然RAID 0比两者都要快。 原因是奇偶校验和计算开销比RAID-10高7-RAID1卷。 正如你的DBA所说,磁盘争用较less,主轴隔离度较高。

不足之处在于每个RAID1对的磁盘空间不足。 不同于交易运行时,分离效果非常好,但是在RAID1中将多个驱动器拆分为多个驱动器可以提高性能,因为现在许多主轴并行工作。

有一件事要考虑的是你创build一个更小的磁盘时你的簇大小会更小。 您可能需要使用DISKPART,并将群集大小设置为日志8K,数据64K,而不将日志和数据混合在同一个子目录中。 这很可能是你的DBA如何设置的,现在你在同一个RAID10上同时组合了两个磁盘,导致了更多的磁盘争用。

为了logging:迁移可以通过临时软件raid1在线完成迁移时间。 这意味着您需要再设置一个存储空间。 现在,我们可以借用一堆固态硬盘,并将它们作为一个大容量的iSCSI卷来完成,而无需停机。 一般来说,迁移存储时,正确的做法是增加冗余,然后删除旧的部分。 因此迁移过程中的最高风险时间将在开始之前和完成之后进行。 因为你只是在预期的冗余上运行。