条带化 RAID 如何与大量磁盘一起工作?

条带化 RAID 如何与大量磁盘一起工作?

仍在尝试配置我的大型 (24) 磁盘阵列 (2.4TB),用于混合大文件和小文件的存档/nas。但除此之外,我现在更专注于了解条带化 RAID 的工作原理,但我读得越多,就越感到困惑,因为大多数文献中的示例都是基于“低”磁盘数量(我问过制作人,但他不愿意公开回答其中一些问题,因为“保留信息”)

  • 条带大小通常是 (Number of data disks) x (size of strip)(或块)例如 8x64KB=512KB 或 10x256KB=2560KB
  • 文件如何分割并保存到条纹? 每个条带一个文件(剩余的条带用零填充)或一个条带有许多文件直到所有条带都填满?
  • 对于大型阵列,条带大小仍然重要吗?我的意思是,我发现如果条带大小的值大于 1MB(例如 8x256KB),我的 PERC 将使用固定值 1MB 作为条带大小。在这种情况下,条带应该如何排列?它是否仍然很大,如 8x256KB=2MB,并在内部划分为 2x 1MB?还是 1MB 除以 8 个数据磁盘?
  • 现在我是否应该在考虑“2 的幂”的情况下配置条带化 RAID?我的 PERC 允许我为任何类型的 RAID 级别配置任意数量的磁盘,这些磁盘不是 2 的幂
  • 知道这些限制后,是否值得将阵列设置为 2x12Disks RAID60 和 256KB 条带大小?我们不需要浪费太多空间

答案1

文件如何分割并保存到条带中?每个条带一个文件(剩余的条带用零填充)还是每个条带有多个文件,直到所有条带都填满?

像这样的数组不以文件的形式思考,而只是以块的形式思考,文件系统本身定义了哪些文件由哪些块组成,而不是底层磁盘系统执行此操作。

因此,不要将其视为文件仅仅是块,想象一下文件系统上的所有文件,但拿走有关文件夹和文件的所有数据,它只是一大堆块 - 而且这些块被分散到可用磁盘上以实现性能和弹性。

一般来说,像这样的文件系统和 RAID 阵列的默认设置将适合 95% 的所有应用程序。如果您有时间尝试和测试各种组合,或者您的应用程序有不寻常的要求(例如它不断读取或写入大量微小的随机文件或另一端巨大的顺序文件),那么调整它们的能力会很棒 - 在这些情况下,一些调整可以带来显着的好处。但同样,一般来说,默认值通常对于大多数用例来说都非常好。我做 VoD,所以我们经常调整我们的存储卷以具有非常大的条带/块,因为我们知道它们都是大型顺序文件,但我们不会将我们的数据库文件或日志等放在这些阵列/卷上,因为它们对于那种用途来说很糟糕。

无论如何回到建议,很高兴你似乎已经选择了 R60 - 我们这里经常有人遇到 R5/50 的问题,它已经死了,根本就不要使用它 - R6/60 和 R1/10 是唯一的游戏,除非你对 ZFS 有执念 :) - 无论如何,如果我这样做,我会完全按照你的建议去做 - R60 由 2 x 12 磁盘 R6 组成,将条带保留为默认值,然后当你的应用程序开始使用这个阵列时,你可以看看它的表现如何,如果你真的觉得你需要调整它,并且会从中获得很多好处,那么继续吧,但我敢打赌你使用默认设置就足够了。

祝你好运。

相关内容