1

下面用来测试磁盘可以达到的吞吐量限制

dd if=/dev/zero of=test bs=4k count=25000 conv=fdatasync

多次运行后,平均速度约为 130 MB/s

现在在这些系统上运行 cassandra 时,我正在使用

iostat -dmxt 30 sdd sdb sdc

有一些条目我想确保我正确地解释它们,如下所示。

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util
sdc               0.00  2718.60  186.30   27.20    17.87    12.06   287.13    44.98  215.06   2.79  59.58

即使 的总和rMB/s + wMB/s应该大致等于%util(disk throughput which is 130MB/s)并且我假设一些利用率用于 seek ,但差异是否足够大以占用大约 24% 的利用率。

提前感谢您的帮助。

4

1 回答 1

0

频繁的旋转/搜索确实需要大量的(延迟)时间。在我的测试中,顺序 io 和随机 io 之间的 io 带宽约为 3 倍。此外,最好使用 fio ( https://github.com/axboe/fio ) 运行此类测试,例如直接 io、具有适当扇区大小(256kb 或 512kb 的顺序读/写 - 取决于来自的支持)控制器)和libaio作为io引擎,io队列深度64。测试将受到很大控制。

于 2017-10-31T14:03:08.203 回答