SQL Server 2008 - Desempenho entre bancos de dados na mesma máquina física e instância do servidor

12

Existe algum impacto no desempenho ao fazer uma seleção em outro banco de dados na mesma máquina física? Portanto, eu tenho 2 bancos de dados na mesma máquina física em execução na mesma instância do SQL 2008.

Por exemplo, em SomStoreProc em_este_db, eu executo SELECT someFields FROM the_other_db.dbo.someTable

Longe do que li na internet, a maioria das pessoas parece indicar NÃO.

user547
fonte

Respostas:

13

Você não verá redução de desempenho ao consultar bancos de dados na mesma instância. O mesmo analisador de consulta, buffers etc. estão em uso.

Agora, se você tentar o mesmo em instâncias SQL distintas no mesmo servidor, poderá ver um impacto no desempenho. A consulta teria que ser analisada por dois analisadores de consulta distintos e mais recursos do sistema seriam usados ​​para caches, buffers etc. Você também forçaria os resultados a passar pelo protocolo VIA (assumindo que ele esteja ativado) entre as instâncias. O MS DTC pode estar envolvido e, se as permissões forem inadequadas em uma das instâncias, um plano de consulta ruim (er) poderá ser criado.

AndrewSQL
fonte
4

as estatísticas Profiler + plano de execução + IO / Cpu são suas melhores amigas para verificar isso. Copie sua tabela no primeiro banco de dados e compare a duração e as outras estatísticas com as encontradas ao ter a tabela no segundo banco de dados. Você verá se existem penalidades.

Pessoalmente, não vi um desempenho visível ao ler dados de tabelas de outros bancos de dados no mesmo servidor.

Marian
fonte
lol eles estão otimizando as consultas finalmente!
precisa saber é o seguinte