+77 голосов |
Тема пагубности использования не-серверных серий SSD в серверах отнюдь не нова. Об этом многократно говорилось на семинарах Intel и других производителей дисков SSD. Часто это происходит как результат веры в маркетинговые лозунги. На последнем графике наглядно видно, что производительность бытовых SSD в режиме записи под серверной нагрузкой вполне сопоставима с бытовыми же HDD. А потом возникают легенды о том, что «SSD ничего не дает».
Данный материал - это краткий пересказ публикации Dan Lovinger на Microsoft Technet: Don’t do it: consumer-grade solid-state drives (SSD) in Storage Spaces Direct
Логика SSD
SSD – устройство, состоящее из набора микросхем флэш-памяти NAND, подключенных к внутреннему контроллеру FTL (flash translation layer). Производительность и долгий срок службы SSD зависят от реализации контроллера и его набора процедур в буферной памяти (DRAM) с использованием резерва ячеек NAND (overprovisioning, spare): cбора мусора, освобождения страниц памяти под новую запись, выравнивания износа ячеек, фоновых проверок целостности данных.
Для защиты данных есть два механизма FTL: коррекция ошибок (ECC) и замещение ячеек, выработавших свой ресурс, ячейками из резерва. Когда их запас заканчивается, SSD приходит конец.
Буферная память работает во всех операциях SSD, связанных с размещением данных. Она энергозависима. В потребительских SSD защиты DRAM по питанию нет. В серверных SSD корректное завершение транзакций записи при обесточивании обеспечивают суперконденсаторы.
По сути, два определяющих отличия серверных SSD от бытовых:
• Наличие энергонезависимого кэша записи (Power loss protection)
• Большой ресурс перезаписи ячеек (3-10 DWPD против 0.1-0.2 DWPD)
Эксперимент с потребительскими SSD
Спецификация типичного SATA SSD потребительского класса емкостью 1 TB выглядит многообещающе:
• QD32 4K Read: 95,000 IOPS
• QD32 4K Write: 90,000 IOPS
• Endurance: 185TB при пятилетней эксплуатации.
QD (“queue depth”) – количество отдельных запросов ввода-вывода к устройству во время теста. Расхожее значение 32 объясняется ограничением на число команд, обрабатываемых SATA-устройством. У SAS, а тем более NVMe, предел намного выше.
Переводя показатели endurance в более привычную метрику device-writes-per-day (DWPD), получим ресурс перезаписи
185 TB / (365 days x 5 years = 1825 days) = ~ 100 GB в день, что составляет:
100 GB / 1 TB total capacity = 0.10 DWPD
Для начала тестовый файл размером 100 GB был последовательно записан на SSD несколько раз. Использовалась утилита DISKSPD 2.0.18 с установками QD8 70:30 4 KB, смешанной нагрузкой чтения/записи в 8 потоков. Буфер записи активирован:
diskspd.exe -t8 -b4k -r4k -o1 -w30 -Su -D -L -d1800 -Rxml Z:\load.bin
Тест длился 30 минут. Падение производительности на ~ 10K IOPS примерно через две минуты - это нормально: у FTL закончился запас чистых страниц NAND под новые записи. По исчерпанию резерва SSD работает медленнее, в паузах контроллер предпринимает действия для восстановления производительности: убирает мусор, освобождает страницы. В типичных пользовательских сценариях - как загрузка веб-страниц - разницы никто и не заметит.
Тот же тест, но со сквозной записью, write-through (-Suw):
diskspd.exe -t8 -b4k -r4k -o1 -w30 -Suw -D -L -d1800 -Rxml Z:\load.bin
Режим write-through показывает истинные задержки NAND, обычно маскируемые FTL/буфером.
Ой!
Это больше не “SSD”: через пять минут работы производительность записи упала до уровня HDD, около 220 IOPS. FTL, лишенный буфера, записывает данные в ячейки, разруливает потоки чтения и записи, выполняет фоновую активность – но крайне медленно. Про “кэширование” на таких SSD можно забыть. Жить его ячейки будут недолго.
О важности энергонезависимого буфера.
Все серверные SSD имеют энергонезависимый буфер – это один из признаков этих устройств. С ним SSD гарантирует ОС и приложениям корректное завершение операций записи после попадании данных в буфер даже в случае исчезновения энергоснабжения. Как правило, он реализуется за счет установки на SSD блока суперконденсаторов (на картинке ниже маленькие желтенькие).
Наличие энергонезависимого буфера обеспечивает предсказуемо высокую и стабильную производительность (как на первом графике), и ресурс ячеек вырабатывается равномерно. Все это обеспечивается серверным
SSD под смешанной интенсивной нагрузкой.В финале…
Покупатели должны иметь возможность выбрать SSD, соответствующее задачам сервера. Да, они будут дороже, чем устройства потребительского класса. Но, надеюсь, мы убедили вас, почему серверные SSD того стоят.
Будьте в безопасности!
Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365
+77 голосов |