Отношение между диском IOPS и SAR tps

Я много раз видел это

2 вещи посмотреть на

1) Выполните chkdsk, чтобы видеть, существуют ли ошибки с диском, удостоверьтесь, что Вы выбираете проверку на поврежденные секторы, 2) Был DC, замененный недавно, когда люди заменяют контроллер домена и вместо движущихся пользовательских профилей правильно после добавления ПК к домену, они играют с ключами реестра, но не исправляют полномочия.

13
задан 1 December 2013 в 22:41
3 ответа

Транзакции - это отдельные команды ввода-вывода (выборка блока / записи), которые записываются на RAW-диск (в вашем примере dm-0). Ядро linux пытается упорядочить эти команды в лучшей последовательности или пытается сжать их в более эффективные команды (например: получить два блока одновременно, а не получить один блок и получить другой блок сразу после этого). Это транзакции, которые отправляются на контроллер диска (tps для sda).

У хороших контроллеров есть собственная логика, которая еще больше снижает реальное количество транзакций.

Транзакция может быть SCSI-командой "записать 2 ГБ в crontoller 1 target 2 lun 3, начиная с сектора 22). Как видите, это не может быть прямо коррелировано с числами пропускной способности.

То, что вам нужно, - это стабильная скорость записи. Здесь у вас есть пара ограничивающих факторов:

  • клиентское соединение: Если сеть гигабитная, у вас никогда не будет входной скорости более 100 МБ / с.
  • disk-controller: Если это контроллер 3 Гб, у вас никогда не будет пропускная способность более 300 МБ / с
  • диск: Найдите значение производителя для стабильной производительности записи
  • Файловая система: Есть небольшие накладные расходы, так как ОС должна обрабатывать данные - проверьте это на RAM-диске ...

Я предполагаю для вашей системы: возьмите хороший аппаратный raid-контроллер, способный выполнять рейд 10 или 5, и получите как минимум 6 быстрых (15 КБ) дисков.

Для профессионального использования используйте SAS вместо SATA.

6
ответ дан 2 December 2019 в 21:27

Также имейте в виду, что значение TPS представляет операции чтения и записи, вы можете использовать переключатель -x для расширенного представления, в котором операции чтения и записи разделены ( r / s = чтение IOPS, w / s = запись IOPS):

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
vda               0.07    24.65    0.30   18.95    30.65   330.22    18.74     0.07    3.61   0.98   1.89
5
ответ дан 2 December 2019 в 21:27

iostat/sysstat — очень мощный инструмент. Часто лучше обратиться к соответствующей справочной странице, иначе вам придется ждать 6 лет и 10 месяцев действительно правильного ответа. Ответ на ваш вопрос взят с справочной страницы:

Первый отчет, сгенерированный командой iostat, содержит статистику, касающуюся времени, прошедшего с момента загрузки системы. Каждый последующий отчет охватывает время, прошедшее с момента предыдущего отчета.

Если вы запустите что-то вроде iostat 1 2, второй блок отчетов будет содержать статистику ввода-вывода за одну секунду, а первый будет содержать кумулятивный набор предыдущих данных. Часто бывает полезно запустить sar в cron, чтобы вы могли собирать значимую статистику легким, но последовательным образом.

В вашем примере вы видите совокупную предыдущую статистику, а не количество операций ввода-вывода в секунду, полученное во время стресс-теста.

-1
ответ дан 7 October 2020 в 19:58

Теги

Похожие вопросы