Що ж таке iops, і як його вважати, настройка серверів windows і linux

Статтю взяв з Хабра, щоб не шукати і була у себе :)

Що ж таке iops, і як його вважати, настройка серверів windows і linux

Що ж таке IOPS, і як його вважати

IOPS (кількість операцій введення / виводу - від англ. Input / Output Operations Per Second) - один з ключових параметрів при вимірюванні продуктивності систем зберігання даних, жорстких дисків (НЖМД), твердотільних диски (SSD) і мережевих сховища даних (SAN).

По суті, IOPS це кількість блоків, яке встигає вважатися або записатися на носій. Чим більше розмір блоку, тим менше шматків, з яких складається файл, і тим менше буде IOPS, так як на читання шматка більшого розміру буде витрачатися більше часу.

Значить, для визначення IOPS треба знати швидкість і розмір блоку при операції читання / запису. Параметр IOPS дорівнює швидкості, поділеній на розмір блоку при виконанні операції.

Основними вимірюваними величинами є операції лінійного (послідовного) і довільного (випадкового) доступу.

Що ж таке iops, і як його вважати, настройка серверів windows і linux

Що ж таке IOPS, і як його вважати

Під лінійними операціями читання / запису, при яких частини файлів зчитуються послідовно, одна за одною, мається на увазі передача великих файлів (більше 128 К). При довільних операціях дані читаються випадково з різних областей носія, зазвичай вони асоціюються з розміром блоку 4 Кбайт.

Нижче наведені основні характеристики:

Що ж таке IOPS, і як його вважати

Що ж таке iops, і як його вважати, настройка серверів windows і linux

Що ж таке IOPS, і як його вважати

Що ж таке iops, і як його вважати, настройка серверів windows і linux

Що ж таке IOPS, і як його вважати

Будь-які операції читання, які виконуються на дисках, які не піддаються ніякому пенальті, оскільки всі диски можуть використовуватися для операцій читання. Але все на оборот з операціями на запис. Кількість пенальті на запис залежать від типу обраного RAID-а, наприклад.

У RAID 1 щоб дані записалися на диск, відбувається дві операції на запис (по одному запису на кожен диск), і отже RAID 1 має два пенальті.

У RAID 5 щоб записати дані відбувається 4 операції (Читання існуючих даних, парність RAID, Запис нових даних, Запис нової парності) тим самим пенальті в RAID 5 становить 4.

У цій таблиці наведено значення пенальті для більш часто використовуваних RAID конфігурації.

Що ж таке IOPS, і як його вважати

Характеристика робочих навантажень

Характеристика робочого навантаження в основному розглядається як відсоток операції читань і записів, які виробляє або вимагає додаток. Наприклад, в середовищі VDI процентне співвідношення IOPS розглядається як 80-90% на запис і 10-20% на читання. Розуміння характеристики робочого навантаження є найбільш критичним фактором, оскільки від цього і залежить вибір оптимального RAID для середовища. Додатки які інтенсивно використовують операції на запис є хорошими кандидатами для RAID 10, тоді як додатки які інтенсивно використовують операції на читання можуть бути розміщені на RAID 5.

Є два сценарії обчислення IOPS-ів.
Один зі сценаріїв це коли існує кілька дисків, і ми хочемо знати, скільки IOPS ці диски видадуть?
Другий сценарій, коли ми знаємо скільки нам IOPS-ів треба, і хочемо обчислити потрібну кількість дисків?

Сценарій 1: Обчислення IOPS виходячи з певного кол-ва дисків

Уявімо що у нас є 20 450GB 15к RPM дисків. Розглянемо два сценарії Робочого навантаження 80% Write-20% Read і інший сценарій з 20% Write-80% Read. Також ми обчислимо кількість IOPS як для RAID5 і RAID 10.

Формула для розрахунку IOPS:

Total Raw IOPS = Disk Speed ​​IOPS * Number of disks
Functional IOPS = (((Total Raw IOPS × Write%)) / (RAID Penalty)) + (Total Raw IOPS × Read%)

Є визначення Raw IOPS і Functional IOPS, якраз струми Functional IOPS-и і є ті IOPS-и які включають в себе RAID пенальті, і це і є "наполягли" IOPS-и.

А тепер підставимо цифри і подивимося що вийде.

Total Raw IOPS = 170 * 20 = 3400 IOPS (один 15K RPM диск може видати в середньому 170 IOPS)

Варіант 1 (80% Write 20% Read) Functional IOPS = (((3400 * 0.8)) / (4)) + (3400 * 0.2) = 1360 IOPS
Варіант 2 (20% Write 80% Read) Functional IOPS = (((3400 * 0.2)) / (4)) + (3400 * 0.8) = 2890 IOPS

Варіант 1 (80% Write 20% Read) Functional IOPS = (((3400 * 0.8)) / (2)) + (3400 * 0.2) = 2040 IOPS
Варіант 2 (20% Write 80% Read) Functional IOPS = (((3400 * 0.2)) / (2)) + (3400 * 0.8) = 3100 IOPS

Сценарій 2: Підрахунок кількості дисків для досягнення певного кол-ва IOPS

Розглянемо ситуацію де нам треба визначити тип RAID-а і кількості дисків для досягнення певної кількості IOPS-ів 5000 і з певними робочими навантаженнями, наприклад 80% Write20% Read і 20% Write80% Read.

Знову ж для початку формула по якій і будемо вважати:

Total number of Disks required = ((Total Read IOPS + (Total Write IOPS * RAID Penalty)) / Disk Speed ​​IOPS)

Total IOPS = 5000

Тепер підставимо цифри.

Замітка: 80% від 5000 IOPS = 4000 IOPS і 20% від 5000 IOPS = 1000 IOPS з цими цифрами і будемо оперувати.

Варіант 1 (80% Write20% Read) - Total Number of disks required = ((1000 + (4000 * 4)) / 170) = 100 дисків.
Варіант 2 (20% Write80% Read) - Total Number of disks required = ((4000 + (1000 * 4)) / 170) = 47 дисків приблизно.

Варіант 1 (80% Write20% Read) - Total Number of disks required = ((1000 + (4000 * 2)) / 170) = 53 диска приблизно.
Варіант 2 (20% Write80% Read) - Total Number of disks required = ((4000 + (1000 * 2)) / 170) = 35 дисків приблизно.

Розуміння і підрахунок IOPS, RAID пенальті, і характеристик робочих навантажень дуже критичні аспект при плануванні. Коли навантаження інтенсивніша на запис промені вибирати RAID 10 і навпаки при навантаженнях на читання RAID 5.

Програми для вимірювання IOPS

IOmeter - тест IOPS
IOzone - тест IOPS
FIO - тест IOPS
CrystalDiskMark - тест IOPS
SQLIO - набір тестів для розрахунку продуктивності (IOPS, MB, Latency) під сервера БД
wmarow - калькулятор RAID груп по продуктивності IOPS

Популярні Схожі записи:

  • Що ж таке iops, і як його вважати, настройка серверів windows і linux
    Тестування ssd intel 530 на ASUS X200LA
  • Що ж таке iops, і як його вважати, настройка серверів windows і linux
    1 ТБ sd карта sandisk і не тільки
  • CacheCade що це таке і як його налаштувати
  • SSD M8e від Plextor
  • Що ж таке iops, і як його вважати, настройка серверів windows і linux
    Контролер lsi 9361-8i
  • Що ж таке iops, і як його вважати, настройка серверів windows і linux
    Новинки ssd дисків

Схожі статті