Estou recebendo alguns conselhos conflitantes sobre como configurar melhor nosso armazenamento SQL com nossa SAN atual. Eu gostaria de fazer alguns dos meus próprios testes de desempenho com algumas configurações diferentes.
Procurei usar o SQLIOSim, mas não parece simular o TempDB.
Alguém pode recomendar uma maneira de testar dados, log e desempenho do TempDB?
Que tal usar um arquivo de rastreamento do SQL Profiler do nosso sistema de produção? Como eu usaria isso para executar em meu servidor de teste?
Obrigado, Matt
Responder1
Uma recomendação universal - antes mesmo de instalar o SQL Server - é testar o subsistema IO com algo como SQL IO para que você conheça seus recursos. http://www.brentozar.com/archive/2008/11/storage-performance-testing-with-sqlio/
A reprodução de arquivos de rastreamento é uma boa ideia, mas pode ser um tanto complicada de configurar. Talvez seja melhor reunir alguns scripts que simulem diferentes tipos de cargas de trabalho. http://msdn.microsoft.com/en-us/library/ms189604.aspx
CheckDB e reindexação (particularmente online) são usuários bastante pesados do TempDB - dependendo da configuração/tamanho do banco de dados, etc. Você pode querer avaliar atividades típicas como essas em sua nova caixa.
Por fim, seu fornecedor de SAN pode produzir um whitepaper sobre como configurar especificamente para SQL Server. Tente descobrir isso e, se existir, consulte o administrador da SAN.
Responder2
A informação geral que posso fornecer é que normalmente o tempdb deve estar sendo executado em um array RAID10, pois é um banco de dados de alta gravação. Quanto ao número de spindles que vai depender totalmente do servidor em questão e de quanto IO o banco de dados tempdb estará gerando.