Quando um backup é criado, o SQL Server adivinha (?) o tamanho do arquivo de backup inicial. Mais tarde, talvez quando ele anexar o log, o tamanho seja reajustado, às vezes várias vezes até que o tamanho final seja alcançado. Quanto maior a diferença, mais tempo demora o backup. (em comparação com outro backup cujo tamanho não é ajustado muito mais tarde). Exemplo: Database1 (tamanho 500 GB, log de 70 GB usado) é feito backup com compactação. O arquivo .bak é criado com 85 GB de tamanho, depois de algum tempo o uso da CPU aumenta e vejo que o arquivo .bak é reajustado para 136 GB, isso acontece novamente até que o tamanho final de 178 GB para o backup seja alcançado.
Quando esses recálculos acontecem, a velocidade média de backup em MB/s é reduzida em comparação com outros backups na mesma máquina. É o único proveniente de anexar e limpar o log? Ou é também por causa dos diferentes tipos de dados usados no banco de dados? Significa que eles são compactados com diferentes taxas de compactação ou algo assim?
Cheguei ao assunto, porque sabia que meus backups demoravam em torno de 30 minutos, mas agora demoravam 1,5 horas, embora o banco de dados não crescesse para 300% de seu tamanho. Cresceu apenas 30%.
Usando estatísticas de espera, pude ver que, além do BackupIO, eu também estava esperando pela CPU (SOS_SCHEDULER_YIELD) em algum momento.
Machine Details:
VMWare 6.0
32 GB of Memory (Max memory 28GB given to SQL Server)
2 logical CPU
Max Degree of Parallelism (1, it's a Sharepoint 2013)
SQL Server 2014
Windows Server 2012 R2
running on an SSD Raid (5)
É claro que tenho a inicialização instantânea de arquivo habilitada para o usuário que executa o backup.
De BOL :
Você deve seguir as práticas recomendadas de backup e restauração no SharePoint 2013 .
Além disso, para mim, sua VM com 2 CPUs parece estar abaixo das especificações para executar um banco de dados de 70 GB (não tenho certeza se há apenas um banco de dados ou vários bancos de dados).