Introdução #
Por predefinição, o SQL Server utiliza todos os recursos disponíveis na máquina. Também pode, potencialmente, interromper outros processos do sistema.
Resolução #
Verifique se a afinidade da CPU já está limitada no SSMS do servidor SQL, executando uma consulta:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'affinity mask';
Se o resultado mostrar config_value = 0, significa que será utilizada toda a CPU disponível na máquina.

Para limitar isso, consulte a tabela abaixo:
| Número de CPUs | NÚCLEO DA CPU | Valor da máscara de afinidade |
| 1 | CPU 1 | 1 |
| 1 | CPU 2 | 2 |
| 1 | CPU 3 | 4 |
| 1 | CPU 4 | 8 |
| 2 | CPU 1, 2 | 3 |
| 2 | CPU 1, 3 | 5 |
| 2 | CPU 1, 4 | 9 |
| 2 | CPU 2, 3 | 6 |
| 2 | CPU 2, 4 | 10 |
| 2 | CPU 3, 4 | 12 |
| 3 | CPU 1, 2, 3 | 7 |
| 3 | CPU 1, 2, 4 | 11 |
| 3 | CPU 1, 3, 4 | 13 |
| 3 | CPU 2, 3, 4 | 14 |
| 4 | CPU 1, 2, 3, 4 | 15 |
Notas:
Uma «CPU» pode ter vários processadores lógicos. Por isso, algumas CPUs têm 4 «núcleos de CPU» e 8 «processadores lógicos». Neste caso, o «número de CPUs» está diretamente relacionado com a quantidade total de processadores lógicos da máquina.

Se pretender utilizar apenas as duas primeiras CPUs (CPU 1, 2), execute a consulta abaixo:
EXEC sp_configure 'affinity mask', 3;
RECONFIGURE;
Se pretender utilizar apenas as três primeiras CPUs (CPU 1, 2, 3), execute a consulta abaixo:
EXEC sp_configure 'affinity mask', 7;
RECONFIGURE;
Para redefinir este valor para 0 (o que utilizará todos os recursos disponíveis), basta executar a consulta abaixo:
EXEC sp_configure 'affinity mask', 0;
RECONFIGURE;
Visão geral #
Não é necessário reiniciar o serviço SQL, o RECONFIGURE aplica automaticamente as alterações
Isso fará com que o ETL demore um pouco mais, dependendo dos dados.
A execução do ETL ainda depende em grande parte de...
- Especificações do sistema (o SQL consome muitos recursos da CPU por predefinição)
- Outros processos na máquina
- Eficiência da forma como o ETL transforma e carrega os dados

