< вернуться назад

Влияние глубины очереди на производительность и задержку

Влияние глубины очереди на производительность и задержку
#Программирование #Технологии #Документация #BAUMSTORAGE #СистемноеАдминистрирование
3 минуты

Рассмотрим понятие глубины очереди применительно к одиночному диску.

Чем больше глубина очереди, тем больше запросов жесткий диск может обработать за единицу времени. Это объясняется тем, что диск выстраивает последовательность обработки запросов таким образом, чтобы маршрут движения головок был оптимальным с точки зрения минимизации времени операций. Чем больше глубина очереди, тем больше у диска выбор и тем эффективнее оптимизация.

Диски SATA могут обрабатывать до 32 одновременных запросов, диски SAS – до 64. При максимальной глубине очереди производительность диска увеличивается примерно в три раза по сравнению с одиночными запросами.

Однако не все так просто. При увеличении глубины очереди растет задержка – среднее время выполнения запроса. Действительно, при глубине очереди, например, 32 каждый запрос должен подождать, пока будут обработаны предыдущие запросы. То есть, если общая производительность выросла в три раза по сравнению с глубиной очереди 1, время выполнения каждого запроса вырастет примерно в 10 раз. Это время складывается из времени ожидания и времени выполнения операции. Поэтому ориентироваться только на показатели производительности при максимальной глубине очереди не следует, так как задержки могут становиться слишком большими.

Когда мы говорим о глубине очереди применительно к RAID-массиву, картина меняется. При глубине очереди 1 мы не получим выигрыша в производительности по сравнению с одиночным диском, поскольку в массиве будет работать всегда только один диск. А вот если массив получит сразу столько запросов, сколько он имеет дисков в своем составе, мы получим рост производительности, пропорциональный числу дисков.

Правда, следует заметить, что запросы совсем необязательно распределятся равномерно между всеми дисками массива, поэтому реальный рост производительности будет меньше. Например, для массива из двух дисков только в половине возможных случаев запросы будут приходиться на разные диски, поэтому производительность вырастет всего в полтора раза (на самом деле немного больше, поскольку в другой половине случаев на каждый диск придет по два запроса, и производительность дисков вырастет за счет оптимизации). 

Оптимальным является вариант, когда на каждый диск массива приходится один запрос. При дальнейшем увеличении глубины очереди производительность массива растет гораздо медленнее задержки, которая прямо пропорциональна глубине очереди. Именно поэтому при расчете производительности массива глубина очереди по умолчанию принимается равной количеству дисков. Однако ее можно поменять, чтобы увидеть, как при этом будут меняться производительность и величина задержки.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *
Author
Посетитель сайта

Добавить комментарий

Комментариев пока нет

Другие статьи, которые могут быть полезными

Рынок хранения данных 2026: почему SSD дорожают и как AI-инфраструктура переходит к гибридной архитектуре Рынок хранения для AI (и не только) сильно изменился. По данным VDURA, к Q1 2026 емкостью...
223
6
Дедупликация данных обнаруживает и исключает избыточные данные при записи.  Дедупликация позволяет сократить объемы физических носителей для хранения тех же объемов данных. В BAUMSTORAGE дедупликация выполняется в in-line режиме (на лету)....
3382
1
128-битная файловая система – файловая система, использующая 128 бит для записи адреса каждого блока. Чем больше размер (длина) адресной строки, тем большее количество блоков (больший размер данных) может адресовать файловая...
3499
20