如何在configurationRAIDarrays时select最佳的条带大小

互联网上有各种各样的“参考资料”,深入讨论了在为磁盘arraysselect特定的RAID条带大小(4KB到128KB或更多)时需要考虑的因素,但是这些都不是非常权威也不一致的彼此真的

例如:

约翰的技术位
条纹宽度和大小
RAID优化指南

特别是文件系统types(FAT,NTFS等),文件系统集群大小,caching策略,磁盘驱动器命令调度策略,多个命令是否可以是排队(标记排队)到有问题的驱动器等。

我正在寻找的是一个权威的,数据驱动和参考的论文,究竟是什么所有因素的考虑真正是最终如何采取分析方法来select最佳的条带大小给定的应用程序,而不经过暴力行使尝试所有这些因素的组合,以查看最佳性能的结果。

不幸的是,你可能会发现这样的论文很难find,即使你在浏览相关的学术论文集的时候偶然发现了一个论文,sod的定律说,这篇论文没有涉及到的一个情况就是最接近你预期的I / O模式。

它实际上是一个复杂的领域 – 并不复杂 ,因为问题的每个部分都不是火箭科学,而是复杂的,因为不同的因素可以相当微妙的方式相互作用 – 这就是为什么你会发现在一些build议中显着的不一致build议所依据的testing结果很大程度上取决于testing的确切性质以及他们试图模拟的I / O模式)。 因此,find一份涵盖您的确切需求的论文将是相当幸运的,除非您的需求是非常基本的(在这种情况下,像“默认可能会很好”的更一般的build议实际上就足够了)。 任何试图涵盖所有东西(甚至是大多数东西)的论文在完成前很长时间才会产生以至于无关紧要。

唯一确定的方法是尝试一些组合。 尝试在几个configuration上为您的应用程序复制典型的I / O负载,并查看它如何进行基准testing。 我希望这不会是无益的,但我认为这是唯一可以肯定的方法。 话虽如此:如果您提供了一些有关环境的更多具体细节,您可以考虑使用RAIDconfiguration,但有人可能会指向一个纸张或其他更适合这种环境的资源+ kit + application + load结合比你已经find的来源。

作为一个近乎实际的例子,我上个星期在我的上网本上进行了一些RAIDtesting(在决定内部SSD的写入速度太慢了很多)之后,发现一些结果远远低于我开始时的预期(尽pipe其中一部分原因是由于我没有意识到内部固态硬盘在某种程度上有多糟糕!)。 我不会因为在这种情况下我所关心的I / O模式将完全远离您所想的,而重申我认为没有替代品如果您需要特定的指标/build议,则根据您对打算构build的系统的知识进行一些基准testing。