Desempenho reduzido no SQL Server ao usar o EFS para criptografar arquivos de banco de dados

Aplica-se ao: SQL Server
Número de KB original: 922121

Sintomas

Quando você usa o EFS (Encrypting File System) para criptografar arquivos de banco de dados em SQL Server, o desempenho de alguns recursos SQL Server é reduzido. Por exemplo, os recursos de leitura antecipada e ponto de verificação .

Motivo

Esse problema ocorre porque solicitações assíncronas de E/S de SQL Server são convertidas em operações de E/S síncronas em um arquivo de banco de dados criptografado por EFS. Consulte E/S de disco assíncrono aparece como síncrono no Windows para obter mais informações. Durante a operação de E/S, o thread de trabalho aguarda até que a operação de E/S seja concluída. Quando o thread aguardar a operação de E/S, o agendador de SQL Server será suspenso até que o thread de trabalho atual continue. Portanto, os threads de trabalho que permanecem no agendador estarão pendentes até que o primeiro thread de trabalho continue a operação de E/S. No entanto, para E/S assíncrona, o thread solicita a E/S e continua executando outras tarefas.

Observação

A E/S assíncrona ainda parece ser síncrona devido à compactação NTFS (New Technology File System). O driver do sistema de arquivos não acessará arquivos compactados de forma assíncrona. Em vez disso, todas as operações são feitas síncronas.

Solução alternativa

SQL Server oferece muitas tecnologias de criptografia, como TDE (Transparent Data Encryption),Always Encrypted e funções Transact-SQL de criptografia no nível da coluna. Considere usar esses recursos de criptografia em vez de EFS.

Observação

Quando você usa o EFS para criptografar um arquivo de banco de dados, todo o arquivo de banco de dados é criptografado, independentemente dos dados e metadados reais contidos no arquivo de banco de dados. Você também pode usar o EFS em caso de possível perda de mídia física.

Referências

Configurar um sistema de arquivos seguros