Jea*_*aul 2 raid performance hard-drive
当我将数据库表分布在不同的硬盘上时,性能是否有所提高?
我需要同时访问许多不同的模式,我想知道当我将表分布到不同的硬盘驱动器时,添加更多的硬盘驱动器是否会显着提高性能。
因此,假设我有100 个表和 1 个硬盘驱动器与100 个表和 10 个硬盘驱动器。这会有所作为吗?或者我最好在 RAID 配置中连接硬盘驱动器?
更多的硬盘通常会提高理论 IO 性能。通过什么有用的量的方法有很大的不同。在许多现实世界的应用程序中(对于较小数量的磁盘),IO 性能的提高甚至不接近线性。
例如,更多磁盘不会提高性能的情况是达到 (RAID) 控制器限制的情况。旧的或便宜的 (RAID) 控制器上的 10 个高端 SSD 通常会导致控制器而不是磁盘成为限制因素。 RAID 级别在提供数据保护方面至少与性能方面同样重要。
RAID 1(镜像)中的 2 个磁盘使您的额外写入性能为零,但在一个好的控制器上,读取性能仍将翻倍。
将(虚拟)磁盘手动分配给某些任务可以为这些任务提供有保证的 IO 路径,允许这些任务具有一定级别的并发性,例如数据库管理员喜欢做的事情。当然,这也限制了每个单独任务的峰值性能。并且通过任何(手动)调整,弄错会极大地影响性能:)
单个企业 15k SAS 旋转磁盘通常提供大约 200-250 IOPS(每秒 IO 操作)。简单地说,10 个磁盘将提供十倍的性能。
如果在您的示例中主要使用一个表,将该表分配给 1 个磁盘并将其他 99 个表放在其他剩余磁盘上没有可衡量的好处,实际上您仍然会被限制在大约 200 IOPS。但是,在单个 RAID 10 卷上具有所有 100 个表的情况下,您将拥有所有 10 个磁盘,因此读取操作需要 2000+ IOPS,写入操作需要 1000 IOPS(由于镜像,磁盘的一半资源有效,5 个磁盘)操作……大大增加。
归档时间: |
|
查看次数: |
93 次 |
最近记录: |