Достоинства и недостатки технологии Intel Smart Response. Пережеванные выкладки программиста

Рассмотрим несколько различных вариантов построения дисковой подсистемы сервера с целью сравнения их по цене и быстродействию. В качестве величины полезной емкости дискового хранилища выберем значение 10TB. Во всех вариантах предполагается использование аппаратного RAID-контроллера с кэш-памятью 2GB.

Бюджетный вариант - два жестких диска 3,5" объемом 10TB с интерфейсом SATA и скоростью вращения шпинделя 7200 об./мин., объединенных в массив RAID1. Быстродействие такого массива не превысит 500 операций в секунду (IOPS) при чтении и 250 IOPS при записи. Дополнительный плюс этого решения – возможность кратного увеличения емкости хранилища за счет добавления новых дисков в свободные отсеки дисковой корзины сервера.

Производительный вариант - 12 HDD 2,5" 10’000RPM емкостью 1,8TB в RAID10 (RAID5 или RAID50 в два раза медленнее на операциях записи). Здесь мы получим на чтении около 5’000 IOPS, а на записи 2’500 IOPS - в 10 раз больше по сравнению с первым вариантом. Однако и обойдутся эти диски примерно в шесть раз дороже.

Максимальное быстродействие обеспечит массив RAID10 из SSD-накопителей, например, 12 штук Intel DC S4600 1,9TB. Производительность такого массива составит 800’000 IOPS на операциях чтения и 400’000 IOPS на операциях записи, то есть быстрее второго варианта в 160 раз, но дороже по сравнению с ним в 4 раза, а с первым вариантом – в 24 раза. Выбор SSD-накопителей большего размера даст примерно такие же цифры по стоимости и немного ниже – по производительности.

Вариант
массива
Чтение
(IOPS)
Запись
(IOPS)
Во сколько
раз быстрее
Во сколько
раз дороже
HDD 10TB x 2 500 250
HDD 1,8TB x 12 5’000 2’500 X 10 X 6
SSD 1,9TB x 12 800’000 400’000 X 1600 X 24

В общем, чем дороже, тем быстрее. И даже скорость обгоняет цену.

Прирост производительности на 3 порядка, который обеспечивают твердотельные накопители, является чрезвычайно привлекательным, однако на хранилищах такого объема обходится слишком дорого.

К счастью, существует менее затратная технология, которая может обеспечить производительность того же порядка, что и обычный массив из SDD-накопителей. Она основана на использовании SSD-накопителей в качестве кэш-памяти дисковой подсистемы.

Идея SSD-кэширования основана на концепции «горячих» данных.

Обычно серверные приложения активно работают лишь с небольшой частью данных, хранящихся в дисковой подсистеме сервера. Например, на сервере 1С транзакции осуществляются в основном с данными текущего операционного периода, а большинство запросов к серверу веб-хостинга обращается, как правило, к наиболее популярным страницам сайта.

Таким образом, в дисковой подсистеме сервера имеются блоки данных, к которым контроллер обращается значительно чаще, чем к другим блокам. Такие «горячие» блоки контроллер, поддерживающий технологию SSD-кэширования, хранит в кэш-памяти на SSD-накопителях. Запись и чтение этих блоков с SSD выполняются гораздо быстрее, чем чтение и запись с жестких дисков.

Понятно, что разделение данных на «горячие» и «холодные» достаточно условно. Однако как показывает практика, использование для кэширования «горячих» данных даже пары SSD-накопителей небольшого объема, объединенных в массив RAID1, дает очень большой прирост производительности дисковой подсистемы.

Технология SSD-кэширования применяется как для операций чтения, так для операций записи.

Алгоритм SSD-кэширования реализуется контроллером, он довольно простой и не требует от администратора никаких усилий по настройке и сопровождению. Суть алгоритма в следующем.

Когда сервер посылает контроллеру запрос на чтение блока данных

Если да, контроллер читает блок из SSD-кэш.

Если нет, контроллер читает блок с жестких дисков и записывает копию этого блока в SSD-кэш. При следующем запросе на чтение данного блока, он будет считываться из SSD-кэш.

Когда сервер посылает контроллеру запрос на запись блока данных , контроллер проверяет, находится ли данный блок в SSD-кэш.

Если да, контроллер записывает данный блок в SSD-кэш.

Если нет, контроллер записывает данный блок на жесткие диски и в SSD-кэш. При следующем запросе на запись данного блока, он будет записываться только в SSD-кэш.

Что произойдет, если при очередном запросе на запись блока, которого нет в SSD-кэш, там для него не окажется свободного места? В этом случае самый «старый» по времени обращения блок в SSD-кэш будет записан на жесткий диск, а его место займет «новый» блок.

Таким образом, через некоторое время после начала эксплуатации сервера с использованием технологии SSD-кэширования кэш-память на SSD будет в основном содержать блоки данных, к которым приложения сервера обращаются чаще.

Если SSD-кэширование планируется использовать только для чтения, в качестве кэш-памяти на SSD можно использовать одиночный SSD-накопитель или массив RAID0 из SSD-накопителей, поскольку SSD-кэш будет хранить только копии блоков данных, хранящихся на жестких дисках.

Если SSD-кэширование планируется использовать для чтения и записи, то «горячие» данные будут храниться только в кэш-памяти на SSD. В этом случае необходимо обеспечить резервирование таких данных, для чего использовать в качестве кэш-памяти два или более SSD-накопителей, объединенных в RAID-массив с избыточностью, например, RAID1 или RAID10.

Давайте посмотрим, как технология SSD-кэширования работает на практике, а заодно сравним эффективность ее реализации на контроллерах двух разных производителей – Adaptec и LSI.

Тестирование

Основной дисковый массив: RAID10 из шести HDD SATA 3,5" 1TB. Полезный объем массива 2,7TB.

SSD-кэш: RAID1 из двух SSD Intel DC S4600 240GB. Полезный объем массива 223GB.

В качестве «горячих» данных мы использовали первые 20 миллионов секторов, то есть 9,5GB, основного массива RAID10. Выбранный небольшой объем «горячих» данных принципиально ничего не меняет, но позволяет значительно сократить время тестирования.

Тестируемые контроллеры: Adaptec SmartRAID 3152-8i и BROADCOM MegaRAID 9361-8i (LSI).

Нагрузка на дисковую подсистему создавалась при помощи утилиты iometer. Параметры нагрузки: размер блока 4K, случайный доступ, глубина очереди 256. Мы выбрали большую глубину очереди, чтобы сравнивать максимальные показатели производительности, не обращая внимания на время задержки.

Производительность дисковой подсистемы фиксировались при помощи системного монитора Windows.

Adaptec (Microsemi) SmartRAID 3152-8i с технологией maxCache 4.0

Этот контроллер по умолчанию поддерживает технологию SSD-кэширования maxCache 4.0 и имеет 2GB собственной кэш-памяти c защитой от потери питания в комплекте.

При создании основного массива RAID10 мы использовали установки контроллера по умолчанию.

Массив RAID1 кэш-памяти на SSD был установлен в режим Write-Back, чтобы включить SSD-кэширование на чтение и запись. При установке режима Write-Through все данные будут записываться на жесткий диск, поэтому мы получим ускорение только на операциях чтения.

Картина тестирования:

График 1. Тестирование Adaptec maxCache 4.0

Красная линия - производительность дисковой подсистемы на операциях записи.

В первый момент наблюдается резкий всплеск производительности до значения 100’000 IOPS – данные записываются в кэш контроллера, который работает со скоростью оперативной памяти.

После заполнения кэш производительность падает до обычной скорости массива жестких дисков (примерно 2’000 IOPS). В это время блоки данных записываются на жесткие диски, поскольку этих блоков в кэш-памяти на SSD еще нет и контроллер не считает их «горячими». Копия данных записывается в SSD-кэш.

Постепенно все больше блоков записывается повторно, такие блоки уже есть в SSD-кэш, поэтому контроллер считает их «горячими» и записывает только на SSD. Производительность операций записи при этом достигает 40’000 IOPS и стабилизируется на этой отметке. Поскольку в SSD-кэш данные защищены (RAID1), нет необходимости перезаписывать их в основной массив.

Отметим, кстати, что заявленная производителем скорость записи для используемых нами здесь SSD-накопителей Intel DC S4600 240GB составляет как раз 38’000 IOPS. Поскольку мы записываем один и тот же набор данных на каждый накопитель из зеркальной пары массива RAID1, можно сказать, что SSD-накопители работают на максимально возможной для себя скорости.

Синяя линия - производительность дисковой подсистемы на операциях чтения. Левый участок – чтение данных из массива жестких дисков со скоростью примерно 2’000 IOPS, в кэш-памяти на SSD пока нет «горячих» данных. Одновременно с чтением блоков жестких дисков выполняется их копирование в кэш-память на SSD. Постепенно скорость чтения немного растет, поскольку начинают «попадаться» блоки, ранее считанные в SSD-кэш.

После записи в SSD-кэш всех «горячих» данных их чтение выполняется оттуда со скоростью более 90’000 IOPS (второй синий участок).

Фиолетовая линия - комбинированная нагрузка (50% чтение, 50% запись). Все операции выполняются только c «горячими» данными на SSD. Производительность в районе 60’000 IOPS.

Резюме

Контроллер Adaptec SmartRAID 3152-8i отлично справится с организацией SSD-кэширования. Поскольку контроллер уже включает поддержку maxCache 4.0 и защиту кэш-памяти, необходимо приобрести только SSD-накопители. Контроллер удобен и прост в настройке, установки по умолчанию обеспечивают максимальный уровень защиты данных.

Видео с записью тестирования Adaptec maxCache 4.0:

LSI (BROADCOM) MegaRAID 9361-8i

Этот контроллер поддерживает технологию SSD-кэширования CacheCade 2.0. Для ее использования необходимо приобрести лицензию стоимостью около 20’000 рублей.

Защита кэш-памяти не входит в комплект поставки, но по результатам тестирования мы выяснили, что для получения максимальных показателей производительности кэш контроллера лучше использовать в режиме Write-Through, который не требует защиты кэш.

Установки контроллера для основного массива: кэш контроллера в режиме Write-Through; режимы чтения Direct IO, No Read Ahead.

Кэш-память на SSD-накопителях (массив RAID1) в режиме Write-Back для кэширования операций чтения и записи.

Картина тестирования (здесь диапазон вертикальной шкалы в два раза больше, чем у Adaptec):

График 2. Тестирование LSI CacheCade 2.0

Последовательность тестирования такая же, картина похожая, но производительность CacheCade 2.0 несколько выше, чем maxCache.

На операциях записи «горячих» данных мы получили производительность почти 60’000 IOPS против 40’000 у Adaptec, на операциях чтения – почти 120’000 IOPS против 90’000 IOPS, на комбинированной нагрузке – 70’000 IOPS против 60’000 IOPS.

Здесь нет «всплеска» производительности в начальный момент тестирования операций записи, поскольку кэш контроллера работает в режиме Write-Through и не используется при записи данных на диски.

Резюме

У контроллера LSI более сложная настройка параметров, требующая понимания принципов его работы. Для использования SSD-кэширования не требуется обязательное наличие защиты кэш-памяти контроллера. В отличие от Adaptec возможно использование SSD-кэш для обслуживания сразу нескольких RAID-массивов. Более высокая производительность по сравнению с контроллерами Adaptec. Требуется покупка дополнительной лицензии CacheCade.

Видео с записью тестирования LSI CacheCade 2.0:

Заключение

Дополним нашу табличку. При сравнении цен учтем, что для массива в 10TB желательна кэш-память большей емкости. Цифры производительности возьмем из нашего тестирования.

Вариант
массива
Чтение
(IOPS)
Запись
(IOPS)
Во сколько
раз быстрее
Во сколько
раз дороже
HDD 10TB x 2 500 250
HDD 1,8TB x 12 5’000 2’500 X 10 X 6
SSD 1,9TB x 12 800’000 400’000 X 1600 X 24
HDD 10TB x 2 + SSD 960GB x 2, maxCache 90’000 40’000 X 160 X 2,5
HDD 10TB x 2 + SSD 960GB x 2, CacheCade 120’000 60’000 X 240 X 3

При кэшировании записи всегда используйте в качестве SSD-кэш массивы с избыточностью (RAID1 или RAID10).

Для SSD-кэш используйте только серверные SSD-накопители. Они имеют дополнительную «невидимую» область размером около 20% от заявленного объема. Эта резервная область используется для внутренних операций дефрагментации и «сборки мусора», благодаря чему производительность таких накопителей на операциях записи не падает даже при 100% их заполнении. Кроме того, наличие резервной области экономит ресурс накопителя.

Ресурс SSD-накопителей для кэш-памяти должен соответствовать нагрузке на подсистему хранения сервера по объему записываемых данных. Ресурс накопителя обычно определяется параметром DWPD (Drive Writes Per Day) – сколько раз в день можно полностью перезаписать накопитель на протяжении 5 лет. Накопители с ресурсом 3 DWPD и более обычно будут подходящим выбором. Измерить реальную нагрузку на дисковую подсистему можно при помощи системного монитора.

В случае, если возникнет необходимость перенести все данные из кэш-памяти на SSD-накопителях на основной массив, нужно переключить режим работы SSD-кэш с Write-Back на Write-Through и подождать пока данные полностью не перепишутся на жесткие диски. По окончании этой процедуры, но не ранее, контроллер «позволит» удалить том SSD-кэширования.

Если у Вас появились вопросы или замечания по данному материалу, пожалуйста, направляйте их на .

  • Серверная оптимизация ,
  • Системное администрирование ,
  • Хранение данных ,
  • Хранилища данных
  • В статьях про СХД из "конспекта админа" практически не рассматривались технологии софтовой организации дискового массива. Кроме того, за кадром остался целый пласт относительно дешевых сценариев ускорения хранилищ с помощью твердотельных дисков.


    Поэтому в этой статье рассмотрю три неплохих варианта использования SSD-дисков для ускорения подсистемы хранения.

    Почему просто не собрать массив из SSD – немного теории и рассуждений на тему

    Чаще всего твердотельные накопители рассматривают просто как альтернативу HDD, с большей пропускной способностью и IOPS. Однако, такая замена "в лоб" часто стоит слишком дорого (брендовые диски HP, например, стоят от $2 000), и в проект возвращаются привычные накопители SAS. Как вариант, быстрые диски просто используются точечно.


    В частности, удобным выглядит использование SSD для системного раздела или для раздела с базами данных – с конкретным выигрышем в производительности можно ознакомится в . Из этих же сравнений видно, что при использовании обычных HDD узким местом является производительность диска, а в случае SSD сдерживать будет уже интерфейс. Поэтому замена одного лишь диска не всегда даст такую же отдачу, как комплексный апгрейд.


    В серверах используют SSD с интерфейсом SATA, либо более производительные SAS и PCI-E. Большинство представленных на рынке серверных SSD с интерфейсом SAS продаются под брендами HP, Dell и IBM. К слову, даже в брендовых серверах можно использовать диски OEM-производителей Toshiba, HGST (Hitachi) и других, которые позволяют сделать апгрейд максимально дешевым при схожих характеристиках.


    С широким распространением SSD был разработан отдельный протокол доступа к дискам, подключенным к шине PCI-E – NVM Express (NVMe). Протокол разработан с нуля и значительно превосходит своими возможностями привычные SCSI и AHCI. С NVMe обычно работают твердотельные диски с интерфейсами PCI-E, U.2 (SFF-8639) и некоторые M.2, которые быстрее обычных SSD более чем вдвое . Технология относительно новая, но со временем она обязательно займет свое место в самых быстрых дисковых системах.


    Немного про DWPD и влияние этой характеристики на выбор конкретной модели.

    При выборе твердотельных дисков с интерфейсом SATA следует обращать внимание на параметр DWPD, который определяет долговечность диска. DWPD (Drive Writes Per Day) – это допустимое количество циклов перезаписи всего диска в сутки на протяжении гарантийного периода. Иногда встречается альтернативная характеристика TBW/PBW (TeraBytes Written, PetaBytes Written) – это заявленный объем записи на диск на протяжении гарантийного периода. В SSD для домашнего использования показатель DWPD может быть меньше единицы, в так называемых "серверных" SSD - 10 и более.


    Такая разница возникает из-за разных типов памяти:

      SLC NAND . Самый простой тип – в каждой ячейке памяти хранится один бит информации. Поэтому такие диски надежны и обладают хорошей производительностью. Но приходится использовать больше ячеек памяти, что негативно влияет на стоимость;

      MLC NAND . В каждой ячейке хранится уже два бита информации – самый популярный тип памяти.

      eMLC NAND . То же самое что и MLC, но повышена устойчивость к перезаписи благодаря более дорогим и качественным чипам.

    • TLC NAND . В каждой ячейке хранится по три бита информации – диск максимально дешев в производстве, но обладает наименьшими производительностью и долговечностью. Чтобы компенсировать потери по скорости, для внутреннего кэша часто используется память SLC.

    Таким образом, при точечной замене обычных дисков твердотельными логично использовать MLC-модели в RAID 1, что даст отличную скорость при том же уровне надежности.


    Считается, что использование RAID совместно с SSD – не лучшая идея. Теория основывается на том, что SSD в RAID изнашиваются синхронно и в определенный момент могут выйти из строя все диски разом, особенно при ребилде массива. Однако, с HDD ситуация точно такая же. Разве что, испорченные блоки магнитной поверхности не дадут даже прочитать информацию, в отличие от SSD.

    По-прежнему высокая стоимость твердотельных накопителей заставляет задуматься об альтернативном их использовании, помимо точечной замены или использования СХД на базе одних лишь SSD.

    Расширяем кэш RAID-контроллера

    От размера и скорости кэша RAID-контроллера зависит скорость работы массива в целом. Расширить этот кэш можно с помощью SSD. Технология напоминает решение от Intel.


    При использовании подобного кэша данные, которые используются чаще, хранятся на кэширующих SSD, с которых производится чтение или дальнейшая запись на обычный HDD. Режимов работы обычно два, аналогично привычному RAID: write-back и write-through.


    В случае write-through ускоряется только чтение, а при write-back – чтение и запись.


    Подробнее об этих параметрах вы можете прочитать под спойлером.

      При настройке кэша write-through запись проводится как в кэш, так и на основной массив. Это не влияет на операции записи, но ускоряет чтение. К тому же, перебои питания или всей системы для целостности данных уже не так страшны;

    • Настройка write-back позволяет записывать данные сразу в кэш, что ускоряет операции чтения и записи. В RAID-контроллерах эту опцию можно включить только при использовании специальной страхующей энергонезависимую память батарейки, либо при использовании флэш-памяти. Если же применять в качестве кэша отдельный SSD, то проблема с питанием уже не стоит.

    Для работы обычно требуется специальная лицензия или аппаратный ключ. Вот конкретные названия технологии у популярных на рынке производителей:

      LSI (Broadcom) MegaRAID CacheCade. Позволяет использовать до 32 SSD под кэш, суммарным размером не более 512 ГБ, поддерживается RAID из кэширующих дисков. Есть несколько видов аппаратных и программных ключей, стоимость составляет около 20 000 р;

      Microsemi Adaptec MaxCache. Позволяет использовать до 8 SSD в кэше в любой конфигурации RAID. Отдельно лицензию покупать не нужно, кэш поддерживается в адаптерах серии Q;

    • HPE SmartCache в серверах ProLiant восьмого и девятого поколения. Актуальная стоимость доступна по запросу.

    Схема работы SSD-кэша предельно проста – часто используемые данные перемещаются или копируются на SSD для оперативного доступа, а менее популярная информация остается на HDD. Как итог, скорость работы с повторяющимися данными значительно возрастает.


    В качестве иллюстрации работы RAID-кэша на базе SSD можно привести следующие графики:



    StorageReview – сравнение производительности разных массивов при работе с базой данных: использованы обычные диски и их альтернатива на базе LSI CacheCade.


    Но если есть аппаратная реализация, то наверняка существует и программный аналог за меньшие деньги.

    Быстрый кэш без контроллера

    Помимо программного RAID существует и программный SSD-кэш. В Windows Server 2012 появилась интересная технология Storage Spaces, которая позволяет собирать RAID-массивы из любых доступных дисков. Накопители объединяются в пулы, на которых уже размещаются тома данных – схема напоминает большинство аппаратных систем хранения. Из полезных возможностей Storage Spaces можно выделить многоярусное хранение (Storage Tiers) и кэш записи (write-back cache).



    Storage Tiers позволяет создавать один пул из HDD и SSD, где более востребованные данные хранятся на SSD. Рекомендованное соотношение количества SSD к HDD 1:4-1:6. При проектировании стоит учитывать и возможность зеркалирования или четности (аналоги RAID-1 и RAID-5), так как в каждой части зеркала должно быть одинаковое количество обычных дисков и SSD.


    Кэш записи в Storage Spaces ничем не отличается от обычного write-back в RAID-массивах. Только здесь необходимый объем "откусывается" от SSD и по умолчанию составляет один гигабайт.

    Появление твердотельных жёстких дисков или сокращённо SSD, безусловно, можно считать прорывом в развитии технологий создания устройств для записи и хранения цифровой информации. Первые поступившие на рынок SSD, за исключением высокой скоростью доступа к произвольным блокам информации, во многом уступали традиционным HDD-дискам. Мало того что их объёмы без преувеличения можно было назвать более чем скромными, они к тому же ещё имели низкую отказоустойчивость и стоили немалых денег.

    Что c SSD не так?

    Высокая скорость, бесшумность и малое энергопотребление твердотельных накопителей послужили неплохими драйверами для их развития. Современные SSD-диски – это лёгкие, очень быстрые и достаточно надёжные с точки зрения механики устройства, используемые в планшетах, ультрабуках и других компактных устройствах. Значительно снизилась и цена на SSD. Но всё же совершенными их никак назвать нельзя. Все SSD имеют значительный недостаток – ограниченное число циклов перезаписи.

    Флеш-память большинства SSD имеет тип MLC и позволяет записывать данные примерно от 3 до 10 тысяч раз, тогда как обычные USB исчерпывают свой ресурс за 1000 и менее циклов перезаписи. Есть и такие SSD, например, с типом памяти SLC, которые могут выдержать несколько сотен тысяч циклов перезаписи. Нюансов много, поэтому нет ничего удивительного, что как раз эта особенность SSD-дисков и вызывает у рядовых пользователей массу вопросов касательно их эксплуатации, а главное – продления срока их службы. Нужна ли оптимизация SSD в Windows 7/10 или это просто всего лишь очередной миф, созданный самими производителями и разработчиками коммерческого ПО?

    Базовая подготовка

    Да, вы можете оставить на ПК с SSD всё так, как есть и, возможно, будете правы, но если вы действительно заботитесь о своём диске и желаете, чтобы он прослужил как можно дольше, стоит подумать о его настройке. Начнем с того, купили ли вы компьютер с интегрированным SSD или только сам диск, которым хотите заменить HDD, перенеся с него Windows. В первом случае ограничиться можно настройкой системы. Если же SSD вы устанавливаете сами, обязательно проверьте, включен ли в BIOS режим подключения AHCI для SATA контроллера.

    Здесь есть два момента: после включения AHCI и переноса Windows на SSD система может не загрузиться, так как в ней не окажется соответствующих драйверов. Поэтому либо устанавливайте драйвера загодя, либо выполните переустановку Windows с нуля. Второе. В BIOS старых ПК может не оказаться режима AHCI. В этом случае БИОС придётся обновить. Теперь что касается прошивки контролёра SSD. Владельцы твердотельных дисков часто спрашивают, будет ли накопитель работать быстрее, если установить последнюю версию прошивки. Да, будет, но если вы решите её обновлять и вообще, если в этом возникнет нужда, лучше обратиться за помощью в сервис обслуживания.

    Системные настройки. Отключение дефрагментации

    Для HDD дефрагментация полезная штука, но SSD-дискам она, напротив, может повредить, поэтому Windows обычно автоматически отключает её. Тем не менее, стоит проверить, действительно ли она отключена. Запустите командой dfrgui утилиту оптимизации дисков и нажмите «Изменить параметры».

    Убедитесь, что галочка «Выполнять по расписанию» снята. Если она там стоит, обязательно снимите её.

    Включение TRIM

    Механизм TRIM производит оптимизацию SSD-накопителя, очищая ячейки памяти от ненужных данных при удалении их с диска. Использование TRIM обеспечивает равномерный износ ячеек диска и увеличивает скорость его работы. Чтобы проверить, активна ли в вашей системе TRIM, выполните в запущенной от имени администратора командной строке команду fsutil behavior query DisableDeleteNotify .

    Если значение возвращённого параметра DisableDeleteNotify будет 0, значит всё в порядке и функция трим включена, если 1 - значит отключена и её следует включить командой fsutil behavior set DisableDeleteNotify 0 .

    Применима эта настройка SSD только к Windows 7/10, тогда как Vista и XP её не поддерживают. Варианта два: либо установите более новую систему, либо ищите SSD-диск с аппаратным TRIM. Учтите также, что некоторые старые модели твердотельных накопителей вовсе не поддерживают TRIM, правда, вероятность, что они ещё реализуются в магазинах цифровой техники очень мала.

    В процессе в файл hiberfil.sys на системном диске может записываться значительный объём данных, сопоставимый с объёмом оперативной памяти. Нам же для продления службы SSD нужно сократить количество циклов записи, поэтому гибернацию желательно отключить. Минус такой настройки SSD в том, что вы больше не сможете сохранять открытыми файлы и программы при выключении компьютера. Чтобы отключить гибернацию, выполните в запущенной с администраторскими привилегиями команду powercfg -h off .

    Перезагрузите компьютер и убедитесь, что скрытый системный файл hiberfil.sys удалён с диска C.

    Отключение поиска и индексирования файлов

    Что еще можно сделать, чтобы правильно настроить SSD диск для Windows 7/10? Ответ – отключить индексацию содержимого диска, ведь SSD и так достаточно быстрый. Откройте свойства диска и снимите галочку «Разрешить индексировать содержимое файлов…».

    Но вот какая штука. Если помимо SSD у вас есть HDD, то отключать индексацию на нём вы вряд ли захотите. Что из этого получится? По умолчанию файл индекса располагается на диске C и писаться данные с диска D всё равно будут на твердотельный диск.

    Если вы не хотите отключать индексацию на пользовательском томе, вам нужно будет перенести файл индексации с системного SSD-диска на пользовательский HDD. Откройте командой control /name Microsoft.IndexingOptions параметры индексирования.

    Теперь нажмите «Дополнительно» и укажите своё расположение индекса, предварительно создав на пользовательском диске папку.

    Если же на вашем ПК только SSD, можете полностью отключить индексирование и поиск, открыв командой services.msc оснастку управления службами и остановив службу Windows Search.

    Отключение защиты системы

    Спорный момент. Отключив создание системных теневых копий, вы с одной стороны уменьшите число циклов записи, с другой – увеличите риск получить нерабочую систему в случае какого-нибудь непредвиденного сбоя. Использование откатных – один из самых эффективных и простых способов вернуть Windows в рабочее состояние, по этой причине мы бы не рекомендовали отключать эту функцию, тем более что создаются точки нечасто и места занимают не так уже и много.

    Не рекомендует отключать защиту системы для своих SSD Intel, того же мнения придерживается Microsoft. Впрочем, решать вам. Если вы используете другие средства резервного копирования, например, Acronis True Image, системную защиту можно отключить. Для этого зайдите в свойства системы, на вкладке «Защита системы» выделите SSD-диск и нажмите «Настроить». Далее в параметрах восстановления активируйте радиокнопку «Отключить защиту системы», ползунок передвиньте в ноль и нажмите кнопку «Удалить».

    Отключать или нет файл подкачки?

    Ещё более неоднозначным решением является отключение файла подкачки. Кто-то советует переносить его на HDD, кто-то полностью отключать, но не всё так просто. Файл подкачки необходим для оптимизации быстродействия системы и программ, требующих значительных ресурсов ОЗУ. Отключение подкачки действительно может снизить нагрузку на диск, но полученный эффект будет очень незначительным. К тому же это отключение может существенно снизить производительность компьютера.

    Особого смысла в переносе файла подкачки на жёсткий HDD-диск тоже нет, так как он во много раз медленнее SSD, и постоянное обращение к нему системы станет замедлять её работу. Отключить, а ещё лучше уменьшить файл подкачки допустимо только в одном случае – если на вашем компьютере имеется более 10 Гб ОЗУ, и при этом вы не пользуетесь ресурсоёмкими приложениями. А так, конечно, лучше всё оставить по умолчанию. Выполнить все манипуляции с файлом подкачки вы можете в окне параметров быстродействия, вызываемого в окошке «Выполнить» командой systempropertiesperformance (далее Дополнительно – Изменить).

    Prefetch и Superfetch

    По идее, здесь также всё лучше оставить по умолчанию. Функция никак не влияет на долговечность твердотельных дисков, так как не производит никаких записей. Тем более, что при установке Windows на SSD система автоматически её отключает. Желаете убедиться, что она отключена? Перейдите в редакторе реестра по адресу HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager/Memory Management/PrefetchParameters и посмотрите значение параметра EnableSuperfetch . Он должен быть установлен в 0. Отключить её также можно через оснастку управления службами.

    Что касается Prefetch, то производимые ею записи на диск столь незначительны, что её можно проигнорировать. Впрочем, можете её отключить, ничего страшного не произойдёт. Для этого в том же ключе реестра установите в качестве значения параметра EnablePrefetcher 0.

    То же самое можно сказать об отключении дополнительной функции Prefetch ReadyBoot, логгируемой процесс загрузки приложений. Объем производимых ею записей в папку C:/Windows/Prefetch/ReadyBoot ничтожен, но если вы хотите отключить и их, установите в 0 параметр Start в ключе HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/WMI/Autologger/ReadyBoot .

    Программы для оптимизации SSD-диска

    Практически все, что было показано на примерах выше, можно сделать с помощью специальных утилит. Как настроить SSD под Windows 7/10 с использованием сторонних программ? Очень просто. Большинство из них имеет интуитивно понятный интерфейс, представленный набором опций, которые можно включить или отключить. Оптимизаторов SSD много, но мы остановимся только на самых популярных.

    SSD Mini Tweaker

    Самая удобная портативная программка для оптимизации твердотельных накопителей. Утилитой поддерживается работа с функциями дефрагментации, гибернации и защиты системы, Trim, Superfetch и Prefetcher, управление файлом подкачки и Layout.ini, индексированием, кэшем файловой системы и некоторыми другими настройками.

    Интерфейс SSD Mini Tweaker представлен окошком со списком доступных для управления функций. После применения новых настроек может потребоваться перезагрузка ПК.

    Условно-бесплатная утилита для оптимизации и настройки производительности SSD диска. Русского языка в Tweak-SSD нет, но зато есть удобный пошаговый мастер, предлагающий оптимальные настройки. Возможности этой программы включают отключение индексации файлов, помощника совместимости программ, гибернации, файла подкачки, дефрагментации, записи времени последнего доступа к файлу, работу с TRIM, увеличение кэша файловой системы, снятие лимита NTFS на использование памяти, а также вынос ядра в памяти вместо выгрузки части модулей на диск.

    SSD Fresh Plus

    Ещё один оптимизатор SSD. В отличие от аналогов, поддерживает работу с данными S.M.A.R.T. С помощью Abelssoft SSD Fresh Plus можно отключить дефрагментацию, использование сокращённых имен для папок и файлов, временные метки, журнал Windows, службы предварительной выборки.

    В общей сложности утилита поддерживает девять разных настроек, оптимизирующих работу SSD. Дополнительные возможности программы включают просмотр подробной информации о диске. Распространяется в платной и бесплатной редакциях.

    Заключение

    На этом, пожалуй, всё. Есть также и другие рекомендации по оптимизации SSD, но они по большей части либо сомнительны, либо вредны. В частности, не рекомендуется отключать кэширование записей для SSD-диска и USN-журнал файловой системы NTFS. Не следует также переносить с SSD программы и временные папки Temp, кэш браузеров и прочее, ведь какой тогда смысл в покупке SSD-диска? Нам нужно ускорение работы программ, перенеся же их на HDD, вы только замедлите работу системы.

    И напоследок вот вам добрый совет. Не заморачивайтесь особенно с оптимизацией SSD. Чтобы выработать ресурс даже бюджетного твердотельного диска 128 Гб, вам потребуется как минимум десяток лет, если только вы не станете записывать и удалять ежедневно терабайты данных. А за это время безнадёжно устареет не только модель диска, но и сам компьютер.

    Отличия дисковых подсистем SSD и HDD+SSD для виртуальных выделенных серверов, сравнение производительности.

    Диски HDD+SSD-кэш

    Принцип работы . Мы используем быстрые SSD-диски для кэширования запросов к медленным, но значительно более ёмким и недорогим HDD-дискам. В этом режиме каждое обращение к жесткому диску виртуальной машины проверяется на наличие в кэше, и при его наличии в кэше отдаётся оттуда, а не читается с медленного диска. Если же в кэше данные не найдены, то они читаются с HDD-диска и записываются в кэш.

    Преимущества технологии HDD+SSD-кэш. Основной плюс технологии HDD+SSD-кэш в объеме предоставляемого дискового пространства. Также серверы на этой технологии дешевле, что немаловажно для размещения начинающих проектов, тестовых серверов и вспомогательных сервисов.

    • Бекапы данных
    • Объемные архивы с данными
    • Любые сервисы и сайты, для которых не критична скорость чтения/записи с дисков

    Диски SSD

    Принцип работы . SSD (Solid-state drive) - это накопитель, в котором, в отличие от обычных жестких дисков, нет движущихся элементов. Для хранения в SSD используется флеш-память. Простыми словами, это большая флешка.

    Преимущества технологии SSD. Основное преимущество SSD-накопителей - это скорость работы. В отличие от обычного жесткого диска, отсутствуют временные затраты на позиционирование считывающих головок - увеличивается скорость доступа к данным. Согласно тестам, скорость чтения/записи на SSD превышает показатели обычных HDD в несколько раз.

    Кому будет полезен VDS или VPS на SSD ?

    • Владельцам интернет магазинов: скорость работы с базами данных на SSD несоизмеримо выше, чем на HDD.
    • Владельцам других сайтов: страницы вашего сайта будут открываться значительно быстрее, что немаловажно для ранжирования в поисковых системах.
    • Для разработчиков: скорость компиляции кода на SSD-дисках выше, сэкономьте свое время.
    • Для игровых серверов: скорость загрузки увеличивается, не заставляйте игроков ждать.

    Диски NVMe

    Принцип работы . NVM Express (NVMe, NVMHCI, Non-Volatile Memory Host Controller Interface Specification) - обновленная версия SSD-диска. Использует собственный, разработанный с нуля, протокол взаимодействия, и подключается через порт PCI Express.

    Преимущества технологии NVMe. Чтение-запись с дисками NVMe в 2-3 раза быстрее, чем с обычными SSD. Шина PCI Express не ограничивает скорость диска - этим обеспечивается прирост производительности. Кроме этого, на NVMe быстрее обрабатываются параллельные операции, больше операций чтения-записи проводится в единицу времени.

    Когда заказывать виртуальный сервер с диском NVMe ?

    • В тех же случаях, что и SSD. Когда вашему проекту уже не хватает производительности SSD, либо планируете рост проекта и высокие нагрузки.

    Сравниваем производительность

    Мы сравнили производительность виртуальных машин на «боевых» физических серверах с различными дисковыми подсистемами.

    Мы учитывали количество IOPS (количество операций ввода/вывода, Input/Output Operations Per Second) - это один из ключевых параметров при измерении производительности систем хранения данных, жестких дисков и твердотельных дисков (SSD).

    Обратите внимание, что в работе сайтов чаще всего используются именно операции чтения данных, а не записи. Этот показатель SSD дисков в три раза выше, чем у технологии HDD+SSD-кэш.

    Сравнение производительности технологий

    Традиционная система хранения подразумевает размещение данных на жестких дисках HDD и твердотельных дисках SSD. В последние годы емкости HDD растут стремительными темпами. Однако, скорость их при случайном доступе по-прежнему мала. Для некоторых приложений, таких как базы данных, облачные технологии или виртуализация, требуется как высокая скорость доступа, так и большой объем. Получается, что использование только HDD не приемлемо, а использование SSD неоправданно дорого. Использование SSD только в качестве кэша является лучшим соотношением цена/производительность для системы в целом. В этом случае сами данные будут располагаться на емких HDD, а дорогие SSD будут давать прирост производительности при случайном доступе к этим данным.

    Чаще всего SSD-кэш будет полезен в следующих случаях:

    1. Когда скорость работы HDD в IOPS при чтении является узким местом.
    2. Когда операций ввода/вывода на чтение существенно больше, чем на запись.
    3. Когда объем часто используемых данных меньше размера SSD.

    Решение

    SSD-кэширование – это дополнительный кэш для увеличения производительности. Один или несколько SSD должны быть назначены виртуальному диску (луну) для использования в качестве кэша. Обратите внимание, что эти SSD будут недоступны для хранения данных. В настоящее время размер SSD-кэша ограничен 2.4ТБ.

    Когда производится операция чтения/записи, копия данных помещается на SSD. В следующий раз любая операция с этим блоком будет производиться напрямую с SSD. В итоге это уменьшит время реакции и, как следствие, увеличит общую производительность. Если, к несчастью, SSD откажет, то данные не потеряются, т.к. в кэше содержится копия данных с HDD.

    SSD-кэш делится на группы – блоки, каждый блок делится на субблоки. Характер операций ввода/вывода для виртуального диска определяет выбор размера блока и субблока.

    Заполнение кэша

    Чтение данных с HDD и запись их на SSD называется заполнением кэша. Эта операция выполняется в фоновом режиме сразу же после того, как хост производит операции чтения или записи. Работа кэша ограничена двумя параметрами:

    • Populate-on-read threshold
    • Populate-on-write threshold

    Эти значения больше нуля. Если они равны нулю, то кэш на чтение или запись не работает. В соответствии с этими значениями каждый блок соотносится с его счетчиком чтения или записи. Когда хост производит операцию чтения, и данные расположены в кэше, счетчик чтения увеличивается. Если в кэше нет данных и счетчик чтения больше или равен значению Populate-on-read threshold, то данные копируются в кэш. Если же значение счетчика меньше Populate-on-read threshold, то данные читаются мимо кэша. Для операций записи ситуация аналогична.

    Сценарии работы SSD-кэша

    Тип ввода/вывода

    Тип ввода/вывода определяет конфигурацию SSD-кэша. Эта конфигурация выбирается администратором и определяет параметры блока, субблока, populate-on-read threshold и populate-on-write threshold. Имеются три заранее определенные конфигурации согласно типам ввода/вывода: базы данных, файловая система и web-сервисы. Администратору необходимо выбрать конфигурацию SSD-кэша для виртуального диска. В процессе работы можно сменить тип конфигурации, но в этом случае содержимое кэша будет сброшено. Если предопределенные конфигурации не подходят под используемый профиль нагрузки, то имеется возможность задать собственные значения параметров.



    Размер блока влияет на время «прогрева» кэша, т.е. когда наиболее востребованные данные переместятся на SSD. Если данные расположены на HDD близко друг к другу, то лучше использовать блок большого размера. Если же данные расположены хаотично, то логичнее использовать блок малого размера.

    Размер субблока также влияет на время прогрева кэша. Больший его размер уменьшает время заполнения кэша, но увеличивает время реакции на запрос с хоста. Помимо этого, размер субблока также влияет на загрузку процессора, пропускную способность памяти и канала.


    Для расчета примерного времени прогрева кэша можно воспользоваться следующим методом.

    • Т – время прогрева кэша в секундах
    • I – значение IOPS для HDD при случайном доступе
    • S – размер блока ввод/вывода
    • D – количество HDD
    • C – полный объем SSD
    • P - populate-on-read threshold или populate-on-write threshold

    Тогда T = (C*P) / (I*S*D)
    Для примера: 16 дисков с 250 IOPS, один SSD 480ГБ в качестве кэша, характер нагрузки – web-сервисы (64КБ) и populate-on-read threshold = 2.
    Тогда время прогрева будет Т = (480ГБ*2) / (250*64КБ*16) ≈ 3932 сек ≈ 65.5 мин

    Тестирование

    Для начала рассмотрим процесс создания SSD-кэша

    1. После создания виртуального диска нажмите ↓, затем Set SSD Caching
    2. Выберите Enable
    3. Выберите конфигурацию из ниспадающего списка
    4. Нажмите Select Disks и выберите SSD, которые будут использоваться в качестве кэша
    5. Нажмите ОК

    Ограничения

    • Только SSD могут использоваться в качестве кэша
    • SSD может быть назначен только одному виртуальному диску в каждый момент времени
    • Поддерживается до 8 SSD на один виртуальный диск
    • Поддерживается общий объем до 2.4ТБ SSD на систему
    • Для SSD-кэширования требуется лицензия, которая приобретается отдельно от системы

    Результаты

    Тестовая конфигурация:

    • HDD Seagate Constellation ES ST1000NM0011 1TB SATA 6Gb/s (x8)
    • SSD Intel SSD DC3500, SSDSC2BB480G4, 480GB, SATA 6Gb/s (x5)
    • RAID 5
    • I/O Type Database Service (8KB)
    • I/O pattern 8KB, random read 90% + write 10%
    • Virtual disk 2TB

    Согласно формуле время прогрева кэша T = (2ТБ*2) / (244*8КБ*8) ≈ 275036 сек ≈ 76.4 ч




    Понравилась статья? Поделиться с друзьями: