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

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
    • Тип массива Пенальти
      RAID0 1
      RAID1 2
      RAID1E 2
      Triple Mirror 3
      RAID3 4
      RAID4 4
      RAID5 4
      RAID5E 4
      RAID5EE 4
      RAID50 4
      RAID51 10
      RAID6 6
      RAID60 6
      RAID61 12
      RAID10 2
      RAID-DP 2
      RAID-TEC 3
      RAID-Z0 1
      RAID-Z1 4
      RAID-Z2 6
      RAID-Z3 8
      RAID7 5
      RAID7.3 8
      RAIDN+M 2 + 2 * M
    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 калькулятор

    Теги

     

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

    Расширяем RAID6 массив на сервере Dell PowerEdge R740xd2

    Снова отправляюсь в поездку по ЦОДам, предстоит очередное расширение дискового массива RAID6 на сервере Dell PowerEdge R740xd2. RAID6 массив собран из девяти дисков, в корзине осталось три слота, вот их-то и заполним.

    mdadm — добавляем диск большего объёма в RAID5

    Сегодня будем добавлять диск в RAID5, собранный с помощью mdadm. Операция отработана, мы уже это делали раньше. Есть одно маленькое отличие: мы не смогли найти такой же диск.

    Теги