Я пытаюсь найти подходящий SSD-накопитель для своего сервера базы данных (postgres на debian 7 amd-64) и обнаружил, что для некоторых SSD-накопителей скорость чтения указывается в МБ / с, а скорость записи - в IOPS. Чтобы усложнить задачу, иногда последовательный доступ осуществляется в МБ / с, а произвольный доступ - в IOPS.
Как эти устройства сравниваются друг с другом и с жесткими дисками (которые используют старые добрые МБ / с)?
МБ / с указывает, сколько мегабайт в секунду диск может обрабатывать как пропускную способность. IOPS указывает, сколько отдельных операций в секунду может быть обработано.
Последовательный доступ означает, например, что читается один большой файл, произвольный доступ означает, что вы читаете отдельные части разных файлов.
Если вы ищете диск для использования базы данных, вы должны искать:
SSD корпоративного, бизнес-класса или серверного класса типа SLC (лучший, но самый дорогой) или MLC. Старайтесь избегать SSD-диска типа TLC.
По крайней мере, два из них, чтобы сформировать RAID и предотвратить потерю данных. Лучшая стратегия RAID для баз данных - это RAID10 из того количества дисков, которое вы можете себе позволить. Если у вас всего два диска, используйте RAID1 (зеркалирование). Избегайте RAID5 или RAID6 для хранения базы данных, если вам нужна производительность. SSD имеют ограниченные циклы записи, и в конце циклов записи SSD просто мгновенно выходит из строя. Затем вы хотите иметь зеркальную копию ваших данных, чтобы как можно скорее заменить отказавший SSD.
В идеале используйте RAID-контроллер с резервным аккумулятором и ОЗУ для кэширования даже записи.
Высокий IOPS. База данных читает и записывает довольно много мелких транзакций. Вы выиграете больше от IOPS, чем от высокой пропускной способности.
Пропускная способность. Это наименее важный момент. Вы получаете выгоду от высокой пропускной способности только при резервном копировании или восстановлении.
Обновленный ответ на основе комментариев:
Программный RAID может быть решением, если ваше хранилище находится на поддерживаемых Oracle Solaris, Illumos или чем-то подобном. Тогда аппаратный RAID-контроллер не нужен, поскольку ZFS довольно хорошо справляется с высокими нагрузками на базу данных IOPS без аппаратного RAID-контроллера. Аппаратный RAID-контроллер может даже замедлить вашу настройку.
Я абсолютно не рекомендую использовать программный RAID для Linux (mdraid). Он хорош для высокой пропускной способности, но имеет очень низкую скорость ввода-вывода в секунду. Это хорошо для файлового сервера, но не для сервера базы данных.
Как правило, мегабайты в секунду являются показателем пропускной способности диска, тогда как IOPS представляют собой операции ввода-вывода в секунду, способ детализации производительности произвольного ввода-вывода диска.
Оба измерения, представленные производителями, чреваты неточностями. Пропускная способность будет ограничена топологией SATA / SAS, объединительной платой дисков (если она есть) и RAID или контроллером хранилища. IOPS обычно сообщается в идеальных условиях с наборами данных, которые подходят для тестов.
Существуют и другие атрибуты, которые влияют на профиль производительности твердотельных накопителей, такие как задержка, выносливость, уровень избыточного выделения ресурсов, тип интерфейса, емкость, кэширование и защита от записи.
Видеть: Так же ли надежны SSD-диски, как механические (2013 г.)?
Я спросил, не могли бы вы предоставить более подробную информацию о приложении для твердотельных накопителей и о том, какие типы серверного оборудования и операционных систем используются. Эта информация очень поможет, поскольку вы действительно не можете просто установите любой SSD на сервере. Выбор устройства также будет определяться аппаратным обеспечением сервера и его совместимостью.