Bla*_*ret 2 performance storage iops
我在很多地方都看到吞吐量 = bs * iops 应该是真的。例如,以 128k 块大小写入可以支持 190 IOPS 的 SAS 磁盘应该提供 ~23 MBps - 的吞吐量
23.75(MBs) = 128(BS)*190(SAS-15 IOPS)/1024。
现在,当我在 VM 中针对一个巨大的 NetApp 文件管理器对其进行测试时,我得到了以下结果:
# dd if=/dev/zero of=/tmp/dd.out bs=4k count=2097152
8589934592 bytes (8.6 GB) copied, 61.5996 seconds, 139 MB/s
Run Code Online (Sandbox Code Playgroud)
要查看 VM 的 IO 速率,我使用了 iostat 和 esxtop,它们都显示大约 250 IOPS。
所以据我所知,吞吐量应该是 ~1000k:
1000(KBs) = 4(BS)*250(IOPS)。
8GB 的 dd 当然是 RAM 大小的两倍,所以这里没有页面缓存。
我错过了什么?
谢谢!
你缺少的是上下文。IOPS 是完全随机的。副本不是随机的,而是顺序的。移动磁头时硬盘会变慢 - IOPS 基本上假设正确测量的 IO 随机分布在整个磁盘盘片(或至少大部分)上。
是的,复制光盘时速度要快得多。可悲的是,这完全无关紧要,除非您的正常使用是一次仅由一个用户复制。
这就像测量一级方程式赛车的最高速度,然后假设这是比赛期间的平均速度 - 糟糕的喵喵声,一级方程式赛道有弯道,赛车大多慢得多。
所以,如果你不做完全退化的模式(在技术术语中),即一次只有一个复制操作,那么 IO 将是随机的(尤其是虚拟机 - 一个可能是顺序的,20 个命中同一个磁盘是随机的) 并且头部大部分时间都在移动,而不是进行 IO 操作。
8GB 的 dd 是 RAM 大小的两倍
它仍然是可悲的,是不是?光盘有多大?(gb 只是一小部分,因此与真实世界场景相比,“随机”部分是非常少的运动(以长度衡量);)实际上,当您从零源复制时,没有随机运动,所以它只是在写,从不移动头部。坏的 ;)
在上面:
对抗怪物 NetApp 文件管理器
知道这些大型 SAN 项目能够在多大程度上优化您的 IO?它有多少缓存?“怪物”文件管理器将是顶级型号之一,它具有 16+ GB 的 ememory 供其自己的缓存使用。如果它真的是一个怪物,那么你的文件是可悲的 - 维基百科读取 2010 年的顶行 (!) 有 192gb 内存;) 缓冲 8gb 时甚至没有意识到。重复数据删除(它是实时发生的吗?)可能会消除几乎所有的写操作。您确定您甚至测量过基于磁盘的 IOPS 吗?
| 归档时间: |
|
| 查看次数: |
4168 次 |
| 最近记录: |