Я хочу купить SSD для компьютера с SQL Server, какие тесты мне следует сравнивать? Высокая / низкая глубина очереди? Скорость случайной / последовательной передачи? IOPS?
Вам нужны контрольные показатели задержки ввода-вывода для следующих рабочих нагрузок:
Вас также может заинтересовать пропускная способность (МБ / с) этих рабочих нагрузок:
При всех операциях записи имейте в виду, что кэширование в энергозависимую память до того, как ввод-вывод попадет на диск, может сделать МБ / с больше, чем есть на самом деле. SSD-накопители так же хороши как при произвольном вводе-выводе, так и при последовательном вводе-выводе.
IOPS довольно много.
Глубина очереди не имеет значения - в основном некоторые системы более высокого уровня работают лучше с большим количеством материалов в очереди. Это не даст вам никакой разумной информации без контекста.
Скорость передачи зависит от IOPS - кто-то должен сначала прочитать / записать данные.
В конце концов, произвольный ввод-вывод всегда сокращается до IOPS. При необходимости прямой перевод IOPS на скорость передачи. Обратите внимание, что SQL Server ВСЕГДА выполняет 64 КБ операций ввода-вывода или в несколько раз больше для предприятия. Значит, 4кб и т.д. не актуально. Отсюда вы можете получить всю остальную информацию. Время отклика слишком велико, стоит в очереди - доступно недостаточно операций ввода-вывода в секунду.
На TechNet есть хорошая статья, которая больше не поддерживается, но, тем не менее, дает вам понимание того, как IOPS и насыщенность диска могут повлиять на производительность ввода-вывода диска SQL Server.
Статья о передовых методах работы с SQL Server (TechNet)
Описание: Система ввода-вывода важна для производительности SQL Server. При настройке нового сервера для SQL Server или при добавлении или изменении конфигурации диска существующей системы рекомендуется определить емкость подсистемы ввода-вывода до развертывания SQL Server. В этом техническом документе обсуждается проверка и определение емкости подсистемы ввода-вывода. Для выполнения этого типа тестирования доступен ряд инструментов. В этом техническом документе основное внимание уделяется средству SQLIO.exe, но также сравниваются все доступные инструменты. В нем также рассматриваются основные рекомендации по настройке ввода-вывода для SQL Server 2005.
Далее в статье объясняется, что SQL Server будет читать кратными 64 КБ, что соответствует Экстенту (который сам по себе составляет 8 x 8 страниц; страница = 8 КБ). Понимание страниц и экстентов
SQL Server будет читать 64 КБ данных (поэтому вы должны форматировать свои диски с размером блока 64 КБ) и, в зависимости от характера запроса, кратно этому: 64 КБ, 128 КБ, 256 КБ, 512 КБ и даже 1024 КБ ( Enterprise Edition).
Вы могли бы рассмотреть возможность запуска инструмента для тестирования различных шаблонов ввода-вывода (чтение / запись; случайный / последовательный; 8 кб - 1024 кб) в зависимости от версии вашего SQL Server, а затем сравнение результатов жесткого диска с твердотельным накопителем.
Существует старая рекомендация, согласно которой задержка записи для файлов журнала транзакций должна составлять от 1 до 5 мс (рекомендуется 1 мс), а задержка чтения для файлов данных должна составлять от 5 до 20 мс (рекомендуется 10 мс).
Измерение задержки диска. Чем ниже значения, тем лучше, но они могут варьироваться и зависят от размера и характера выполняемых операций ввода-вывода. Цифры также различаются в зависимости от конфигурации хранилища (размер / использование кэша может сильно повлиять на это).
В хорошо настроенных подсистемах ввода-вывода идеальными значениями были бы:
• 1–5 мс для журнала (в идеале 1 мс для массивов с кешем)
• 4–20 мс для данных в системах OLTP (в идеале 10 мс или меньше)
• 30 мс или меньше для типа DSS (система поддержки принятия решений). Задержки здесь могут значительно варьироваться в зависимости от количества одновременных запросов, отправляемых к системе. Следует исследовать устойчивые значения выше указанного, когда общая пропускная способность меньше ожидаемой.Рассмотрите их в сочетании с тем, что является нормальным для вашей конкретной системы.
Обязательно отслеживайте задержки диска для анализа тенденций. Количество операций ввода-вывода и задержки, характерные для файлов данных SQL Server, можно узнать с помощью динамического административного представления sys.dm_io_virtual_file_stats в SQL Server 2005.
В статье перечислены различные счетчики для мониторинга, которые предоставят вам базовый уровень, по которому вы затем сможете определить прирост производительности при замене дисков с HDD на SSD.
Вам нужна комбинация:
Запланируйте мониторинг этих значений на вашей старой системе жестких дисков, а затем сравните их со значениями на вашей системе SSD и сравните значения.
Краткий ответ: «Это зависит от обстоятельств».
К сожалению, не зная своих шаблонов использования, практически невозможно предложить «идеальное» решение.
Что нужно иметь в виду
Разделите свои данные, журналы и O / S. Вы можете разместить свои данные и операционную систему на вращающемся диске и поместить только журналы на свой SSD, это даст вам импульс по более низкой цене. Вы действительно должны сделать это в любом случае, даже если вы используете вращающиеся диски, разделите все части на их собственные тома, RAID 10 каждый, если вы можете себе это позволить.
Возможно, вам будет лучше, если вы добавите оперативную память в свое решение, если вы можете загрузить всю свою базу данных в оперативную память, тогда это будет намного быстрее, чем когда-либо мог бы быть SSD или жесткий диск. Вы можете сделать это несколькими способами.
Если вы все же идете по пути SSD, убедитесь, что ваши резервные копии в порядке. В любом случае лучше сделать это :)