Калькулятор IOPS
Этот материал состоит из двух частей. В первой части описаны принципы работы Калькулятора IOPS. Вторая часть содержит пояснения и обзор основных понятий, касающихся работы дисковой подсистемы сервера.
Часть первая. Описание Калькулятора IOPS
Что умеет Калькулятор?
Как пользоваться Калькулятором?
Как мы сделали Калькулятор?
Основная идея Калькулятора
Два сценария использования Калькулятора
Пример первого сценария
Пример второго сценария
Часть вторая. Дисковая подсистема, основные понятия
Метрики производительности дисковой подсистемы: IOPS и пропускная способность
Факторы, влияющие на производительность дисковой подсистемы
Сколько IOPS нужно для типовых приложений
Типы накопителей
Интерфейсы накопителей
Типы контроллеров
Влияние глубины очереди на производительность
Типы RAID-массивов
Заключение
Часть первая. Описание Калькулятора IOPS
Что умеет Калькулятор IOPS?
Калькулятор IOPS позволяет рассчитать производительность, объем и стоимость дисковой подсистемы сервера.
Для расчета необходимо задать параметры дисковой подсистемы:
- модель контроллера;
- модель накопителей;
- количество накопителей в RAID-массиве;
- уровень RAID;
- процентное соотношение операций чтения и записи.
В результате вы получите:
- график производительности дисковой подсистемы на операциях произвольного доступа в зависимости от суммарной глубины очереди;
- график производительности дисковой подсистемы на операциях последовательного доступа в зависимости от глубины очереди однопоточной нагрузки;
- полезный объем RAID-массива;
- стоимость конфигурации (накопители плюс контроллер).
Параметры дисковой подсистемы и результаты расчета заносятся в сводную таблицу, в которой можно сравнить до шести различных конфигураций дисковой подсистемы с точки зрения их производительности, объема и стоимости.
Как пользоваться Калькулятором?
Задайте параметры дисковой подсистемы:
- тип накопителей (SSD или HDD) и их интерфейс (SATA, SAS или NVMe);
- модель контроллера (выберите из списка);
- модель накопителя (выберите из списка);
- количество накопителей в массиве (максимальное значение зависит от выбранного контроллера);
- уровень RAID (доступные варианты определяются числом накопителей и выбранным контроллером);
- процентное соотношение операций чтения и записи.
В результате расчета на левом графике будет приведена зависимость производительности массива от суммарной глубины очереди для операций случайного доступа (блок 4KB).
Меняя «Количество потоков нагрузки (T)» и «Глубину очереди на поток (Q)», на графике вы увидите значение производительности, соответствующее текущим значениям T и Q.
На правом графике будет приведена зависимость производительности массива от глубины очереди однопоточной нагрузки для операций последовательного доступа (блок 1МB).
Меняя «Глубину очереди на поток (Q)», на графике вы увидите значение производительности, соответствующее текущему значению Q.
Вы можете сравнить несколько конфигураций. Нажмите знак «+» в нижней таблице, чтобы запомнить текущую конфигурацию. Изменение любого параметра создаст новую конфигурацию.
Как мы сделали Калькулятор?
При помощи утилит iometer и diskspd мы измеряли производительность RAID-массивов уровней 0, 1, 10, 5, 6, 50, 60 для разных значений глубины очереди, используя различные модели накопителей и контроллеров.
На основании полученных данных мы построили матмодели зависимости производительности от глубины очереди для накопителей и контроллеров, участвовавших в тестировании.
Исходя из предположения, что модели накопителей одной и той же серии должны иметь одинаковый характер зависимости производительности от глубины очереди, мы использовали эти модели для остальных накопителей, опираясь на их спецификации производительности.
Основная идея Калькулятора
Существующие формулы производительности RAID-массивов вычисляют только их максимально возможную производительность, хотя она может меняться в очень широких пределах в зависимости от количества запросов, которые одновременно находятся у массива в обработке (глубины очереди).
Если глубина очереди равна 1, то массив будет работать со скоростью одного накопителя или медленнее.
Чтобы массив работал с максимальной производительностью, необходима достаточная для этого глубина очереди. Назовем такую глубину очереди глубиной насыщения.
В реальных серверных нагрузках текущее значение глубины очереди, как правило, находится в диапазоне от единицы до глубины насыщения. Как в этом случае понять, выдает дисковая подсистема «положенную» производительность или нет?
Если мы будем знать, какое значение производительности должно соответствовать любому значению глубины очереди в диапазоне от единицы до глубины насыщения для данной конфигурации дисковой подсистемы, мы сможем ответить на этот вопрос.
В этом состоят основная идея и новизна Калькулятора.
Два сценария использования Калькулятора
Первый сценарий можно использовать при проектировании дисковой подсистемы нового сервера.
При помощи Калькулятора вы можете создать несколько корректных конфигураций, используя конкретные модели накопителей и контроллеров, и сравнить эти конфигурации с точки зрения максимальной производительности, полезного объема и стоимости.
Дополнительно отметим, что упоминавшиеся здесь формулы расчета максимальной производительности RAID-массивов выдают заниженные результаты для операций записи в случае массивов с четностью из твердотельных накопителей. Наш Калькулятор работает точнее.
Второй сценарий заключается в проверке производительности дисковой подсистемы под реальной нагрузкой.
При помощи средств мониторинга операционной системы определите текущие значения глубины очереди, производительности и процентного соотношения операций чтения и записи во время работы сервера.
«Воспроизведите» конфигурацию дисковой подсистемы сервера в Калькуляторе, выбрав нужные модели накопителей и контроллера, количество накопителей и уровень RAID.
Задайте процентное соотношение операций чтения и записи и установите значения параметров «Количество потоков нагрузки (T)» и «Глубина очереди на поток (Q)» таким образом, чтобы суммарная глубина очереди соответствовала глубине очереди реальной нагрузки.
Сравните производительность дисковой подсистемы сервера под реальной нагрузкой со значением, которое выдает Калькулятор. Если цифры близки, значит дисковая подсистема выдает положенную производительность. Если разница критична, нужно попытаться найти причину замедления работы.
Пример первого сценария
Предположим, вы проектируете сервер для 1С со следующими требованиями к дисковой подсистеме:
- производительность не менее 100'000 IOPS;
- соотношение операций чтения и записи (%) 70/30;
- полезный объем массива от 6 до 8TB;
- ресурс накопителей 1.0 DWPD или выше.
Используя Калькулятор, можно сформировать несколько подходящих конфигураций:
| Номер конфигурации | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| Модель накопителей | D3-S4520 | D3-S4520 | D3-S4520 | PM1653 | D7-P5520 | D7-P5520 | D7-P5520 |
| Интерфейс накопителей | SATA | SATA | SATA | SAS | NVMe | NVMe | NVMe |
| Емкость накопителей | 3,84TB | 1,92TB | 960GB | 1,92TB | 1,92TB | 3,84TB | 7,68TB |
| Количество накопителей | 4 | 5 | 8 | 5 | 5 | 4 | 2 |
| Контроллер | C621 | C621 | C621 | 9361-8i | P. VROC | S. VROC | 9560-8i |
| Уровень RAID | 10 | 5 | 5 | 5 | 5 | 10 | 1 |
| Производительность, IOPS | 131 000 | 137 000 | 186 000 | 435 000 | 534 000 | 690 000 | 555 000 |
| Объем массива, TB | 7,68 | 7,68 | 6,72 | 7,68 | 7,68 | 7,68 | 7,68 |
| Стоимость накопителей и контроллера, руб. | 213'000 | 157'000 | 187'000 | 294'000 | 223'000 | 247'000 | 284'000 |
Несмотря на разницу в цене, стоит обратить внимание на вариант с накопителями NVMe, который обеспечит пятикратный запас производительности на будущее.
Пример второго сценария
Этот раздел пока находится в разработке.
Часть вторая. Дисковая подсистема, основные понятия
Метрики производительности дисковой подсистемы: IOPS и пропускная способность
Дисковая подсистема сервера состоит из контроллера и накопителей, которые объединены в RAID-массив.
Приложения, работающие на сервере, посылают дисковой подсистеме запросы на чтение или запись данных. Запросы к дисковой подсистеме одного приложения назовем потоком нагрузки.
Одновременно к дисковой подсистеме могут обращаться несколько приложений, в этом случае она обрабатывает несколько потоков нагрузки.
Количество запросов, которое одновременно находится в обработке у дисковой подсистемы, называется глубиной очереди. Порядок выполнения запросов, находящихся в очереди, определяется дисковой подсистемой.
Обрабатывая запросы, дисковая подсистема выполняет операции чтения или записи данных (или, другими словами, операции ввода-вывода).
Производительность дисковой подсистемы (скорость выполнения операций чтения и/или записи данных) оценивают двумя показателями (метриками):
Пропускная способность дисковой подсистемы – объем данных, который дисковая подсистема может прочитать и/или записать в единицу времени. Пропускная способность обычно измеряется в мегабайтах в секунду (MB/s).
Количество операций чтения и/или записи блоков данных фиксированного объема, которое дисковая подсистема может выполнить в единицу времени. Для обозначения этого количества используется термин IOPS (Input/Output Operations Per Second).
Пропускная способность и величина IOPS связаны между собой следующим соотношением:
Различают два вида операций ввода-вывода: операции последовательного доступа и операции произвольного (случайного) доступа.
Операции последовательного доступа - чтение или запись данных, расположенных в накопителе последовательно друг за другом.
Операции произвольного (случайного) доступа - чтение или запись данных, расположенных в накопителе в произвольном (случайном) порядке.
Для оценки производительности дисковой подсистемы на операциях последовательного доступа используется величина ее пропускной способности в MB/s, поскольку в данном случае нас в первую очередь интересует объем передаваемых данных, а не количество операций ввода-вывода.
Для оценки производительности дисковой подсистемы на операциях произвольного (случайного) доступа используется показатель IOPS (количество операций ввода-вывода в секунду), поскольку в данном случае нас в первую очередь интересует количество прочитанных или записанных блоков данных, а не общий объем этих данных. IOPS — критическая характеристика для систем, работающих с большим числом мелких операций.
Таким образом, пропускная способность в MB/s и величина IOPS – это две метрики производительности дисковой подсистемы. Пропускная способность в MB/s характеризует скорость выполнения операций последовательного доступа, а величина IOPS – производительность операций произвольного (случайного) доступа.
Факторы, влияющие на производительность дисковой подсистемы
Пропускная способность дисковой подсистемы на операциях последовательного доступа (MB/s) зависит от:
- интерфейса между сервером и контроллером дисковой подсистемы (может ограничивать);
- интерфейса контроллера (может ограничивать, если медленнее интерфейса накопителей);
- типа накопителей (жесткие диски (HDD) на порядок медленнее твердотельных накопителей (SSD));
- интерфейса накопителей (SATA < SAS3 < SAS4 < PCI3 < PCI4 < PCI5);
- производительности накопителей (пропорционально);
- числа накопителей в RAID-массиве (пропорционально, кроме массивов с четностью);
- уровня RAID-массива (незначительно, кроме «зеркальных» массивов);
- глубины очереди (незначительно);
- соотношения операций чтения и записи (значительно для твердотельных накопителей).
Производительность дисковой подсистемы на операциях произвольного доступа (IOPS) зависит от:
- интерфейса между сервером и контроллером дисковой подсистемы (может ограничивать);
- производительности контроллера (может ограничивать);
- интерфейса контроллера (может ограничивать, если медленнее интерфейса накопителей);
- типа накопителей (жесткие диски (HDD) на два порядка медленнее твердотельных накопителей (SSD));
- интерфейса накопителей (SATA < SAS3 < SAS4 < PCI3 < PCI4 < PCI5);
- производительности накопителей (пропорционально);
- числа накопителей в RAID-массиве (пропорционально);
- уровня RAID-массива (только для операций записи);
- глубины очереди (очень значительно);
- соотношения операций чтения и записи (значительно для твердотельных накопителей);
- размера блока (незначительно при размере блока < 8KB);
- кэширования операций записи (значительно для жестких дисков).
В дальнейшем мы рассмотрим подробнее влияние на производительность наиболее существенных факторов.
Сколько IOPS нужно для типовых приложений
В следующей таблице приведены примерные значения IOPS при работе некоторых типовых приложений.
| Роль сервера | Рекомендуемая величина IOPS | Размер блока | Соотношение чтение/запись |
| Файловый сервер | 1 000 – 10 000 | 64 KB – 1 MB | 50/50 |
| Веб-сервер | 5 000 – 20 000 | 8 KB – 64 KB | 80/20 |
| База данных, средняя (OLTP) | 10 000 – 50 000 | 4 KB – 8 KB | 70/30 |
| База данных, большая (OLTP) | 100 000 + | 4 KB – 8 KB | 70/30 |
| Виртуальная машина (1 VM) | 1 000 – 5 000 | 4 KB – 64 KB | 60/40 |
| Сервер виртуализации (10-20 VM) | 20 000 – 100 000 + | 4 KB – 64 KB | 60/40 |
Типы накопителей
Накопители дисковой подсистемы бывают двух типов: жесткие диски (HDD – Hard Disk Drive) и твердотельные накопители (SSD – Solid-State Drive).
Производительность жестких дисков находится в пределах:
- 100 ÷ 300 MB/s на операциях последовательного доступа;
- 100 ÷ 350 IOPS на операциях произвольного (случайного) доступа.
Производительность твердотельных накопителей находится в пределах:
- 500 ÷ 14 000 MB/s на операциях последовательного доступа;
- 10 000 ÷ 2 500 000 IOPS на операциях произвольного (случайного) доступа.
Таким образом, твердотельные накопители на порядок быстрее жестких дисков на операциях последовательного доступа и на два-четыре порядка быстрее на операциях произвольного доступа.
Максимальная емкость жестких дисков и твердотельных накопителей примерно одинакова и приближается к 40 терабайтам.
Интерфейсы накопителей
Интерфейс накопителя — это способ подключения накопителя к контроллеру дисковой подсистемы. Интерфейс определяет принципы передачи информации между накопителем и контроллером. Под термином «Интерфейс накопителя» подразумеваются как физический разъём, так и протокол передачи данных.
Существует три основных типа интерфейсов накопителей: SATA, SAS и NVMe. Интерфейсы SATA и SAS используются как с жесткими дисками, так и с твердотельными накопителями, а вот интерфейс NVMe (Non-Volatile Memory Express) разработан специально для твердотельных накопителей с подключением через шину PCI Express (PCIe).
Каждый интерфейс в процессе своего развития получил несколько стандартов, которые различаются между собой пропускной способностью.
Традиционно производители накопителей с интерфейсом NVMe в спецификациях накопителей указывают вместо стандарта интерфейса NVMe (например, NVMe Gen5) стандарт шины PCIe (соответственно, PCIe 5.0), на скорости которого работает накопитель. Мы тоже будем придерживаться этого правила.
В контексте нашей темы важными характеристиками интерфейсов являются их пропускная способность и максимальная глубина очереди накопителя (определяется стандартом интерфейса).
Пропускная способность интерфейса накладывает ограничения на производительность накопителя при случайном и последовательном доступе к данным. В следующей таблице приведены основные характеристики интерфейсов, а также максимально возможные для них значения IOPS и MB/s.
| Интерфейс накопителя | Пропускная способность интерфейса | Максимальная глубина очереди накопителя | Максимально IOPS через интерфейс (блок 4KB) | Максимально MB/s через интерфейс (блок 1MB) |
| SATA3 | 6 Gb/s | 32 | 150 000 | 600 |
| SAS3, 1 порт | 12 Gb/s | 256 | 300 000 | 1 200 |
| SAS4, 1 порт | 24 Gb/s | 256 | 600 000 | 2 400 |
| PCIe 3.0 x4 | 4 GB/s | 65 536 | 1 000 000 | 4 000 |
| PCIe 4.0 x4 | 8 GB/s | 65 536 | 2 000 000 | 8 000 |
| PCIe 5.0 x4 | 16 GB/s | 65 536 | 4 000 000 | 16 000 |
Максимальная производительность накопителя в IOPS и MB/s, которую указывает производитель в спецификации накопителя, никогда не превышает пропускную способность интерфейса. Однако, если интерфейс накопителя более нового стандарта, чем интерфейс контроллера, пропускная способность интерфейса контроллера может ограничивать производительность накопителя. Например, если подключить накопитель NVMe, поддерживающий стандарт шины PCIe 4.0, к контроллеру с интерфейсом PCIe 3.0, производительность накопителя будет ограничена 1 миллионом IOPS и 4GB/s. То же самое касается различных поколений интерфейса SAS.
Еще один важный момент, связанный с пропускной способностью интерфейса, касается твердотельных SAS-накопителей. Для них в спецификациях обычно указывается максимальная производительность при подключении по двум портам. Но в серверах SAS-накопители почти всегда подключаются только по одному порту, поэтому необходимо учитывать ограничения пропускной способности интерфейса при оценке ожидаемой производительности.
Типы контроллеров
Контроллер дисковой подсистемы – это устройство, которое обеспечивает обмен данными между центральным процессором сервера и накопителями дисковой подсистемы.
Основные компоненты контроллера:
| Интерфейс хоста | канал обмена данными между процессором сервера и контроллером. Недостаточная пропускная способность интерфейса хоста может ограничивать производительность дисковой подсистемы. | ||||||
| Процессор контроллера | микросхема контроллера, которая транслирует команды операционной системы накопителям, управляет передачей данных, а также может включать функционал поддержки RAID-массивов. Недостаточная производительность процессора может ограничивать производительность операций произвольного доступа (IOPS). | ||||||
| Порты накопителей | разъемы контроллера, к которым через промежуточные кабели подключаются накопители дисковой подсистемы с интерфейсом соответствующего типа. Обычно контроллеры имеют от 4 до 24 портов. | ||||||
| Контроллер | Интерфейс хоста | Ограничение интерфейса хоста | Производительность процессора контроллера по IOPS | |
| Пропускная способность | IOPS, блок 4K | |||
| SATA-контроллер | DMI 3.0 x2 | 2 GB/s | 500 000 | 250 000 |
| SAS-контроллер | PCIе 3.0 x8 | 8 GB/s | 2 000 000 | 1 000 000 |
| Tri-Mode-контроллер | PCIе 3.0 x8 | 8 GB/s | 2 000 000 | 1 200 000 |
| PCIе 4.0 x8 | 16 GB/s | 4 000 000 | 1 600 000 | |
| PCIe 4.0 x16 | 32 GB/s | 8 000 000 | 4 200 000 | |
| Intel VMD-контроллер | PCIe 3.0/4.0/5.0 x4 на накопитель | 4/8/16 GB/s на накопитель | 1/2/4 MIOPS на накопитель | 1 000 000 |
Влияние глубины очереди на производительность
Количество запросов на чтение и запись данных, которое одновременно обрабатывается дисковой подсистемой (глубина очереди), оказывает очень существенное влияние на ее производительность. Чем больше глубина очереди массива, тем большее количество запросов приходится на каждый накопитель массива.
Рассмотрим влияние глубины очереди на работу твердотельных накопителей и жестких дисков.
Твердотельные накопители
Производительность операций произвольного доступа (чтения и записи) для твердотельных накопителей при увеличении глубины очереди от 1 до глубины насыщения возрастает в 10 и более раз, поскольку увеличение числа запросов позволяет задействовать больше параллельных каналов внутреннего контроллера накопителя и, как следствие, обеспечить одновременный доступ к большему числу страниц флэш-памяти.
Производительность операций последовательного доступа (чтения и записи) твердотельных накопителей слабо зависит от глубины очереди и обычно достигает максимальных значений при однопоточной нагрузке с глубиной очереди от единицы до нескольких единиц.
Жесткие диски
Производительность операций произвольного доступа (чтения и записи) для жестких дисков зависит от скорости позиционирования головки над нужным блоком данных. С увеличением глубины очереди маршрут перемещения головок лучше оптимизируется, время позиционирования уменьшается и производительность растет. Диски SATA могут обрабатывать до 32 одновременных запросов, диски SAS – до 256. При максимальной глубине очереди производительность диска увеличивается примерно в три раза по сравнению с одиночными запросами.
Жесткие диски обычно оснащены кэш-памятью объемом от 128 до 512 MB. Если эта память включена, то при записи данные сначала попадают в кэш, а затем перезаписываются на диск в фоновом режиме с максимальной оптимизацией маршрута головок, что в разы увеличивает производительность. При этом глубина очереди не имеет значения, так как данные «мгновенно» попадают в кэш и операция записи сразу считается выполненной. Кэш жестких дисков энергозависимый, поэтому для него нужна защита по питанию.
Альтернативой кэш-памяти дисков является кэш-память контроллера. Включение ее для операций записи (режим Write Back) дает еще больший эффект увеличения производительности.
Производительность операций последовательного доступа (чтения и записи) для жестких дисков не зависит от глубины очереди и обычно достигает максимальных значений при однопоточной нагрузке с единичной глубиной очереди.
Типы RAID-массивов
RAID-массив (Redundant Array of Independent Disks — избыточный массив независимых дисков) - объединение несколько физических накопителей в один логический массив.
Преимущества RAID-массивов:
- Повышение надёжности за счет дублирования информации на нескольких накопителях или добавления блоков четности, что позволяет сохранить данные в случае отказа одного или нескольких накопителей.
- Увеличение производительности благодаря возможности чтения и записи данных одновременно с нескольких накопителей массива.
- Расширение объёма хранения путем объединения пространства нескольких накопителей в один большой логический диск.
Наиболее часто используются следующие типы (уровни) RAID-массивов: 0, 1, 10, 5, 6, 50, 60.
| RAID 0 | массив с чередованием. Данные разбиваются на блоки, которые называются strip (читается «стрип»), размер блока задается при создании массива. Блоки записываются поочередно на каждый накопитель массива. Набор последовательных блоков (стрипов) по одному на каждый накопитель массива, начиная с первого, называется stripe (читается «страйп»). Массив RAID 0 обеспечивает максимальную производительность чтения и записи данных, но не обладает избыточностью – в случае выхода из строя одного накопителя все данные будут потеряны. |
| RAID 1 | зеркальный массив из двух накопителей. Каждый накопитель массива содержит один и тот же набор данных. RAID 1 в два раза медленнее RAID 0 на операциях записи, поскольку данные нужно записывать дважды. Массив RAID 1 обладает избыточностью, поэтому выход из строя одного из накопителей не приведет к потере данных. |
| RAID 10 | зеркальный массив из двух массивов RAID 0, каждый из которых содержит один и тот же набор данных. RAID 10 может состоять из любого четного числа накопителей. В два раза медленнее RAID 0 на операциях записи. Допускает выход из строя половины накопителей, при условии, что все они будут из разных зеркальных пар. |
| RAID 5 | массив с чередованием, как и RAID 0, но к каждому страйпу добавляется блок четности. Блоки четности размещаются равномерно на всех накопителях массива. RAID 5 медленнее массива RAID 0 в 4 раза на операциях записи, поскольку одна операция записи требует выполнения двух операций чтения - старый блок данных и старый блок четности - и двух операций записи - новый блок данных и новый блок четности (это верно для жестких дисков, но для твердотельных накопителей разница между RAID 5 и RAID 0 меньше, потому что в их случае операции чтения на порядок быстрее операций записи). Массив RAID 5 допускает выход из строя одного любого накопителя без потери данных. Преимущество перед RAID 10 заключается в уменьшении числа накопителей – для обеспечения избыточности нужен только один «лишний» накопитель. |
| RAID 6 | массив с чередованием, как и RAID 0, но к каждому страйпу добавляется два блока четности. Блоки четности размещаются равномерно на всех накопителях массива. RAID 6 медленнее массива RAID 0 в 6 раз на операциях записи, поскольку одна операция записи требует выполнения трех операций чтения - старый блок данных и два старых блока четности - и трех операций записи - новый блок данных и два новых блока четности (это опять же верно только для жестких дисков, разница меньше для твердотельных накопителей). Допускает выход из строя двух любых накопителей без потери данных. Преимущество перед RAID 5 – большая надежность. |
| RAID 50 | похож на RAID 0, но только вместо накопителей в качестве членов массива используются массивы RAID 5 одинакового размера (от двух до восьми массивов RAID 5). Блоки данных и блок четности сначала записываются в первый RAID 5, затем во второй RAID 5 и так далее. Массивы RAID 5 в составе RAID 50 называются «спанами» (Span). По производительности RAID 50 такой же, как RAID 5. Более надежен, чем RAID 5, поскольку допускает выход из строя одного накопителя из каждого «спана». Массивы RAID 50 обычно применяются в случае, когда количество накопителей в массиве больше 32 (ограничение для RAID 5). |
| RAID 60 | похож на RAID 0, но только вместо накопителей в качестве членов массива используются массивы RAID 6 одинакового размера (от двух до восьми массивов RAID 6). Блоки данных и два блока четности сначала записываются в первый RAID 6, затем во второй RAID 6 и так далее. Массивы RAID 6 в составе RAID 60 называются «спанами» (Span). По производительности RAID 60 такой же, как RAID 6. Более надежен, чем RAID 6, поскольку допускает выход из строя двух накопителей из каждого «спана». Массивы RAID 60 обычно применяются в случае, когда количество накопителей более 32 (ограничение для RAID 6). |
В следующей таблице приведены коэффициенты для расчета теоретической максимальной производительности и объема RAID-массива из N накопителей, которые нужно умножить на значения производительности и объема одного накопителя. SPAN – число «спанов» в массиве.
| Тип (уровень) RAID-массива | RAID 0 | RAID 1 | RAID 10 | RAID 5 | RAID 6 | RAID 50 | RAID 60 |
| Случайное чтение (IOPS) | N | 2 | N | N | N | N | N |
| Случайная запись (IOPS) | N | 1 | N / 2 | N / 4 | N / 6 | N / 4 | N / 6 |
| Последовательная запись (MB/s) | N | 1 | N / 2 | N - 1 | N - 2 | N - SPAN | N - 2 x SPAN |
| Последовательное чтение, HDD (MB/s) | N | 1 | N / 2 | N - 1 | N - 2 | N - SPAN | N - 2 x SPAN |
| Последовательное чтение, SSD (MB/s) | N | 2 | N | N | N | N | N |
| Полезный объем массива (TB) | N | 1 | N / 2 | N - 1 | N - 2 | N - SPAN | N - 2 x SPAN |
| Число допустимых отказов накопителей | 0 | 1 | 1 ÷ N / 2 | 1 | 2 | 1 ÷ SPAN | 2 ÷ 2 x SPAN |
Напомним, что максимальная производительность массива достижима только при достаточной глубине очереди (глубине насыщения). Особенно сильно эта зависимость проявляется для SSD-накопителей.
Ниже даны пояснения к таблице.
Случайное чтение (производительность операций чтения при произвольном доступе к данным). Для всех типов RAID-массивов одинакова и пропорциональна количеству накопителей, поскольку данные одновременно можно читать с каждого накопителя массива.
Случайная запись (производительность операций записи при произвольном доступе к данным). Максимальна для RAID 0. В два раза ниже для зеркальных массивов, поскольку данные нужно записывать дважды. В четыре раза ниже для RAID 5 и RAID 50, поскольку для записи одного блока требуется четыре операции. В шесть раз ниже для RAID 6 и RAID 60, поскольку для записи одного блока требуется шесть операций. Важный момент: массивы с четностью должны быть проинициализированы перед использованием, чтобы сформировать корректные блоки четности. Иначе каждая новая запись потребует чтения страйпа целиком, то есть вместо двух или трех накопителей придется задействовать все накопители массива.
Последовательная запись (производительность операций записи при последовательном доступе к данным). Максимальна для RAID 0. В два раза ниже для зеркальных массивов, поскольку данные нужно записывать дважды. Для массивов с четностью ниже на долю объема блоков четности (из-за того, что размер записываемого блока данных обычно превышает размер страйпа, нет необходимости предварительно считывать старые данные и блок четности, нужно только записать данные и четность).
Последовательное чтение для массива из жестких дисков (производительность операций чтения при последовательном доступе к данным). Максимальна для RAID 0. В два раза ниже для зеркальных массивов, поскольку данные читаются только с одного диска зеркальной пары. Для массивов с четностью ниже на долю объема блоков четности, поскольку головки диска совершают над ними «холостой» пробег.
Последовательное чтение массива из твердотельных накопителей (производительность операций чтения при последовательном доступе к данным). Для всех типов RAID-массивов одинакова и пропорциональна количеству накопителей, поскольку данные одновременно читаются с каждого накопителя массива. Достижима только при определенной глубине очереди.
Полезный объем массива. Максимален для RAID 0. В два раза меньше для зеркальных массивов. Для массивов с четностью меньше на общий объем блоков четности.
Заключение
Надеемся, Калькулятор окажется для вас полезным.
Будем признательны за советы по улучшению Калькулятора.
Свои пожелания отправляйте на info@team.ru
Спасибо!
