Быстрая SSD против RAM на серверах
За гигабайт цены на быстрые твердотельные накопители (например, Intel X25-E) приближаются к ценам высокопроизводительной оперативной памяти. Итак, какие дополнительные преимущества дает вам SSD? Каковы конкретные причины, почему вы покупаете SSD, вместо того, чтобы просто размещать больше оперативной памяти на сервере, чтобы использовать его в качестве кеша жесткого диска или даже создавать RAM-диск?
РЕДАКТИРОВАТЬ: конечно, я знаю, что SSD являются постоянными. Но так же и данные в кеше диска. Чтение из ОЗУ должно быть намного быстрее, чем чтение из SSD. Кроме того, SSD имеет медленное время записи, поэтому никаких преимуществ перед HDD нет. Особенно для последовательных записей.
EDIT2: объем оперативной памяти, который вы можете поставить, не так ограничен. С введением DDR3 он больше не кратен 2, а кратен 3. Стандартные SOHO MoBos имеют 6 слотов, в то время как серверные платы имеют 12 или даже впечатляющие 18 слотов, поддерживая всего 144 ГБ ОЗУ. Даже если вы используете более экономичные 4 ГБ карты памяти, у вас все равно может быть 72 ГБ.
9 ответов
Итак, какие дополнительные преимущества дает вам SSD?
- Постоянство (не теряйте данные при отключении электроэнергии)
- Стоимость по-прежнему ниже и со временем очень быстро падает по сравнению с оперативной памятью.
- Нет верхнего предела размера - вы увидите SSD на 1 ТБ, прежде чем увидите COTS-сервер, который принимает 1 ТБ ОЗУ
- Общий интерфейс - вы можете перенести SSD на любой другой компьютер и подключить его, или даже мост USB<->SATA. Невозможно сделать это с оперативной памятью без проверки спецификаций MB, удаления существующей памяти, если слоты заполнены, и т. Д.
- Можно добавить несколько SSD на один компьютер, тогда как объем оперативной памяти ограничен.
Зачем покупать и SSD, а не просто помещать больше оперативной памяти на сервер?
Когда мне нужно быстрое постоянное хранилище, я использую SSD.
Когда мне нужно быстрое энергозависимое хранилище, я использую оперативную память.
Если происходит сбой ИБП, сбой материнской платы или сбой программного обеспечения ОС, вы теряете все в оперативной памяти.
Там просто нет замены для постоянного хранения.
Кроме того, хотя вы заявляете, что стоимость аналогична, стоимость высокопроизводительных твердотельных накопителей в ближайшие два года упадет, как скала.
Прямо сейчас это может иметь смысл, если у вас есть данные только для чтения или индексы, которые вы не возражаете против восстановления, полностью хранящиеся в оперативной памяти.
В тех случаях, когда стоимость и риск невелики, вы можете даже выполнить более агрессивное кэширование диска на более медленном жестком диске.
Но, в конце концов, если вам нужна постоянная память и производительность, вы либо покупаете ОБА медленный жесткий диск и быструю оперативную память, либо покупаете высокопроизводительный SSD.
В целом SSD будет дешевле, чем жесткий диск и оперативная память вместе.
Но, во всяком случае, твердотельные накопители по-прежнему нишевые предметы. Вы не используете SSD, если у вас нет особых потребностей.
-Адам
Косвенно связаны - рассмотрим технологию Fusion-io ioDRIVE - для определенных приложений они находка.
Плюсы - быстрее, чем у SSD (как для чтения, так и для записи), постоянство, большая емкость (ish), доступные блейд-версии, дешевле на ГБ, чем ОЗУ, но почти так же быстро. Минусы - медленнее, чем RAM, дороже на ГБ, чем SSD.
Если у вас было приложение, которое должно было написать достаточно много, для большого набора данных, но иметь ОЧЕНЬ быстрый доступ, в идеале случайный, то я думаю, что у них действительно есть место. Мы собираемся использовать их с Zeus ZXTM L4-7-LBs/ веб-кешами.
Предсказуемость и гибкость.
Во-первых, добавление большего объема оперативной памяти в существующую систему значительно повышает производительность в более низких диапазонах, но преимущества быстро уменьшаются, когда вы попадаете в пространство, где операционная система не очень эффективно использует дополнительную оперативную память. В какой-то момент ОС действительно будет трудно предсказать, какие сектора будут перечитаны с диска. (он достиг случайности для этих секторов)
Предсказуемость: если вы хотите, чтобы каждая запись в вашей базе данных была доступна с высокой скоростью, то размещение всей базы данных на высокоскоростных носителях, безусловно, позволяет это сделать.
Есть и другие способы достижения этого (ОЗУ, специальные базы данных), но выполнение этих действий открывает вам другие проблемы. (сбой питания, будучи менее стандартным означает, что в целом меньше проверено и т. д.)
Гибкость SSD проста: большинство материнских плат не поддерживают добавление оперативной памяти на лету.
У меня есть один из SSD-дисков FusionIO, общий доступ к которому осуществляется через NFS на 10GbE из системы Red Hat в кластер ESX. Он работает быстро (>500 МБ / с при копировании файлов размером 100 ГБ), но я обнаружил, что у него есть ограничение - мои приложения.
В настоящее время у меня есть скрипт сборки, работающий на виртуальной машине, который делает около 250 Гбайт ввода-вывода для каждой сборки. Раньше бегало 6-8 часов, сейчас 3 часа. Сейчас это большое улучшение, но это не в 10 раз быстрее, чем я надеялся получить. Анализируя сценарий, я обнаружил, что узким местом является алгоритм хеширования, который анализирует файлы сборки для целей отслеживания процесса. Если бы я поменял алгоритм, я мог бы получить 3-часовую сборку на обычных жестких дисках.
Мораль этой истории? Посмотрите сначала на ваш процесс, он может выиграть больше от улучшений кода, чем от аппаратных улучшений.
Для решения X12-E объемом 512 ГБ потребуется 8 разъемов SATA и около 6 800 долларов США.
Решение с 512 ГБ ОЗУ требует как минимум 50 000 долларов США и много изобретательности.
Макс вашей оперативной памяти для быстрой работы памяти. Перейти с быстрым SSD для постоянного хранения. Оптимизация вашего программного обеспечения для использования меньшего количества оперативной памяти все еще стоит того, как только вы достигнете высоких показателей.
Обратите внимание, что вы можете подключить 80 ГБ к любому серверу, но 80 ГБ ОЗУ проблематичны - вам понадобятся редкие и дорогие 8-ГБ флешки и плата с более чем 8 слотами.
Не говоря уже о том, что вы можете установить 160 ГБ в один миг...
Правда, SSD против RAM не дает никаких преимуществ. Если вы не можете обновить свой сервер до большего объема оперативной памяти.
Вы провели математику, сравнивая скорости доступа к оперативной памяти, твердотельным накопителям и дискам?
Если сравнить доступ к чему-либо в ОЗУ (ОЗУ 1033 МГц) с извлечением этого с диска (время поиска 8 мс), то ОЗУ будет примерно в 10 миллионов раз быстрее.
Теперь замените диск на SSD. Anandtech дает случайную задержку чтения 0,22 мс для Intel X25-M. Это в 36 раз быстрее, чем диск. Давайте будем щедрыми и назовем это в 100 раз быстрее (и моя умственная арифметика тоже упрощается). Это делает RAM в 100000 раз быстрее, чем SSD.
Каковы конкретные причины, почему вы покупаете SSD, вместо того, чтобы просто размещать больше оперативной памяти на сервере, чтобы использовать его в качестве кеша жесткого диска или даже создавать RAM-диск?
Если вы можете кешировать что-то в оперативной памяти, то это путь. В противном случае использование SSD для кэширования данных на диске может дать вам некоторые преимущества. Все зависит от объема данных, нуждающихся в кэшировании, от объема ОЗУ и / или SSD, доступных для кэширования.
SSD не теряют свои данные, когда вы их отключаете - это очевидно, но важно.