Назад | Перейти на главную страницу

SQL Server 2005: совместное использование процессоров в нескольких распределенных экземплярах

У меня есть два экземпляра SQL Server 2005 Standard Edition, работающих на двух отдельных выделенных серверах (назовем их DB1 и DB2). В настоящий момент DB1 очень занят, а DB2 в основном простаивает. Можно ли настроить экземпляр, работающий на DB1, для использования процессора в DB2?

Например, я подключаюсь к DB1 и выполняю «sp-heavy-going», и я хочу, чтобы DB1 обработал этот запрос с помощью процессора DB2. Как лучше всего этого добиться?

Краткий ответ: нет. Длинный ответ - да, вроде того. Если вы потратите массу времени на то, чтобы убедиться, что ваша база данных и приложение настроены для этого.

Если бы вы разместили одну и ту же базу данных на обоих серверах и использовали репликацию SQL, чтобы обеспечить синхронизацию баз данных между ними, тогда вы могли бы поставить балансировщик нагрузки перед SQL-серверами и подключить клиентов к балансировщику нагрузки вместо единый SQL Server. Однако это создает собственный набор проблем, которые необходимо решить в первую очередь.

Лучшим вариантом может быть рассмотрение объединения вашей базы данных, чтобы половина данных хранилась на каждом сервере, а данные запрашивались с сервера, на котором хранятся эти данные. Однако это также чрезвычайно сложная задача для правильной настройки.

Правильно ли настроена база данных, чтобы все индексы создавались с наилучшей возможной настройкой?