Verringerte Leistung in SQL Server, wenn Sie EFS zum Verschlüsseln von Datenbankdateien verwenden

Gilt für: SQL Server
Ursprüngliche KB-Nummer: 922121

Problembeschreibung

Wenn Sie verschlüsselndes Dateisystem (Encrypting File System, EFS) zum Verschlüsseln von Datenbankdateien in SQL Server verwenden, wird die Leistung einiger SQL Server-Features verringert. Beispielsweise die Funktionen für Lese-/Vorlese - und Prüfpunkt .

Ursache

Dieses Problem tritt auf, da asynchrone E/A-Anforderungen von SQL Server in synchrone E/A-Vorgänge in einer EFS-verschlüsselten Datenbankdatei konvertiert werden. Weitere Informationen finden Sie unter Asynchrone Datenträger-E/A unter Windows als synchron. Während des E/A-Vorgangs wartet der Arbeitsthread, bis der E/A-Vorgang abgeschlossen ist. Wenn der Thread auf den E/A-Vorgang wartet, wird der SQL Server-Zeitplaner angehalten, bis der aktuelle Arbeitsthread fortgesetzt wird. Daher stehen die Arbeitsthreads, die im Zeitplan verbleiben, aus, bis der erste Arbeitsthread den E/A-Vorgang fortsetzt. Bei asynchroner E/A fordert der Thread jedoch die E/A an und führt weitere Aufgaben aus.

Notiz

Asynchrone E/A scheint aufgrund der NTFS-Komprimierung (New Technology File System) immer noch synchron zu sein. Der Dateisystemtreiber greift nicht asynchron auf komprimierte Dateien zu. Stattdessen werden alle Vorgänge synchron ausgeführt.

Problemumgehung

SQL Server bietet viele Verschlüsselungstechnologien wie transparente Datenverschlüsselung (Transparent Data Encryption, TDE), Always Encrypted und Transact-SQL-Funktionen auf Spaltenebene. Erwägen Sie die Verwendung dieser Verschlüsselungsfeatures anstelle von EFS.

Notiz

Wenn Sie EFS zum Verschlüsseln einer Datenbankdatei verwenden, wird die gesamte Datenbankdatei unabhängig von den tatsächlichen Daten und Metadaten verschlüsselt, die in der Datenbankdatei enthalten sind. Sie können EFS auch im Falle eines möglichen Verlusts physischer Medien verwenden.

References

Konfigurieren eines sicheren Dateisystems