Перейти к основному содержанию

IOPS — input/output operations per second

HDD storage

IOPS — количество операций ввода-вывода в секунду. Одна из основных характеристик для оценки производительности проектируемой или уже существующей системы хранения данных, RAID-массива, HDD или SSD диска. Другими словами это количество блоков, которое успевает записаться или считаться с устройства в единицу времени. Чем больше IOPS, тем более производительная система.

IOPS — понятие расплывчатое, указанные производителем значения могут на практике отличаться в разы. Дело в том, что величина IOPS зависит от многих факторов:

  • Конструкция диска.
  • Настройка диска.
  • Конструкция массива.
  • Настройка массива.
  • Настройка файловой системы.
  • Драйвера.
  • Конфигурация и тип RAID-массива.
  • Количество дисков в массиве.
  • Наличие и размер кеша.
  • Гибридные диски.
  • Качество диска.
  • Типы интерфейсов.
  • Количество интерфейсов.
  • Пропускная способность интерфейсов.
  • Размер блока.
  • RAID-контроллер.
  • Условия запуска программы, которая измеряет IOPS.
  • Наличие других фоновых задач.
  • Размеры очередей и буферов.
  • Погода на Марсе.

Принято выделять несколько типов IOPS:

  1. IOPS последовательного чтения.
  2. IOPS последовательной записи.
  3. IOPS произвольного чтения.
  4. IOPS произвольной записи.
  5. TOTAL IOPS — суммарное значение IOPS чтения и записи (отличается для последовательного и произвольного доступа).

iops

    IOPS для HDD

    Для жёстких дисков величина IOPS более или менее постоянная.

    Интерфейс Обороты IOPS
    SATA 3 7200 об/мин ~75-100
    SATA 3 10000 об/мин ~125-150
    SAS 10000 об/мин ~140
    SAS 15000 об/мин ~175-200

    IOPS для SSD и гибридных дисков

    Зависит от модели и интерфейса. PCIe на порядок быстрее чем SATA.

    Вычисление IOPS для RAID массива

    Если мы знаем IOPS диска, то можем вычислить IOPS RAID массива.

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

    Тип массива Пенальти Операции
    RAID0 1 запись данных
    RAID1 2 запись данных + запись данных
    RAID10 2 запись данных + запись данных
    RAID5 4 чтение данных + чтение чётности + запись данных + запись чётности
    RAID6 6 чтение данных + чтение чётности * 2 + запись данных + запись чётности * 2

    Пенальти для RAID, которые удалось накопать:

     
    Больше пенальти
    T = (I * N * W)/P + I * N * R

    Где T — вычисляемое значение IOPS массива, I — IOPS диска, N — количество дисков, P — пенальти, W — процент записи, R — процент чтения.

    Пример 1. RAID5 массив из 10 дисков. IOPS одного диска — 200. Посчитаем IOPS массива при 20% операций чтения и 80% операций записи.

    T = (200 * 10 * 0.8)/4 + 200 * 10 * 0.2
    T = 800 IOPS

    Пример 2. RAID5 массив из 10 дисков. IOPS одного диска — 200. Посчитаем IOPS массива при 80% операций чтения и 20% операций записи.

    T = (200 * 10 * 0.2)/4 + 200 * 10 * 0.8
    T = 1700 IOPS

    Пример 3. RAID10 массив из 10 дисков. IOPS одного диска — 200. Посчитаем IOPS массива при 20% операций чтения и 80% операций записи.

    T = (200 * 10 * 0.8)/2 + 200 * 10 * 0.2
    T = 1200 IOPS

    Пример 4. RAID10 массив из 10 дисков. IOPS одного диска — 200. Посчитаем IOPS массива при 80% операций чтения и 20% операций записи.

    T = (200 * 10 * 0.2)/2 + 200 * 10 * 0.8
    T = 1800 IOPS

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

    N = T / ( I * (W/P + R))

    Где N — вычисляемое количество дисков,  T —  IOPS массива, I — IOPS диска, P — пенальти, W — процент записи, R — процент чтения. 

    Пример. Сколько нужно дисков, чтобы получить 1700 IOPS при использовании RAID5 массива (80% операций чтения и 20% операций записи, IOPS одного диска — 200)? 

    N = 1700 / ( 200 * (0.2/4 + 0.8))
    N = 10 дисков

    Ответ совпадает с примером 2 выше.

    Ссылки

    IOPS калькулятор

    Теги

     

    Похожие материалы

    Zabbix — добавление элемента данных и триггера для HP MSA 2050

    Появилась необходимость мониторить HP MSA 2050.  Я уже выкладывал Zabbix шаблон для мониторинга СХД - HP MSA 2040. Шаблон от HP MSA 2040 вполне подходит для мониторинга HP MSA 2050, но есть тонкость: в новом СХД добавились новые трапы. В этой статье я приведу пример, как добавить в шаблон новый неизвестный трап. Итак, от HP MSA 2050 пришёл неизвестный трап: