Среди многих инструментов тестирования производительности дисков команда dd нравится большинству инженеров по эксплуатации и техническому обслуживанию из-за ее простоты, удобства использования и доступности. В этой статье мы рассмотрим, как использовать его с командой hdparm для быстрой и эффективной оценки производительности диска.
01
—
Почему стоит выбрать ДД
Не так давно база данных клиента внезапно стала очень медленной и попросила меня оптимизировать ее. dd
Команда проверена:
Скорость чтения диска оказалась всего лишь 25,8 Кбайт/с. Судя по всему, узким местом была не база данных, а система хранения данных. Это практический пример использования dd для тестирования. Такой тест по-английски называется sanity check, что буквально переводится как проверка работоспособности хранилища😀.
Хотя fio
、orion
и lometer
Профессиональные инструменты тестирования дисков, такие как dd
Имеет следующие преимущества:
О владельце аккаунта Яо Юане:
02
—
Измерение скорости записи
dd if=/dev/zero of=test.img bs=1G count=1 conv=fdatasync
/dev/zero
: Предоставьте входной файл с нулевыми символами.test.img
: Выходной файл.bs=1G
: размер блока.count=1
: Количество блоков.conv=fdatasync
: Пропустите кэш и напишите диск напрямую, что эквивалентно опциям. “oflag=dsync”。Пример:
Примечание. «/u02» находится на жестком диске, а «/u04» — на SSD. Видно, что скорость записи на диск SSD примерно в 1 раз выше, чем у HDD.
предупреждать: избегайте использования dd
Напишите напрямую, чтобы заблокировать устройство(Например:/dev/sda
),Потому что это может стереть данные.
03
—
Измерьте скорость чтения
Чтобы получить точную скорость чтения, очистите кеш перед тестированием, используя следующую команду:
$ `sync && sudo echo 3 > /proc/sys/vm/drop_caches`
Затем используйте следующую команду, считывающую 1 ГБ данных за раз.,Для чтения теста:
$ dd if=/u02/test1.img of=/dev/null bs=1G count=1
где/dev/ноль
Это пустой файл, который поставляется вместе с операционной системой.,Используется для сброса входных данных.
Пример:
Видно, что скорость чтения диска SSD в 5 раз выше, чем у HDD.
03
—
Используйте hdparm
другойLinuxСобственные команды системыhdparm
Также может использоваться для быстрой оценки производительности диска. Доступ этого инструмента к устройству осуществляется на уровне блоков, и результаты теста будут быстрее, чем доступ к файловой системе.
Пример:
$ hdparm -Tt /dev/sdb
Пример:
Видно, что скорость чтения из кэша одинаковая, но при чтении с диска SSD примерно в 7 раз быстрее HDD.
03
—
Подвести итог
Хотя dd
и hdparm
Представленные результаты тестирования не являются исчерпывающими, но в целом их достаточно для инженеров, которым требуется быстрая оценка производительности диска. Если вам необходимо дополнительно проанализировать производительность диска, вы можете рассмотреть возможность использования более мощных инструментов, таких как fio.