Что касается IOPS, я видел несколько источников в Интернете, которые предполагают, что IOPS данного количества дисков - это просто IOPS одного диска, умноженные на количество дисков.
Если бы мое понимание IOPS было правильным (и я совсем не уверен в этом), я бы подумал, что реальность будет зависеть - среди многих других факторов - от уровня RAID. В RAID 1/10 все данные дублируются как минимум на двух дисках, что снижает конкуренцию на конкретном диске для некоторых шаблонов ввода-вывода. Однако на полосовых уровнях RAID, таких как RAID 0/5/6, данные распределяются, а не дублируются, что означает, что последовательные запросы на чтение могут быть для одного и того же шпинделя, что приведет к блокировке при завершении предыдущего ввода-вывода. Пишет еще более оспаривается.
Я должен добавить, что я ценю, что реальность намного сложнее из-за различных оптимизаций и других факторов. Мой вопрос на самом деле сводится к тому, находится ли на самом базовом уровне мое понимание того, что означает IOPS, на правильном пути. Возможно, мое утверждение о том, что уровни IOPS могут даже зависеть от уровней RAID таким образом, указывает на базовое недопонимание концепции.
Ответы:
Для HDD в IOPS обычно преобладает время доступа к диску, которое является суммой задержки поиска + задержки вращения + задержки передачи. Поскольку эти переменные сильно зависят от шаблонов доступа и имеют неочевидные взаимодействия с конкретной схемой RAID (т. Е. Размером полосы) и контроллером (т. Е. С настройкой чтения с опережением), любой простой ответ будет неверным.
Тем не менее, давайте попробуем иметь приблизительную фигуру. В первом приближении IOPS, гарантированный массивом из n-дисков, должен быть в n раз больше, чем IOPS одного диска. Однако как уровень RAID, так и схема доступа к данным , смещая вес между задержкой поиска / вращения / передачи, кардинально изменяют это приближение первого порядка.
Давайте рассмотрим несколько примеров, предполагая, что 100 IOPS на отдельные диски (обычно для дисков со скоростью 7200 об / мин) и массивы из 4 дисков (за исключением RAID1, часто ограничиваются только двухсторонними):
Позвольте мне повторить: вышеизложенное является простым и почти сломанным приближением. В любом случае, если вы хотите поиграть с (крайне неполным) RAID IOPS калькулятором, посмотрите здесь .
Теперь вернитесь в реальный мир. В реальных рабочих нагрузках RAID10 часто является более быстрым и предпочтительным выбором , поддерживая высокую производительность даже в условиях ухудшенного массива . RAID5 и RAID6 не следует использовать в рабочих нагрузках, чувствительных к производительности, если только они не ориентированы на чтение или последовательный характер. Стоит отметить, что серьезные RAID-контроллеры имеют большой защищенный от потери мощности кэш-память обратной записи, в основном для преодоления (путем интенсивного кэширования) низкой производительности произвольной записи RAID5 / 6. Никогда не используйте RAID5 / 6 с RAID-контроллерами без кеша , если только вам не важна скорость работы массива.
SSD это разные звери, подумал. Поскольку у них, как правило, гораздо более низкое среднее время доступа, RAID-массивы на основе четности влекут за собой гораздо меньшую нагрузку на производительность и являются гораздо более жизнеспособным вариантом, чем на жестких дисках. Однако при небольшой рабочей нагрузке, ориентированной на случайную запись, я бы в любом случае использовал установку RAID10.
источник
Это просто вопрос определений. Вы можете измерять IOPS на разных уровнях в системе, и вы получите разные значения. Например, предположим, у вас есть два зеркальных диска, и вы пишете так быстро, как можете. Число операций ввода-вывода в секунду, приходящихся на диски, будет вдвое больше числа операций ввода-вывода в секунду, которые может выдержать один диск с аналогичной нагрузкой записи. Но число операций ввода-вывода в секунду, поступающих в контроллер, будет равно числу операций ввода-вывода в секунду, которое может обработать один диск.
Обычно мы заботимся о том, сколько логических операций ввода-вывода в секунду мы можем получить в массив, и нас не особо волнует, что происходит на уровне диска. В этом случае вы правы, и IOPS зависит от уровня RAID, количества дисков, производительности отдельных дисков и, в некоторых случаях, от конкретных характеристик операций.
источник