Ssd накопитель это схд

Обновлено: 08.07.2024

Достоинства и недостатки SSD

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

В итоге, как показывают тесты, проведенные в условиях, близких к имеющим место на практике, SSD-диски на реальных задачах опережают RAID-массивы из самых быстродействующих SAS жестких дисков со скоростью вращения шпинделя 15 KRPM как минимум вдвое, а на некоторых операциях даже практически на порядок. Если же диски не объединять в RAID, то разница в быстродействии между SSD и SAS жестким диском составит порядка 15—20 раз, и до 50 раз, если речь идет о массовых SATA-накопителях. При этом SSD-диски не имеют движущихся частей, а значит, не боятся вибраций, механических перегрузок, пыли и агрессивных сред. При этом они не потребляют энергию при отсутствии обращения к ним, что еще более снижает их энергопотребление.

Существенных недостатков у SSD-накопителей всего два, но они довольно существенны. Это, в частности, ограниченное количество циклов перезаписи. У лучших (но и дорогих) образцов он составляет порядка 100 тыс. циклов, однако у некоторых систем на базе технологии MLC этот показатель существенно меньше (5—10 тыс. циклов, по разным данным). Если брать минимальный показатель в 5 тыс. циклов, то при типичном использовании в ЦОД такого диска хватит меньше чем на год. При этом скорость записи у SSD-дисков еще и не слишком велика, что может стать узким местом на ряде задач. В любом случае требуется доработка ПО, иногда серьезная. Это также стоит считать если не недостатком, то определенной особенностью, о которой надо знать и которую необходимо иметь в виду.

Не менее серьезным недостатком является также высокая цена. При этом стоимость SSD прямо пропорциональна емкости, в то время как цена жестких дисков по мере увеличения емкости растет довольно медленно. В итоге средняя стоимость хранения на SSD-диске будет в пять раз выше, чем на SAS-диске, и как минимум на порядок больше, чем на SATA. Были надежды, что по мере перехода к массовому производству цена будет снижаться, но они не оправдались. И это при том, что рынок SSD существенно более конкурентный, чем жестких дисков, где сложилась олигополия небольшого числа крупных игроков.

Таким образом, SSD-диски имеет смысл использовать для следующих задач:

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

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

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

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

Когда важна высокая скорость чтения
Ситуация, когда том работает в основном на чтение, в то время как запись происходит существенно реже, не так уж и необычна. Именно так обстоит дело с очень многими задачами, которые решают вычислительные комплексы для высокопроизводительных научных и инженерных расчетов, где необходимо обрабатывать относительно небольшие объемы данных по сложным алгоритмам. В итоге уже есть суперкомпьютеры, где вся подсистема хранения построена на базе SSD-дисков. Например, как раз такая система «СКИФ-Аврора» действует в Южно-Уральском государственном университете.

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

Хороший пример использования такого подхода — решение Oracle Exadata. «Exadata Version 1 была самой быстродействующей в мире машиной для реализации хранилищ данных. Exadata Version 2 вдвое превосходит Exadata V1 по быстродействию для приложений хранилищ данных и является единственной машиной баз данных, способной исполнять OLTP-приложения. Exadata V2 исполняет практически любые приложения для баз данных значительно быстрее и с меньшими затратами, чем любой другой существующий в мире компьютер», — подчеркнул глава компании Oracle Ларри Эллисон. Как показывают тесты на реальных задачах, никакого преувеличения тут нет. Во многом этого удалось добиться благодаря применению решения Exadata Smart Flash Cache, позволяющего хранить часто запрашиваемые «горячие» данные, чтобы обеспечить высокую пропускную способность и сверхмалое время отклика при обработке транзакций. Емкость буфера составляет 5 Тбайт из общего объема 336 Тбайт неформатированной емкости, которым комплектуется Oracle Exadata 2. Стоит также отметить, что немалую роль в столь значительном ускорении сыграли и доработки, внесенные в код СУБД Oracle 11g и отличающие его от более ранних версий. В противном случае выигрыш все равно был бы, но куда скромнее.

SSD: развеиваем мифы

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

Миф 2. SSD-накопители эффективны при чтении. При записи преимущество над жесткими дисками минимально. Да, преимущества в 30—50 раз при записи не будет. Но на 7—10 раз рассчитывать можно. Именно такие результаты мы получаем на наших системах хранения при случайной записи на SSD. При типичной смешанной нагрузке SSD превосходит жесткий диск примерно в 20 раз.

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


SSD хранилище (рэковая схд дисковый массив / полка ) купить сетевое хранилище данных выбор с ценами онлайн | Серверное оборудование подбор расчет

Конфигуратор системы хранения данных Dell EMC PowerVault с ценами
    Конфигуратор схд поможет за 1-2 минуты выбрать готовое решение для хранения данных.
    Или отправьте нам на ПОЧТУ любую Вашу конфигурацию. Оперативно сделаем расчет!
    Выбор системы хранения данных / схд - подбор по параметрам / критериям под задачи.
    В зависимости от стоимости комплектации предусмотрены оптовые цены и скидки до 20%. Онлайн конфигуратор схд поможет за 1-2 мин. выбрать необходимую конфигурацию и заказать. Для каждой компании выбор серверного оборудования индивидуален. С помощью конфигуратора легко выбрать по пунктам нужные комплектующие и их количество, ознакомиться с ценами и заказать.Узнайте цену онлайн и сэкономьте Ваше время на поиски необходимой комплектации.
    Вам достаточно потратить всего лишь 1-2 минуты, чтобы выбрать нужную конфигурацию.
    Все заказанные через конфигуратор системы хранения данных настроены и готовы к экслуатации. Преимущества покупки готового схд - общая гарантия на всю конфигурацию подробнее.. . На некоторые комплектации систем хранения DELL PowerVault предоставляются скидки до 20%.

Официальная Гарантия производителя 3 года (ProSupport и NBD on Site) с выездом инженера Dell на место установки сервера на следующий день после обращения. (подробнее..)

Любой покупатель оборудования Dell, корпоративный заказчик или конечный пользователь, в случае неисправности должен обратиться в центр технической поддержки Dell по бесплатному телефону «горячей линии»:

1 - бесплатный звонок со стационарных телефонов по России круглосуточно без выходных и праздничных дней, с 07:00 до 20:00 по Московскому времени в рабочие дни на русском языке, в остальное время – на английском языке;

2 - бесплатный звонок со стационарных телефонов по России, доступен с 10:00 до 18:00 по Московскому времени в рабочие дни;

Расширение или продление гарантии: для любого владельца оборудования Dell, корпоративного заказчика или конечного пользователя, в период действия первоначальной гарантии имеется возможность продлить её срок (максимально до 5 лет с момента первоначальной продажи) и/или повысить уровень сервисной поддержки, например, с базовой гарантии до ProSupport.


Несколько лет назад начался переход от colocation к облачной модели ИТ-сервисов. Запросы рынка к облачным сервисам оказали существенное влияние на развитие систем хранения данных и требования, предъявляемые к их производительности.

Выбор СХД для корпоративного облака

При использовании виртуализации для корпоративного облака нагрузка со стороны виртуальной инфраструктуры на систему хранения произвольная. Разные приложения одновременно обращаются к СХД с разным профилем нагрузки — распределение ее невозможно спрогнозировать. При этом должны соблюдаться жесткие требования к количеству операций ввода-вывода (IOPS) и времени отклика (latency).

Под такой тип нагрузки лучше всего подходят системы хранения данных, построенные на базе твердотельных накопителей (SSD). Но еще несколько лет назад емкость SSD-накопителей была небольшой, а цена — очень высокой, что ощутимо влияло на конечную стоимость сервиса.

Чтобы найти баланс между высокой производительностью и большим объемом невостребованного дискового пространства, в виртуальном дата-центре можно использовать SSD-кеш на всех системах хранения (в пределах 5–15% от общей дисковой емкости), что снизит время отклика и увеличит производительность без добавления избыточного количества дисков. Высокая производительность такого подхода хорошо ощутима на решениях VDI (Virtual Desktop Infrastructure), где дедуплицированные данные занимают мало места в кеше и при этом создается впечатление, что диски виртуальных серверов размещены на SSD-томе.

WARNING


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

NetApp FAS3250

Рассмотрим системы хранения данных виртуального дата-центра, построенного на оборудовании HPE и NetApp. Эти компании лидируют в производстве быстрых, гибких и отказоустойчивых систем хранения, их СХД дают максимальную производительность при разнородной нагрузке.

Первой продуктивной системой хранения с использованием SSD-кеша была NetApp FAS3250, в которую устанавливались Flash Cache PCI-платы емкостью 1 Тбайт на каждый контроллер. Далее нарастить полезную емкость без снижения производительности позволили смешанные дисковые полки Flash Pool (по четыре SSD-диска на каждую полку с дисками других типов). Такой вид кеширования (Flash Pool) позволял ускорять операции чтения и записи, что было невозможно при использовании Flash Cache.

В основе архитектуры Data ONTAP (ОС NetApp) лежит файловая система WAFL (Write Anywhere File Layout), которая новые данные всегда пишет в свободное место, как при последовательной записи, что позволяет таким системам хранения иметь небольшой RAM-кеш контроллера при высоких показателях производительности. Подобная архитектура позволила получать хорошие результаты на произвольную запись даже на NL-SAS-дисках. Например, средние значения write при тестировании: 72 763 Кбит/с, 18 190 IOPS, latency — 1,7 мс. Данные получены с тестового виртуального сервера (программа тестирования fio, тестировался RAW-раздел без файловой системы), размещенного на NL-SAS-дисках (собран из 94 дисков по 2 Tбайт). Во время тестирования системы хранения были нагружены данными.

По умолчанию на дисковом уровне данные защищены технологией RAID-DP (как вариант модифицированного RAID 6). Если на других системах хранения часто применяется RAID 1 («зеркало»), то недостатки RAID 6 при случайной перезаписи нивелируются благодаря WAFL.

Механизм дедупликации позволяет не хранить повторяющиеся блоки данных ни на дисках, ни в кеше, а хранить их в единственном экземпляре и кешировать один раз, что сильно экономит емкость кеша. Этот эффект виден на образах операционных систем: все их файлы в основном одинаковые, поэтому все экземпляры виртуальных серверов занимают место одного виртуального диска. Такие технологии позволяют экономить на дисках компаниям с прогнозируемыми нагрузками.

Можно продуктивно использовать NFS как основной протокол подключения к дисковым массивам NetApp. Среди прочего данный тип подключения позволяет получить гибкую легко масштабируемую инфраструктуру при выносе части облака в резервный дата-центр, где также применяется технология Flash Pool при сайзинге системы хранения NetApp FAS8040.

Рассмотрим системы хранения 3PAR, линейки 74xx и 84xx. По результатам нескольких лет работы с массивами можно с уверенностью отнести их к числу лучших систем хранения для применения в виртуализированных средах. 3PAR для ускорения операций чтения на более медленных типах дисков предлагают использовать SSD-кеш с возможностью тиринга. Например, для размещения данных используется составной том: на SAS-дисках (

45%), на наиболее медленных NL-SAS (

5%). Так, на массиве нужно задать только изначальное процентное соотношение и периодичность миграции горячих и холодных блоков. Далее массив анализирует, к каким данным наиболее часто происходит обращение, и, набрав статистику, с определенной периодичностью производит миграцию с более медленного на более быстрый уровень и наоборот. Когда часть блоков располагается на «медленных» дисках, помогает SSD-кеш, работающий одновременно с тирингом. Также полезен механизм Dynamic Optimization, позволяющий на уровне системы хранения мигрировать виртуальные серверы на более производительный тип дисков без прерывания сервиса.

3PAR использует виртуализацию дискового пространства, а именно все однотипные физические диски в массиве разбиваются на кусочки (чанклеты) по 1 Гбайт, из которых строятся логические диски с заданным типом RAID. Далее из этих логических дисков создаются тома, что позволяет увеличить быстродействие, так как в операциях чтения/записи принимают участие все однотипные диски, установленные в массив.

Когда выходит из строя один из дисков, процесс ребилда (перестроения) занимает значительно меньше времени, чем при классическом подходе, когда используются отдельные диски под spare. Здесь как раз сказывается архитектура организации хранения на низком уровне. Массивы 3PAR не выделяют отдельных дисков под spare, они используют зарезервированные чанклеты, которые расположены на всех дисках, то есть при выходе одного диска из строя данные перемещаются со всех однотипных дисков массива на все, а не с многих на один, как в классическом сценарии.

All-flash

Долгое время построение систем хранения данных на базе SSD оставалось оправданно только для бизнес-критичных задач, так как SSD-носители были довольно дорогими и отличались небольшим сроком службы. SSD-диски имели достаточно низкий ресурс на запись/перезапись. Как только производители систем хранения смогли добиться высокого количества циклов перезаписи, стоимость all-flash-систем начала снижаться, а в некоторых случаях оказалась сопоставимой со стоимостью SAS. Стало возможным развертывание бизнес-критичных приложений в виртуальной среде с максимальным быстродействием и минимальным временем отклика.


Сегодня лидеры отрасли предлагают интересные решения с применением SSD-дисков емкостью 7,68 Tбайт и 15,36 Tбайт в одном накопителе в зависимости от форм-фактора.

Рассмотрим особенности работы all-flash систем хранения на примере HP 3PAR 8450. Массивы 3PAR разносят все тома по всем SSD-носителям массива, что при равномерном распределении нагрузки предотвращает износ конкретных дисков. При этом чип ASIC в каждом контроллере исключает запись нулевых блоков. Вместо центрального процессора массива он выполняет операции детектирования нулей, аппаратной поддержки XOR (для подсчета контрольных сумм в RAID 5, RAID 6), дедупликации и другие операции. Эти системы хранения позволяют использовать четыре контроллера в рамках одной системы в режиме Active/Active. Так, каждый из контроллеров может работать с каждым томом, и поэтому нагрузка равномерно распределяется по всем контроллерам. Чтобы избежать проседания производительности при выходе контроллера из строя или при его перезагрузке, кеш на запись зеркалируется между четырьмя контроллерами.

Одна из востребованных функций all-flash-массивов — QoS (Quality of Service), позволяющая гарантированно получать требуемые значения IOPS, latency в рамках виртуальной инфраструктуры.

Массивы 3PAR можно использовать в рамках двух разнесенных площадок, появляется возможность предложить функциональность Peer Persistence (разнесенный отказоустойчивый кластер VMware). В этом решении LUN с дисками виртуальных серверов реплицируется между массивами в разнесенных дата-центрах. К LUN создаются активные и пассивные пути, которые видны хостам ESXi. Реплика основного LUN представлена тем же WWN, что и основной. Поэтому для среды VMware переключение LUN с основного на резервный происходит прозрачно. Применение Peer Persistence позволяет нам автоматизировать процесс переключения между площадками и не требует привлекать дополнительные решения, как, например, VMware Site Recovery Manager.

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


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

«Лучшей практикой» для многих корпоративных заказчиков является применение гибридных систем хранения SSD/HDD. Такое решение позволяет воспользоваться преимуществами обоих типов носителей — большой емкостью HDD и высоким быстродействием SSD в IOPS (количество операций ввода-вывода в секунду), — но при этом остается экономически привлекательным.

В гибридной системе хранения SSD/HDD основная емкость представлена недорогими жесткими дисками, а небольшой пул для «горячих», часто используемых данных — флеш-памятью. В рационально спроектированной гибридной СХД при небольшом количестве накопителей SSD достигается значительное ускорение операций с основным пулом хранения данных.

РЕАЛИЗАЦИЯ ГИБРИДНЫХ СХД

На практике применяются два основных метода ускорения — кэширование данных и их многоуровневое хранение (tiering). В обоих случаях для увеличения производительности ввода-вывода используется концепция «горячих» данных, но в действительности это совершенно разные подходы.

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

При многоуровневом хранении данные соответствующим образом сортируются и помещаются на уровень SSD или HDD (уровней может быть больше двух): «горячие» отправляются на флеш-память, а реже используемые — на жесткие диски.

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

ЧТО ЛУЧШЕ?

Многоуровневое хранение не предполагает избыточности данных, поэтому реализация RAID в этом случае становится более сложной — требуется покупка дополнительных SSD. Сама сортировка данных и распределение их по уровням негативно сказываются на производительности. Такие системы должны управлять данными, которые из «горячих» со временем превращаются в «холодные». Ввиду отсутствия избыточности, часто используемые данные нужно перемещать в основной пул, как только они становятся менее полезными. Эти фоновые процессы потребляют IOPS и сказываются на скорости операций ввода-вывода во время таких перемещений. С наибольшей эффективностью многоуровневое хранение функционирует в тех случаях, когда соответствующие алгоритмы адаптированы к требованиям и задачам заказчика. Для достижения идеальной производительности нужны постоянный мониторинг и подстройка алгоритмов.

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

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

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

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

ПРОБЛЕМА ЗАПИСИ

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

Если в клиентской системе операции записи на SSD можно распределить таким образом, что каждый отдельный блок носителя будет перезаписываться достаточно редко, то в гибридной СХД уровень SSD активно задействуется для хранения «горячих» данных всего дискового пула. При кэшировании и многоуровневом хранении операции с SSD станут очень интенсивными, и преимущества алгоритмов предотвращения износа носителя будут сведены на нет. Это означает, что в обоих случаях (кэширование и многоуровневое хранение) уровень SSD лучше всего задействовать для ускорения операций чтения, а не чтения и записи.

РЕАЛИЗАЦИЯ КЭШИРОВАНИЯ НА SSD

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

Пошаговые действия, выполняемые контроллером при обработке запроса приложения на запись данных
Пошаговые действия, выполняемые контроллером при обработке запроса приложения на запись данных

НАПОЛНЕНИЕ КЭШ-ПАМЯТИ

Кэш, как и основная емкость хранения, разбивается на группы секторов равного размера. Каждая группа называется кэш-блоком, а каждый блок состоит из подблоков. Размер кэш-блока можно настраивать под конкретное приложение, например СУБД или Web-сервер.

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

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

Что происходит с содержимым кэша после его «разогрева»? Если на SSD есть свободное место, кэш продолжает заполняться «горячими» данными. Когда емкость SSD исчерпывается, применяется алгоритм перезаписи наименее используемых данных (Least Recently Used, LRU), то есть на место последних в кэш-памяти записываются новые «горячие» данные.

Если объем «горячих» данных превышает емкость SSD, процент считываемых из кэш-памяти данных уменьшается, соответственно, снижается и производительность. Кроме того, чем меньше емкость SSD (и чем больше объем горячих данных), тем интенсивнее обмен «горячих» данных. В результате SSD будет изнашиваться быстрее.

Специалисты Qsan рекомендуют использовать накопители Intel SSD DC S3500. Так, у SSD емкостью 480 Гбайт наработка на отказ (MTBF) составляет 2 млн ч. Что касается производительности, то типичная задержка у этих накопителей равна 50 мс, максимальная задержка при чтении — 500 мс (99,9% времени), а производительность при произвольном чтении блоками по 4 Кбайт достигает 75 тыс. IOPS, при записи — 11 тыс. IOPS. Это хороший вариант для SSD-кэширования.

КЭШИРОВАНИЕ ПРИ ЧТЕНИИ-ЗАПИСИ

Операция чтения при отсутствии данных в кэш-памяти происходит следующим образом:

  1. Приложение подает запрос на чтение данных.
  2. Данные считываются с HDD.
  3. Запрошенные данные возвращаются приложению.
  4. Выполняется операция наполнения SSD.

Операция чтения при наличии данных в кэш-памяти:

  1. Приложение подает запрос на чтение данных.
  2. Данные считываются с SSD.
  3. Запрошенные данные возвращаются приложению.
  4. При сбое SSD данные считываются с HDD.

Действия приложения при записи данных:

  1. Приложение подает запрос на запись данных.
  2. Данные записываются на HDD.
  3. Приложению возвращается статус операции.
  4. Выполняется операция наполнения кэш-памяти на SSD.

НАСТРОЙКА КЭШ-ПАМЯТИ SSD

Чтобы приложение использовало кэш-память на SSD максимально эффективно, ее можно настроить. Основные параметры — размер блока кэш-памяти, пороговые значения наполнения при чтении и при записи.

Размер блока. Большой размер блока кэш-памяти подходит для приложений, часто обращающихся к соседним (по физическому расположению) данным. Это называется высокой локальностью обращений. Увеличение размера блока также ускоряет наполнение кэш-памяти на SSD — ускоряется «разогрев» кэша, после которого приложения с высокой локальностью обращений будут демонстрировать весьма высокую производительность. Однако увеличение размера блока влечет за собой генерирование избыточного трафика ввода-вывода и увеличение времени отклика, особенно для отсутствующих в кэше данных.

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

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

Как можно видеть, увеличение или уменьшение каждого параметра имеет свои положительные и отрицательные последствия. Очень важно понимать «локальность» приложения. Кроме того, полезно протестировать систему на реальных нагрузках и посмотреть, при каких параметрах она показывает лучшие результаты.

Рост производительности (в IOPS) в зависимости от времени «прогрева» кэша (в часах)
Рост производительности (в IOPS) в зависимости от времени «прогрева» кэша (в часах)

ПРИМЕР КОНФИГУРАЦИИ КЭША НА БАЗЕ SSD

В тесте моделировалась типовая ситуация ввода-вывода (произвольное чтение 90% + запись 10%) для определения выигрыша, который дает использование SSD-кэша. При тестировании применялась система AegisSAN Q500 в следующей конфигурации:

  • HDD: Seagate Constellation ES, ST1000NM0011, 1 Тбайт, SATA 6 Гбит/с (x8);
  • SSD: Intel SSD DC 3500, SSDSC2BB480G4, 480 Гбайт, SATA 6 Гбит/с (x5);
  • RAID-группа: RAID 5;
  • тип ввода-вывода: Database Service (8 Кбайт);
  • режим ввода-вывода: блоки по 8 Кбайт.

Время «разогрева» вычисляется по следующей формуле:

T = (C × P) / (I × S × D),

где T — время «разогрева», I — средняя производительность в IOPS одного HDD при произвольном чтении, S — размер блока ввода-вывода, D — число HDD, C — совокупная емкость всех SSD, P — пороговое значение наполнения кэш-памяти при чтении или записи. На практике «разогрев» кэша может занять больше времени.

Для данной конфигурации оно составит:

Т = (2 Тбайт × 2) / (244 × 8 Кбайт × 8) = 275 036,33 сек = 76,40 ч.

Без кэширования на SSD средняя производительность составила 962 IOPS. При включении кэширования она выросла до 1942 IOPS, то есть улучшение после «разогрева» кэша оказалось двукратным — 102%. Согласно расчетной формуле время разогрева равно 76,4 ч, в тесте после 75 ч производительность в IOPS достигла максимальной величины и оставалась после этого стабильной.

После «разогрева» кэша производительность операций чтения-записи удваивается
После «разогрева» кэша производительность операций чтения-записи удваивается

ЗАКЛЮЧЕНИЕ

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

Бартек Митник — директор по продажам компании Qsan Technology в регионе EMEA.

Читайте также: