Дисковая подсистема: HDD, SSD и NVMe
Студент разберет типы накопителей, их интерфейсы (SATA, SAS, PCIe) и научится выбирать диски в зависимости от требований к скорости и объему.
Введение в дисковую подсистему сервера
Дисковая подсистема (Storage Subsystem) — это фундамент для хранения данных в любой IT-инфраструктуре. В отличие от оперативной памяти (RAM), данные на накопителях сохраняются энергонезависимо. В современных серверах используются три основных типа носителей: HDD, SSD и NVMe. Выбор конкретного типа зависит от профиля нагрузки (Workload Profile), требуемой емкости, бюджета и критичности к задержкам (Latency). Системный администратор должен понимать не только маркетинговые характеристики, но и физические принципы работы каждого устройства. Ошибочный выбор типа диска на этапе проектирования приведет к катастрофической деградации производительности всей системы, независимо от мощности установленных процессоров (CPU). В этом уроке мы применим метод Direct Instruction для глубокого разбора архитектуры накопителей.
Архитектура HDD (Hard Disk Drive)
Жесткие магнитные диски (HDD) остаются стандартом для хранения «холодных» и архивных данных благодаря минимальной стоимости за терабайт. Внутри HDD находятся магнитные пластины (Platters), вращающиеся на шпинделе со скоростью 7200, 10000 или 15000 оборотов в минуту (RPM). Над пластинами на воздушной подушке (доли нанометра) парят магнитные головки чтения/записи. Главный недостаток HDD — это механика. Время, необходимое для перемещения головки к нужному сектору, называется временем позиционирования (Seek Time). Из-за этого HDD обеспечивают крайне низкий показатель IOPS (операций ввода-вывода в секунду) при случайном доступе (Random Access) — обычно около 75-150 IOPS. Однако при последовательном чтении (Sequential Access), например, при копировании больших видеофайлов или резервных копий, HDD могут выдавать приемлемую скорость до 150-250 МБ/с. В корпоративном сегменте часто используют диски, заполненные гелием (Helium-filled drives), что снижает сопротивление среды, уменьшает нагрев и позволяет разместить больше пластин в стандартном 3.5-дюймовом корпусе.
Архитектура SSD (Solid State Drive)
Твердотельные накопители (SSD) лишены движущихся частей. Данные хранятся в ячейках флэш-памяти NAND. Доступ к любой ячейке осуществляется практически мгновенно, что снижает задержки (Latency) до микросекунд и увеличивает IOPS до десятков и сотен тысяч. Ключевая характеристика серверных SSD — это тип памяти: SLC (1 бит на ячейку, высочайшая надежность, очень дорого), MLC (2 бита), TLC (3 бита) и QLC (4 бита, низкая надежность, используется для архивов). Проблема флэш-памяти — ограниченный ресурс перезаписи. Ячейки деградируют. Для оценки ресурса серверных SSD используются метрики TBW (Total Bytes Written — общий объем данных для записи до отказа) и DWPD (Drive Writes Per Day — сколько раз в день можно полностью перезаписать диск в течение гарантийного срока, обычно 5 лет). В серверах категорически нельзя использовать десктопные SSD: у них нет защиты от внезапного отключения питания (Power Loss Protection, PLP) в виде танталовых конденсаторов, и их ресурс DWPD часто меньше 0.3, тогда как для баз данных требуются SSD с DWPD от 3 до 10.
Интерфейсы подключения: SATA vs SAS
Физический носитель (HDD или SSD) подключается к материнской плате или контроллеру через интерфейс. SATA (Serial ATA) — полудуплексный интерфейс (Half-Duplex), что означает, что диск может либо читать, либо писать данные в один момент времени. Скорость ограничена 600 МБ/с (SATA III), а глубина очереди команд (Queue Depth, NCQ) составляет всего 32. SATA подходит для недорогих хранилищ. SAS (Serial Attached SCSI) — это корпоративный стандарт. Он полнодуплексный (Full-Duplex), то есть читает и пишет одновременно. Скорость достигает 12 Гбит/с или 24 Гбит/с. Глубина очереди команд огромна — до 65536. Кроме того, SAS-диски имеют два порта (Dual-Port) для подключения к двум разным контроллерам для обеспечения отказоустойчивости (High Availability). Важное правило (Chunking): SAS-контроллер может работать с SATA-дисками, но SATA-контроллер никогда не поймет SAS-диск из-за разницы в протоколах и физическом ключе на разъеме.
Революция NVMe (Non-Volatile Memory Express)
Интерфейсы SATA и SAS были созданы в эпоху медленных жестких дисков. Когда появились быстрые SSD, интерфейс стал бутылочным горлышком (Bottleneck). Технология NVMe решила эту проблему, отказавшись от традиционных контроллеров (HBA/SATA) и подключив флэш-память напрямую к центральному процессору (CPU) через шину PCIe (PCI Express). Это дало колоссальный прирост: пропускная способность одного накопителя NVMe PCIe Gen4 x4 достигает 7000 МБ/с (в 10+ раз быстрее SATA SSD), а количество IOPS превышает 1 миллион. NVMe поддерживает 64 000 очередей по 64 000 команд в каждой. Форм-факторы NVMe в серверах: M.2 (для установки гипервизора или кэша, требует радиатора охлаждения), U.2/U.3 (выглядят как обычные 2.5-дюймовые диски, но имеют специальный коннектор SFF-8639 для горячей замены) и PCIe Add-in Card (AIC). NVMe — это стандарт де-факто для высоконагруженных баз данных и систем виртуализации.
Флеш-карточки
Что такое IOPS?
Нажмите, чтобы увидеть ответ
Input/Output Operations Per Second. Количество операций чтения/записи, которое диск может выполнить за одну секунду. Ключевая метрика для баз данных.
Нажмите, чтобы вернуться
Что такое DWPD?
Нажмите, чтобы увидеть ответ
Drive Writes Per Day. Ресурс SSD. Показывает, сколько раз в день можно полностью перезаписать весь объем диска на протяжении гарантийного срока.
Нажмите, чтобы вернуться
Главное отличие SAS от SATA?
Нажмите, чтобы увидеть ответ
SAS - полнодуплексный (Full-Duplex, одновременные чтение и запись) и поддерживает два порта для отказоустойчивости. SATA - полудуплексный.
Нажмите, чтобы вернуться
Задание
Сценарная задача (Scenario-Based Learning): Вы — системный архитектор. К вам поступила задача спроектировать сервер для новой системы видеонаблюдения (постоянная потоковая запись больших видеофайлов с 50 камер, требуемый объем хранения 100 ТБ). Выберите оптимальный тип дисков.
- Определить профиль нагрузки: последовательная или случайная запись?
- Оценить требуемый объем данных.
- Сделать выбор между NVMe, SSD и HDD, аргументировав его бюджетом и техническими требованиями.