LINUX.ORG.RU
ФорумAdmin

Приоритет логических дисков


0

1

Есть у нас GNU/Linux-машина, на ней есть диск. Можно ли этот диск представить в виде двух виртуальных дисков, причем так, чтобы приоритет доступа диску одного виртуального диска был выше, чем у другого?

«Зачем тебе это нужно?» - спросите вы в слух, а про себя подумаете: «Грязный извращенец!». Дело в том, что mongodb последовательно и постоянно пишет в журнал и раз в минуту fsync-ает data-файлы, генерируя много random IO. При большой нагрузке (в моем случае 1K tps), fsync забивает запросами диск так, что даже журнал начинает тормозить и все падает. При этом, если смотреть не на две секунды fsync-a, а на производительность в целом, то ее запас велик. Две секунды диск работает на пределе, остальные 58 секунд практически не занят. Хочется, чтобы fsync data-файлов был менее приоритетен, чем запись в журнал.

★★

Есть у нас GNU/Linux-машина, на ней есть диск. Можно ли этот диск представить в виде двух виртуальных дисков, причем так, чтобы приоритет доступа диску одного виртуального диска был выше, чем у другого?

/dev/sda1
/dev/sda2
почему не подходит?

emulek ()

Моуг предложить 2 обходных пути:

- раз в 5 секунд делать sync сторонним скриптом. Тогда к тому времени, как его захочет сделать mongodb, кеш не будет забит настолько, чтобы всё сильно тормозило

- монтировать с опцией sync. Работать будет гораздо медленнее, но fsync будет пролетать мгновенно, а производительности тебе хватает

А вообще есть ощущение, что ты её как-то не так готовишь.

selivan ★★★ ()
Последнее исправление: selivan (всего исправлений: 1 )
Ответ на: комментарий от selivan

раз в 5 секунд делать sync сторонним скриптом. Тогда к тому времени, как его захочет сделать mongodb, кеш не будет забит настолько, чтобы всё сильно тормозило

Параметр частоты sync-а настраивается прямо в конфиге mongodb. И, да, это помогает до определенной степени.

А вообще есть ощущение, что ты её как-то не так готовишь.

Ну, это вряд ли =) Там особо вараинтов-то нет, это не Postgres с его миллионом настроек.

Kpoxman ★★ ()

elevator=deadline попробуй

anonymous ()
Ответ на: комментарий от Kpoxman

И каким образом у них разный приоритет будет?

ну например: «монтировать с опцией sync». Есть ещё множество вариантов.

emulek ()
Ответ на: комментарий от Kpoxman

Тогда остаётся mount -o sync, если производительности хватает

selivan ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.