I/Oスケジューラとは
Linuxに大量の書き込みや読み込みがきたときに、効率的にI/Oを処理するために並び替える機能
キューサイズ
並び替えについて、内部的にキューをもっており、制限数をもって処理している
確認方法
root@hostname:/home/admin# df -h ファイルシス サイズ 使用 残り 使用% マウント位置 rootfs 7.9G 1.6G 6.0G 21% / udev 10M 0 10M 0% /dev tmpfs 60M 76K 60M 1% /run /dev/xvda 7.9G 1.6G 6.0G 21% / tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 120M 0 120M 0% /run/shm root@hostname:/home/admin# cat /sys/block/xvda/queue/scheduler noop deadline [cfq] # noop、deadline、cfqが利用可能であり、cfqが選択されている root@hostname:/home/admin# cat /sys/block/xvda/queue/nr_requests 128 # キューサイズ
RDBMSについて
RDBMSについては、ほとんど(mysql含む)がI/Oスケジューリング機能を持っているため、OS側では何もしないほうが高速になることが多い
noop(特別なスケジュールをしない)やdeadline(読み込み、書き込みをバランスよく対応する)がオススメらしい
またキューサイズを大きくすることで、シーク待ち時間を減らすことが可能