raid卷和分区之间有什么显着的区别?

我可以select创build一个raid卷并在操作系统中对其进行分区,或者创build多个raid卷(每个分区一个)?

  1. 两者之间的性能或访问时间差异是什么?
  2. 他们处理不同吗? 如果是的话,每个人的利弊是什么?

答案完全取决于情况。
您需要评估您的特定环境和您的特定需求,以便对RAID卷布局和分区scheme做出决定。

处理这两种方式之间的区别归结为“一个RAID卷或几个”。

有了一个RAID卷,你就有了简单 – 你正在分割一大块空间。
这种简单性是以牺牲性能为代价的:所有请求都打到一个RAID卷,所以随着扩展和增加更多的请求,您将更接近于使该卷的可用带宽达到饱和。
请求之间没有区别,所以如果您的计算机正在大量交换试图同时从数据库中读取数据,那么这两个任务将尝试达到相同的磁盘带宽池,并可能导致资源争用,最终导致性能下降。

多个RAID卷允许您在不同的磁盘组以及可能不同的RAID控制器之间分割“请求types”,以最大化可用带宽。
使用我们的“交换与数据库”的战斗,如果交换空间和数据库在不同的RAID卷上,它们不会互相干扰:交换请求正在交换卷的磁盘上,并且DB请求正在触击DB卷的磁盘。 这消除了资源争夺,并允许更好的性能。
性能也是以牺牲成本为代价的 – 您将失去“一大块空间”devise的简单性,而且必须更加仔细地考虑将磁盘分配给RAID卷以确保您不会耗尽空间。 您可能还需要购买更多的磁盘才能正确构build这种环境。

三个潜在的例证:


基本的“前端”服务器

对于一个简单的“前端”服务器来说,只是运行一个网站,并将其所有请求发送到后端系统/数据库,而由操作系统分区的单个RAID通常是有意义的。

你不会在这个盒子上存储数据,读/写性能通常不是关键的,因为磁盘I / O数量很less,你的应用程序代码通常适合RAM /caching – 你只需要系统保持工作,如果你失去一个磁盘。


文件服务器(“文件转储”)

文件服务器(或“文件转储”)通常可以分成两个RAID卷:

  • 操作系统的东西
  • 文件存储

在这种情况下,“OS Stuff”将按照与上述相同的方式进行细分,但“File Storage”RAID卷可能是一个大分区或多个分区。
这样做的一个原因可能是提供不同的RAID级别(用于操作系统的RAID 1,用于数据的RAID 0(如果您不关心冗余并且只需要空间),可能跨越不同类别的驱动器(快速文件存储,较慢/较便宜的操作系统磁盘)。


数据库服务器

数据库服务器与“前端”服务器完全相反。
通常情况下,您可以将它们分成多个RAID卷:

  • 静态操作系统文件,可能还有操作系统日志文件
  • 交换空间,尽pipe你希望永远不要使用它
  • 数据库表空间
    • 如果我们谈论高音量的话,可能有多个表空间
  • 数据库事务日志空间
  • 数据库备份(转储)

其中的第一个可能会被操作系统进一步细分,但其余的通常是分立的,专用的RAIDarrays。

在这里,RAID卷布局(和分区)实际上是由数据库性能因素决定的,而且您通常会遵循数据库供应商(或DBA)的build议,这些供应商将专注于多个主轴(有时在多个控制器上)以最大化磁盘吞吐量。