我应该担心SAN中的分割I / O吗?

我们有一个NetApp存储系统将LUN提供给几个Hyper-V群集。 在2008 R2上运行系统性能跟踪(在perfmon中)时,会出现“高级分割I / O”的警告。 阅读分割I / OI发现,这很可能是由分散的驱动器引起的。

我发现很难相信硬盘在传统意义上是分散的,因为所有东西都是虚拟的(在LUN上,在卷上,在一个聚合中,在一个存储系统上的虚拟硬盘上,那个数据也是)。 那么我应该为此担心吗? 我看不到存储问题的任何证据,例如过度的延迟。

顺便说一下,在我们的一台虚拟机上运行碎片整理分析可以显示大约50%的碎片数据。 我想我读了一个地方,如果窗口检测到碎片超过20%,那么窗口会自动分割I / O。 碎片整理任务被禁用,那么它将如何知道?

由于你所描述的原因,虚拟机中的磁盘碎片只是一个事实。 在大多数工作负载中,这不是需要担心的事情。 如果您的工作负载执行大量的顺序IO,这可能是性能较差的原因,但不是随机读取/写入工作负载。

虚拟机有时被称为I / O混合器:)

多个I / O总是效率较低。 无论是performance为性能问题,都需要您确定。 根据定义,某些文件很大,并且有随机组织的数据,因此可能会出现一些分割I / O。

分割I / O也可能是另一个潜在瓶颈的症状,例如磁盘队列长度。

您可能希望确保您正在测量storport延迟。 这是埋在perfmon中,可以按照更多信息部分中所述进行测量:

http://support.microsoft.com/kb/978000

在相同的硬件上,2008 R2 SP1 storport SAN的性能比Windows 2003要慢。

如果存在性能问题,您可能需要确保操作系统在相关的非安全修补程序上保持最新。

对于Netapp来说,分割IO通常意味着不好alignment 。 如果你的MBR补偿了虚拟机的磁盘块,使它们跨越了Netapp块的边界,那么每当你从操作系统的一个块上做IO时,你就不得不两次打开存储器。