Это связано с тем, что сам принцип функционирования жесткого диска предполагает невысокую скорость: работа считывающих механических головок имеет определенное ограничение, преодолеть которое невозможно. Радикально изменить ситуацию удалось лишь с помощью твердотельных дисков (SSD), обеспечивших значительное увеличение производительности (в отдельных случаях на порядок). Поэтому нет ничего удивительного в том, что хостинг на SSD в течение короткого времени получили широкое распространение в оснащении серверов, в особенности с высокой нагрузкой.
Однако вскоре после повсеместного распространения твердотельных накопителей обнаружились дополнительные сложности. Прежде всего, дороговизна SSD значительно увеличивала суммарную стоимость аренды серверов для клиентов, поэтому у них появилась возможность выбирать между низкопроизводительным и дешевым VPS с жестким диском и высокопроизводительным, но дорогостоящим сервером с SSD. Помимо того, в дальнейшем были выявлены проблемы с продолжительностью эксплуатации – у твердотельного диска она меньше по сравнению с магнитным. По этой причине для предотвращения потери информации необходимо чаще создавать резервные копии и производить замену изношенной техники.
Комбинация SSD и HDD
Довольно оригинальным выходом из ситуации оказалось комбинирование твердотельных и магнитных дисков в единую систему, в которой для хранения информации используются вместительные, но низкопроизводительные HDD, а кэширование запросов осуществляется при помощи менее вместительных, но высокопроизводительных SSD. Основное достоинство такой системы заключается в оптимальном использовании сильных сторон обеих технологий (вместительность HDD и быстрота SSD) без значительного снижения производительности. Однако при выборе данного варианта следует учитывать, что в потери в быстроте неизбежны, так как сервер на SSD функционирует с более высокой скоростью.
Сопоставление быстродействия SSD, HDD и кэширования на SSD
В коммерческих предложениях содержатся утверждения, согласно которым аренда сервера с кэшированием на SSD позволяет обеспечить ту же самую скорость при заметно более доступной стоимости и со значительным свободным местом на диске. В действительности здесь все определяется способом использования сервера. Для проекта со значительным числом запросов быстрота функционирования будет наиболее большой на чистом SSD, комбинация SSD и HDD обеспечивает гораздо меньшею скорость, а магнитные диски будут функционировать очень медленно. Если же на таком оборудовании размещать преимущественно информацию, запросы к которой будут сравнительно нечастыми, то быстродействие решения с кэшированием на SSD окажется близким к скорости функционирования чисто SSD.
Особенности кэширования на SSD в операционной системе Linux
Популярность кэширования на SSD в настоящее время очень велика. Это обусловлено наличием большого числа программ, обеспечивающих возможность его реализации. В связи с тем, что большая часть серверов функционирует под управлением операционной системы Linux, ПО пишется под нее. Наибольшее распространение получила абсолютно бесплатная программа EnhanceIO. Ее преимущество очевидно: возможность включения и отключения кэширования без приостановки системы. Больше того, существует возможность динамичного назначения и переназначения SSD кэшем не просто к отдельному HDD, но и к его разделу. Помимо этого, EnhanceIO уже содержится в ядре, так что никаких сложностей с инсталляцией и обновлением ПО не возникает.
Выбор оптимального решения
При принятии решении о выборе между кэшированием на SSD и полноценным SSD следует руководствоваться, в первую очередь, способом его использования. Для размещения архива, БД, статичного вебсайта с незначительным числом запросов, VPN, хранилища резервных копий и т. п., где часто задействуется только малая доля информации, которая и будет оставаться в кэше, прекрасно подойдет комбинация HDD с SSD.
Если же необходимо разместить веб-приложение, динамичный высокопосещаемый вебсайт, онлайн-офис, то кэш не сможет справиться со значительным объемом данных, и частота провалов в скорости функционирования оборудования будет высокой. В таких случаях обойтись без использования чистого SSD невозможно. Самыми требовательными к быстроте обмена информацией являются билд-серверы, управленческий учет (например, 1С), игровые серверы и т. п. – то есть все проекты, в которых осуществляется передача значительного объема данных и одновременно производится обработка большого числа запросов.