SQL 2K5 - Vários bancos de dados vs. Vários arquivos

2

Nosso sistema legado atual foi construído usando vários bancos de dados distintos (cerca de dez deles). Tudo isso faz parte do mesmo sistema discreto, e um grande número de SPs e funcionalidades abrangem vários bancos de dados. Há também relacionamentos chave que abrangem (por exemplo, uma tabela de cabeçalho pode estar no banco de dados A com histórico, etc. no banco de dados B).

Ao implantar várias cópias de nosso aplicativo no mesmo servidor, temos que usar várias instâncias (porque os nomes dos bancos de dados são codificados em muitos sprocs).

Estamos avaliando a ideia de usar esses dez bancos de dados (cerca de 30gb no total com tamanhos individuais variando de 100mb a 10gb) e mesclando-os em um único banco de dados.

Atualmente, temos nossos bancos de dados espalhados por vários eixos para melhor IO. A pergunta que tenho é se há ou não perda de desempenho ou benefício de ter 10 bancos de dados diferentes contra 10 arquivos de banco de dados diferentes?

i.e. em vez de ter três bancos de dados (A, B e C)

Disk D:  A.mdf (1gb)
Disk E:  B.mdf (4gb)
Disk F:  C.mdf (10gb)
Disk G:  A_Log.ldf, B_Log.ldf, C_Log.ldf

tem um banco de dados (X)

Disk D:  X1.mdf (5gb)
Disk E:  X2.mdf (5gb)
Disk F:  X3.mdf (5gb)
Disk G:  X1_log.ldf,X2_log.ldf,X3_log.ldf

Obrigado! -Bob

    
por Bob Palmer 17.02.2010 / 16:21

1 resposta

2

A menos que a carga sobre os bancos de dados seja muito uniforme, você provavelmente verá um melhor desempenho se usar vários arquivos em um grupo de arquivos e um único banco de dados em vários bancos de dados espalhados em vários discos. Isso é devido ao código de distribuição de carga em ms sql, que normalmente é muito melhor do que tentar escolher discos manualmente para cada banco de dados.

Uma breve introdução pode ser encontrada no link , mas há um muito mais do que isso.

Você também deve dar uma olhada em SQL Server 2005/2008 - vários arquivos / grupos de arquivos - quantos? Por quê? , que tem uma boa discussão sobre o uso de vários grupos de arquivos.

Ah, ter todos os seus arquivos de log no mesmo disco provavelmente lhe dará um afunilamento de E / S, a menos que esse disco seja muito rápido e a carga de gravação seja baixa. Tenha cuidado lá.

No final, verifique suas filas de IO. Se você não ficar preso esperando por IO, não faz sentido se preocupar com o desempenho do seu disco. A mudança pode ser possível motivar simplesmente porque o design do banco de dados é muito mais limpo.

    
por 17.02.2010 / 18:14