SQl 2008 кросс-производительность базы данных на том же физическом компьютере и том же экземпляре сервера - PullRequest
1 голос
/ 18 января 2011

Есть ли снижение производительности при выполнении выбора для другой БД на том же физическом компьютере?Итак, у меня есть 2 базы данных на одном физическом компьютере, работающие в одном экземпляре SQL 2008.

Например, в SomStoreProc on_this_db я запускаю

SELECT someFields FROM the_other_db.dbo.someTable

Так далеко от того, что я прочитал в Интернетебольшинство людей указывают на НЕТ.

1 Ответ

1 голос
/ 18 января 2011

Даже если это не снижение производительности, это может быть проблемой в целостности данных, поскольку FK не могут быть принудительно применены в базах данных.

Однако, более вероятно, что ваши процессы должны быть настроены, особенно еслиони длиной в тысячи строк.Для начала поищите курсоры, коррелированные подзапросы и плохую индексацию.Также обратите внимание на предложения where, которые представляют собой несарабельные и скалярные функции, которые выполняют row-by-agonizing-row.

Конечно, лучший способ доказать, что отдельная база данных не является проблемой, это взять один медленный процесс ипреобразовать эти таблицы в одну базу данных и протестировать производительность в обоих направлениях.Пожалуйста, по крайней мере, убедите их сделать этот небольшой тест, прежде чем они пойдут дальше, и сделайте ужасно сложное и трудоемкое изменение одной базы данных, а затем выясните, что у них все еще есть проблемы с производительностью.

И помните, план выполнения - ваш друг смотрит на эти вещи.

...