У меня было ощущение, что наша SAN работает плохо, поэтому я запустил SQLIO с помощью сообщения в блоге г-на Озара.
Моя первая проблема в том, что я не смог создать тестовый файл размером 20 ГБ.
Вот результат
using 64KB random IOs
enabling multiple I/Os per thread with 8 outstanding
buffering set to use hardware disk cache (but not file cache)
using current size: 2011 MB for file: M:\TestFile.dat
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 3873.51
MBs/sec: 242.09
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 16
Max_Latency(ms): 1465
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 3 2 3 3 4 5 5 5 5 5 5 5 5 5 4 4 4 3 3 2 2 2 2 1 13
using 64KB sequential IOs
enabling multiple I/Os per thread with 8 outstanding
buffering set to use hardware disk cache (but not file cache)
using current size: 2011 MB for file: M:\TestFile.dat
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 5279.99
MBs/sec: 329.99
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 11
Max_Latency(ms): 267
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 1 1 3 5 11 8 6 5 4 4 5 7 7 6 5 4 3 3 2 2 1 1 1 1 4
Что можно сказать о метриках из SAN?
Стоит ли рассматривать другого провайдера?
SAN считается «современной HP SAN».
Если ваша сеть хранения данных действительно является новой, у вас будет автоматическое многоуровневое хранение между дисками и SSD. Производительность любой работы с SSD будет намного выше, чем с диском. Кроме того, у вас будет много кеша, что означает, что запись обычно даже не касается дисков / SSD. Я предполагаю, что вы говорите о p9500, однако, если это предположение неверно, вам действительно следует отредактировать свой вопрос, чтобы получить больше информации о вашей конфигурации.
Если вы тестируете чтение (что более типично), то вам нужно попробовать изолировать пространство на основе состава пула. Поместите LDEV, в котором ваш файл живет, в пул с большим количеством шпинделей или более высоким процентом SSD, и он должен работать быстрее.
При этом единственная важная метрика - это задержка при стрельбе на всех цилиндрах. Любая машина может работать быстро, когда она недостаточно загружена, но обратите внимание, когда на ней одновременно будет запущено множество приложений. Моя рекомендация - смоделировать много больше операций ввода-вывода на гораздо большем количестве серверов и посмотрите, сколько вы можете сгенерировать до того, как задержка превысит 10 мс. При создании нагрузки вы хотите иметь такое же соотношение чтения и записи и отношения последовательного к случайному, что и реальная рабочая нагрузка. В противном случае вам нужно, чтобы от 70% чтения до 30% записи и что-то вроде 20% последовательного до 80% случайного.
Что можно сказать о метриках из SAN?
Ничего.
используя текущий размер: 2011 МБ
Это не реалистичный тест. Вероятно, в SAN есть кэш обратной записи, и ваш файл занят достаточно и достаточно мал, чтобы его можно было полностью кэшировать, блок за блоком. Итак, вы действительно не измеряете ничего стоящего.
Это как измерить максимальную скорость автомобиля по ускорению за первые 10 метров. Не работает.
Ваш тестовый файл должен быть реалистичным с учетом оборудования и рабочей нагрузки. Это означает, что если у вас, как правило, нет незанятого SAN и небольшого набора данных, вы можете запустить его в тестовом файле размера продукта - по крайней мере, тот, который ЗНАЧИТЕЛЬНО больше, чем задействованные кеши. Итак, для кеш-памяти SAN 32 ГБ (видно на HP EVA) для вас хорошо иметь тестовый файл на 128 ГБ.
Операций ввода-вывода / сек: 3873,51
Это либо HIGH END SAN, либо приличный кеш. Приблизительно при 450 IOPS на диск это будет означать, что вы запускаете 7-8 дисков независимо. Может быть - или может быть, как я уже сказал, вы запускаете из кеша.