Компания Sun Microsystems пополнила семейство продуктов Open Storage, основанных на использовании стандартных компонентов, ОС OpenSolaris и входящей в ее состав файловой системы Sun Zettabyte File System (ZFS). Особенностью представленной в середине ноября новой серии систем хранения Sun Storage 7000 является применение твердотельных дисков (SSD), причем в отличие от большинства своих конкурентов Sun не ограничилась заявлением о поддержке SSD, но и изложила свой взгляд на перспективы применения этого типа накопителей в системах корпоративного класса.
Новый уровень хранения
Очевидно, что нынешний уровень цен на SSD и ограниченный цикл перезаписи (см. врезку “Плюсы и минусы твердотельной памяти”) не позволяют построить на их основе дисковые массивы, аналогичные по своим возможностям традиционным системам хранения на базе жестких дисков. Sun в своих Storage 7000 использует твердотельные диски для создания промежуточного уровня хранения между оперативной памятью DRAM, у которой стоимость одного гигабайта и скорость выше, чем у SSD, и жесткими дисками, где размещается основной объем данных. Твердотельные диски выполняют роль кэша для чтения, т. е. данные, наиболее востребованные приложениями, переносятся с массива жестких дисков на несколько дисков SSD, и в результате время обращения к ним существенно сокращается (любопытно отметить, что лет десять назад для ускорения отклика применялась иерархическая модель хранения, где самым быстрым и дорогим носителем были жесткие диски, редко запрашиваемые данные хранились на магнитных лентах, а роль промежуточного уровня хранения выполняли магнитооптические диски, ныне практически вышедшие из употребления). Благодаря повышению скорости чтения-записи за счет твердотельного кэша отпадает необходимость в использовании скоростных жестких дисков класса Enterprise и вместо них можно применять более медленные однотерабайтные винчестеры SATA 7200 об/мин, что позволяет существенно снизить стоимость накопителей и электропотребление и при этом повысить плотность размещения емкости.
Основная сложность при реализации такой многоуровневой модели состоит в том, что данные должны автоматически и прозрачно для приложений мигрировать в зависимости от изменения частоты обращения к ним между твердотельными и жесткими дисками. Этот механизм в Storage 7000 реализован на основе технологии гибридных пулов хранения (Hybrid Storage Pools), которая недавно была разработана для файловой системы ZFS и выпущена вместе с OpenSolaris версии 2008.05. Диски обоих типов объединяются в виртуальный пул, так что приложение “видит” его как единый ресурс емкости. ZFS помещает на диски SSD те данные, которые запрашиваются чаще всего, и те, к которым были обращения за последнее время. Диски SSD, используемые для кэширования чтения, в терминологии Sun называются read optimized. Кроме них в Storage 7000 применяются диски, оптимизированные для записи (write optimized), где хранятся журналы ZFS Intent Log, гарантирующие отсутствие ошибок при записи на жесткие диски и помогающие сократить задержки за счет реализации асинхронной записи в фоновом режиме.
Линейка Sun Storage 7000 состоит из трех моделей, две из которых оборудуются твердотельными дисками Intel Extreme SATA Solid-State Drive (X25-E) и жесткими дисками SATA II большой емкости. Старшая модель Storage 7410 (ее стоимость в США начинается от 57,5 тыс. долл.) при подключении внешних дисковых полок масштабируется до объемов, превышающих 500 Тб, и поддерживает использование обоих типов твердотельных дисков (можно устанавливать до восьми write optimized и до шести read optimized). Для повышения отказоустойчивости эту систему можно использовать в кластерной конфигурации active — active (от 90 тыс. долл.) с дисками суммарной емкостью 12 Тб. Она рассчитана на централизованное хранение файлов в крупных компаниях.
Выполненная в стоечном корпусе высотой 4U модель Storage 7210 (начальная цена 35 тыс. долл.) в максимальной конфигурации обеспечивает хранение 48 Тб и поддерживает только один оптимизированный для записи твердотельный диск емкостью 36 Гб. Наконец, предназначенная для малого и среднего бизнеса двухъюнитовая младшая модель Storage 7110 стоимостью от 11 тыс. долл., в которой не предусмотрено использование SSD, оборудуется шестнадцатью 2,5-дюймовыми дисками SAS с частотой вращения 10 тыс. об/мин общей емкостью до 2 Тб. Все модели Sun Storage 7000 оснащены четырехъядерными процессорами AMD Opteron (в модели 7410 их четыре, в 7210 — два и в 7110 — один) и четырьмя портами Gigabit Ethernet.
NetApp представляет свой подход к использованию SSD
Хотя компания NetApp начнет оборудовать свои системы хранения твердотельными дисками только в следующем году, на ее сайте начиная с октября размещено техническое описание возможных сценариев применения SSD. Как и Sun, этот производитель систем хранения считает основной сферой применения твердотельных дисков кэширование операций чтения, причем для реализации перемещения данных между твердотельными и жесткими дисками он собирается использовать функционал FlexCache своей специализированной ОС Data ONTAP. Правда, в NetApp полагают, что твердотельную память не имеет смысла использовать для тех приложений, которые выполняют последовательное чтение больших блоков данных. Дело в том, что при обслуживании таких приложений практически исчезает задержка, связанная с необходимостью перемещения головки жесткого диска, поэтому при замене жестких дисков на твердотельные скорость отклика останется на прежнем уровне.
Компания планирует выпустить модули — ускорители чтения Performance Acceleratin Module (PAM) на базе твердотельных дисков и устанавливать их в PCI-слоты своих систем хранения FAS, что сократит задержки при выборочном чтении более чем в десять раз (с лета нынешнего года она поставляет PAM на базе памяти типа DRAM, а новые PAM на базе SSD, как обещает NetApp, обеспечат значительное увеличение объема кэша чтения, что позволит размещать в нем все рабочие данные таких “тяжелых” приложений, как СУБД). Кроме того, фирма ведет разработку специализированного ПО Predictive Cache Statistics (PCS), которое поможет определить, выиграет ли конкретное приложение от кэширования чтения и — в случае положительного ответа — какой объем кэша будет оптимальным.
Компания также считает перспективным применение специальных приставок кэширования, которые будут устанавливаться между массивами жестких дисков и клиентскими компьютерами.
Плюсы и минусы твердотельной памяти
Главное отличие SSD от традиционных жестких дисков (HDD) — это отсутствие движущихся компонентов: в них нет вращающихся пластин и головки чтения-записи, которая постоянно перемещается, поскольку все операции чтения и записи происходят внутри микросхем. В результате твердотельные диски на несколько порядков превосходят по быстродействию HDD — например, если время доступа у жестких дисков составляет несколько миллисекунд, то у SSD этот показатель не превышает 100 мкс. Твердотельные диски крайне выгодны с точки зрения скорости выборочного ввода-вывода, которая измеряется в единицах IOPS (input/output operations per second — число операций ввода-вывода в секунду), поскольку один SSD способен обеспечить до десятков тысяч IOPS, в то время как у самых быстрых на сегодняшний день жестких дисков с частотой вращения 15 тыс. об/мин число IOPS не превышает четырех сотен из-за того, что при выборочном обращении к записанным на пластине данным необходимо каждый раз менять положение головки чтения-записи.
Отсутствие механических компонентов, из-за которых жесткие диски чаще всего выходят из строя, также положительно влияет на надежность твердотельных дисков: как утверждают их производители, показатель средней наработки на отказ (MTBF) у этих изделий равен около 2 млн. ч, в то время как у самых надежных жестких дисков класса Enterprise, рассчитанных на работу в круглосуточном режиме, MTBF составляет примерно 1,2 млн. ч. Еще одно важное преимущество SSD, также вытекающее из отсутствия механических компонентов, — это более низкое энергопотребление. Как утверждают эксперты, в холостом режиме твердотельные диски потребляют всего лишь 5% энергии, необходимой скоростным жестким дискам, а при операциях чтения-записи — 15%.
Однако твердотельные диски намного дороже HDD. В расчете на один гигабайт емкости SSD сейчас стоят порядка 10—35 долл., в то время как для самых скоростных винчестеров класса Enterprise (15 тыс. об/мин) этот показатель не превосходит 3 долл., а для дисков SATA большой емкости составляет около 0,5 долл. В то же время снижение цен на SSD идет намного быстрее, чем на жесткие диски, и этот разрыв в стоимости постепенно сокращается. Кроме того, надо учитывать, что приложениям с интенсивным вводом-выводом требуются высокие показатели IOPS (в десятки тысяч), и для обеспечения этого уровня необходимо десятки или даже сотни высокоскоростных жестких дисков, которые могут быть заполнены данными менее чем наполовину. Если же вместо такого большого массива жестких дисков использовать несколько SSD, то по стоимости это решение будет существенно выгоднее (не говоря уже о таких преимуществах, как уменьшение на порядок числа носителей, что означает резкое сокращение потребляемой электроэнергии и места, необходимого для системы хранения).
Другой серьезный недостаток SSD — это ограниченный цикл перезаписи. Одноуровневая флэш-память NAND SLC, применяемая в современных твердотельных дисках корпоративного класса, способна выдержать не более 100 тыс. операций чтения (у используемых в USB-накопителях более дешевой многоуровневой памяти NAND MLC максимальный цикл перезаписи — всего 5 тыс. операций и примерно в четыре раза меньше скорость записи). Некоторые производители твердотельных дисков для повышения надежности применяют в своих продуктах механизм wear leaving, равномерно распределяющий операции записи по всем ячейкам диска и таким образом обеспечивающий их равномерный износ; с помощью этого же механизма отмечаются непригодные для записи ячейки.
Кроме того, при перезаписи данных в ячейку флэш-памяти примерно полторы миллисекунды уходит на стирание записанных в нее старых данных, что также уменьшает скорость записи. Наконец, при последовательной записи больших блоков данных жесткие диски могут работать даже быстрее, чем твердотельные, поскольку им не надо тратить время на перемещение головок чтения-записи.