Na minha empresa, temos várias máquinas virtuais que hospedam o SQL Server 2008 R2 e algumas dessas máquinas têm desempenho diferente de outras, algumas devido ao host muito ocupado do Vmware, devido a conexões mais lentas com o NAS.
Existe uma maneira de executar algum código SQL em um banco de dados SQL de teste ou outras práticas recomendadas conhecidas que eu poderia usar para executar alguns testes de desempenho em cada VM e desempenho de linha de base / benchmark, para que eu possa entender qual máquina se comporta melhor do que outras antes de mudar essas máquinas para ambientes Prod ou UAT? Obrigado, Davide.
sql-server
benchmark
Davide Piras
fonte
fonte
Respostas:
Você pode usar uma das ferramentas gratuitas de benchmarking SQL, como o Benchmark Factory for Databases (BFD) da Dell ou o Hammerora . A Benchmark Factory tem uma avaliação gratuita e o Hammerora é de código aberto. Ambos executam benchmarks TPC conhecidos do setor e você pode executar cargas de trabalho personalizadas com o BFD. Eu usei apenas o BFD e cada 'execução' de teste pode ser salva como um relatório que achei realmente útil para comparações. No entanto, Hammerora também é bem suportado (por exemplo, aqui e aqui ).
Você também pode gravar uma de suas próprias cargas de trabalho conhecidas com um rastreamento de reprodução via rastreamento do Profiler / lado do servidor, em seguida, restaurar o backup e reproduzi-lo em cada ambiente. Há um pouco mais de trabalho nessa opção, mas seria um teste mais familiar.
Também tenho um ponto fraco para ostress, que faz parte do RML Utility Suite, que teve uma atualização em abril de 2014 e ainda uso o tempo todo. Mais uma curva de aprendizado com esta ferramenta gratuita da Microsoft, mas é realmente poderosa. Por exemplo, você pode executar ações como "executar todos os scripts .sql neste diretório 20 vezes, simulando 50 usuários simultâneos".
Em resumo, se você procura uma ferramenta gratuita e inicia rapidamente uma das ferramentas gratuitas mencionadas acima. Se você deseja investir um pouco mais de tempo, dê uma olhada nos rastreamentos Replay, RML e ostress.
HTH
fonte
O SQLIO parece ser provavelmente uma ferramenta de benchmarking tão boa quanto você poderia querer para algo assim, pois parece que você está procurando verificar especificamente problemas em potencial relacionados ao armazenamento.
Brent Ozar tem um ótimo post no blog para falar sobre isso aqui - Tutorial do SQLIO de Brent Ozar
fonte
Sim! DiskSpd funciona muito bem. Na verdade, é uma das minhas ferramentas favoritas neste momento. Está disponível gratuitamente em:
https://gallery.technet.microsoft.com/DiskSpd-a-robust-storage-6cd2f223
E lembre-se de usar o comando -Z1G para melhorar os testes de gravação para o mundo real.
fonte