Статтю взяв з Хабра, щоб не шукати і була у себе :)
Що ж таке IOPS, і як його вважати
IOPS (кількість операцій введення / виводу - від англ. Input / Output Operations Per Second) - один з ключових параметрів при вимірюванні продуктивності систем зберігання даних, жорстких дисків (НЖМД), твердотільних диски (SSD) і мережевих сховища даних (SAN).
По суті, IOPS це кількість блоків, яке встигає вважатися або записатися на носій. Чим більше розмір блоку, тим менше шматків, з яких складається файл, і тим менше буде IOPS, так як на читання шматка більшого розміру буде витрачатися більше часу.
Значить, для визначення IOPS треба знати швидкість і розмір блоку при операції читання / запису. Параметр IOPS дорівнює швидкості, поділеній на розмір блоку при виконанні операції.
Основними вимірюваними величинами є операції лінійного (послідовного) і довільного (випадкового) доступу.
Що ж таке IOPS, і як його вважати
Під лінійними операціями читання / запису, при яких частини файлів зчитуються послідовно, одна за одною, мається на увазі передача великих файлів (більше 128 К). При довільних операціях дані читаються випадково з різних областей носія, зазвичай вони асоціюються з розміром блоку 4 Кбайт.
Нижче наведені основні характеристики:
Що ж таке IOPS, і як його вважати
Що ж таке IOPS, і як його вважати
Що ж таке 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
Популярні Схожі записи:
- Тестування ssd intel 530 на ASUS X200LA
- 1 ТБ sd карта sandisk і не тільки
- CacheCade що це таке і як його налаштувати
- SSD M8e від Plextor
- Контролер lsi 9361-8i
- Новинки ssd дисків