Как я могу ускорить запросы SQL Server на Amazon EC2?

Я включил Стандартную аутентификацию и отключил Анонимную аутентификацию. Я создал пользователя с чтением и полномочиями записи на папке. Учетные данные созданного пользователя - то, что я использую для просмотра веб-сайта.

2
задан 12 July 2011 в 17:56
3 ответа

Текущий ход мыслей (по состоянию на июль 2011) - то, что лучшая производительность на EC2 путем СОВЕРШЕНИЯ НАБЕГА на эфемерные диски (чем больше экземпляр, тем больше существует их). Необходимо быть уверены, что у Вас есть резервные копии, если Вы принимаете решение сделать это, поскольку любой вид отказа хоста означает, что Ваши данные могут и исчезать.

Как Tom предполагает, Вы можете RAID объемы EBS: производительность не так хороша, как необходимо выйти в сеть, но Вы уменьшите Ваш искать, поскольку Вы увеличиваете число шпинделей, которые могут искать параллельно. Вот некоторые хорошие сравнительные тесты.

Существуют другие вещи включить в, как размеры экземпляра, вероятно, для получения Вас наименее состязательное, и размеры объема EBS, которые максимизируют Вашу производительность. Обязательно "нагрейте" Ваши объемы перед использованием их также, поскольку существует штраф первой записи на эфемерных дисках и сначала считанный штраф на EBS.

Наконец, Вы не получаете намного больше эксперта по SQL-серверу, чем Brent Ozar, таким образом прочитайте и поймите его сообщение по теме. Это привело к разговору на форуме AWS, который говорит об относительных метриках производительности, для которых можно оптимизировать.

2
ответ дан 3 December 2019 в 10:17

Возьмите целый набор объемов EBS и свяжите их вместе в массив RAID10. Затем поместите свои данные по тому массиву, и теоретически необходимо получить лучше производительность.

Работы над Linux. Я понятия не имею, как Вы сделали бы это на окнах, но это - теория.

1
ответ дан 3 December 2019 в 10:17

Я рекомендую, как с любой проблемой производительности, чтобы измерить и определить Ваше узкое место. Используйте хорошо доказанную методологию, как Waits и Очереди. Только после того, как Вы определили, что причина проблемы может Вы предлагать и тестировать решения. Кажется настолько очевидным все же, что столь немногие делают это...

Совершение набега на Ваш EBS или эфемерные объемы является решением, если и только если проблема определяется, чтобы быть вызванной высоким IO, который не может быть адресами никакой другой путь. Так как Вы развертываетесь на EC2, Ваше решение должно быть разработано для помещений в экземпляр EC2 w/o проливание пула буферов (w/o бывший должный читать из диска), и единственный IO должен быть начальным, нагреваются, сброс обновлений в контрольной точке и, конечно, сброс данных журнала на диск. При нахождении, что Вам нужно больше IO, чем это затем, Ваш лучший подход должен проанализировать структуру базы данных и код приложения и сделать, чтобы они вписались в Ваш целевой узел, Вы получите намного больше пробега из этого, чем что-либо еще, что можно сделать. Что делает это означает, точно, снова, абсолютно зависит от Вашего приложения и Ваших результатов расследования.

1
ответ дан 3 December 2019 в 10:17

Теги

Похожие вопросы