Freigeben über


Vorkonfiguration für BizTalk Server Datenbankoptimierungen

BizTalk Server ist eine extrem datenbankintensive Anwendung, die möglicherweise die Erstellung von bis zu 13 separaten Datenbanken in Microsoft SQL Server erfordert. Aufgrund der entscheidenden Rolle, die SQL Server in jeder BizTalk Server Umgebung spielt, ist es von größter Bedeutung, dass SQL Server für eine optimale Leistung konfiguriert/optimiert ist. Wenn SQL Server nicht auf eine gute Leistung eingestellt ist, werden die von BizTalk Server verwendeten Datenbanken zu einem Engpass, und die Gesamtleistung der BizTalk Server Umgebung leidet. In diesem Thema werden mehrere SQL Server Leistungsoptimierungen beschrieben, die vor dem Installieren BizTalk Server und Konfigurieren der BizTalk Server-Datenbanken befolgt werden sollten.

Festlegen der NTFS-Dateizuordnungseinheit

SQL Server speichert seine Daten in Extents, bei denen es sich um Gruppen von acht 8.000 Seiten handelt. Um die Datenträgerleistung zu optimieren, legen Sie daher die NTFS-Zuordnungseinheitsgröße auf 64 KB fest, wie im SQL Server Leitfaden für best Practices für die Datenträgerkonfiguration – Bewährte Methoden für E/A-Vorbereitstellung beschrieben. Weitere Informationen zu SQL Server Seiten und Erweiterungen finden Sie unter Grundlegendes zu Seiten und Erweiterungen.

Überlegungen zur Datenbankplanung

Microsoft empfiehlt, Ihre SQL Server Datenbanken auf schnellem Speicher zu hosten (z. B. schnelle SAN-Datenträger oder schnelle SCSI-Datenträger). Microsoft empfiehlt RAID 10 (1+0) anstelle von RAID 5, da RAID 5 beim Schreiben langsamer ist. Neuere SAN-Datenträger verfügen über sehr große Speichercaches, sodass in diesen Fällen die RAID-Auswahl nicht so wichtig ist. Um die Leistung zu steigern, können sich Datenbanken und ihre Protokolldateien auf verschiedenen physischen Datenträgern befinden.

Installieren Sie das neueste Service Pack und kumulative Updates für SQL Server

Installieren Sie die neuesten Service Packs und die neuesten kumulativen Updates für SQL Server 2005 und SQL Server 2008 sowie die neuesten .NET Framework Service Packs.

Installieren von SQL Service Packs auf BizTalk Server und SQL Server

Installieren Sie beim Installieren von Service Packs für SQL Server auch das Service Pack auf dem BizTalk Server Computer. BizTalk Server verwendet SQL-Clientkomponenten, die von den SQL Server Service Packs aktualisiert werden.

Erwägen Sie die Implementierung des SQL Server 2008 Data Collector and Management Data Warehouse

SQL Server 2008 bietet die Verwendung des neuen Data Collector and Management Data Warehouse, um Umgebungs-/Datenbankleistungsbezogene Daten für Test- und Trendanalysen zu sammeln. Der Datensammler speichert alle gesammelten Daten im angegebenen Verwaltungs-Data Warehouse. Dies ist zwar keine Leistungsoptimierung, dies ist jedoch nützlich für die Analyse von Leistungsproblemen.

Gewähren des Kontos, das für SQL Server der Windows-Berechtigung "Seiten im Arbeitsspeicher sperren" verwendet wird

Erteilen Sie dem SQL Server Dienstkonto die Windows-Berechtigung "Seiten im Arbeitsspeicher sperren". Dies sollte erfolgen, um zu verhindern, dass das Windows-Betriebssystem den Pufferpoolspeicher des SQL Server Prozesses auslagern kann, indem Arbeitsspeicher gesperrt wird, der für den Pufferpool im physischen Arbeitsspeicher zugewiesen ist. Weitere Informationen finden Sie im Microsoft Knowledge Base-Artikel 914483 "Reduzieren der Paging von Pufferpoolspeicher in der 64-Bit-Version von SQL Server 2005" unter https://go.microsoft.com/fwlink/?LinkId=148948.

Gewähren des SE_MANAGE_VOLUME_NAME-Rechts auf das SQL Server-Dienstkonto

Stellen Sie sicher, dass das Konto, das den SQL Server-Dienst ausführt, über die Windows-Berechtigung "Volumewartungsaufgaben ausführen" verfügt, oder stellen Sie sicher, dass es zu einer Sicherheitsgruppe gehört, die dies tut. Dies ermöglicht eine sofortige Dateiinitialisierung, die eine optimale Leistung gewährleistet, wenn eine Datenbank automatisch wachsen muss.

Festlegen von min. und max. Serverarbeitsspeicher

Die Computer, auf denen SQL Server ausgeführt werden, auf denen die BizTalk Server Datenbanken gehostet werden, sollten für die Ausführung SQL Server dedizierter sein. Es wird empfohlen, dass die Optionen "Min server memory" und "max server memory" für jeden SQL Server instance festgelegt sind, um die feste Menge an Arbeitsspeicher anzugeben, die SQL Server zugeordnet werden soll. In diesem Fall sollten Sie "min server memory" und "max server memory" auf den gleichen Wert festlegen (entspricht der maximalen Menge an physischem Arbeitsspeicher, die SQL Server verwendet). Dadurch wird der Aufwand verringert, der andernfalls von SQL Server dynamischer Verwaltung dieser Werte verwendet würde. Führen Sie die folgenden T-SQL-Befehle auf jedem SQL Server Computer aus, um die feste Menge an Arbeitsspeicher anzugeben, die SQL Server zugewiesen werden soll:

sp_configure ‘Max Server memory (MB)’,(max size in MB)
sp_configure ‘Min Server memory (MB)’,(min size in MB)

Bevor Sie die Arbeitsspeichermenge für SQL Server festlegen, bestimmen Sie die entsprechende Speichereinstellung, indem Sie den für Windows Server erforderlichen Arbeitsspeicher vom gesamten physischen Arbeitsspeicher subtrahieren. Dies ist die maximale Arbeitsspeichermenge, die Sie SQL Server zuweisen können.

Hinweis

Wenn die Computer, auf denen SQL Server ausgeführt werden, die die BizTalk Server-Datenbanken hosten, auch den Enterprise Single Sign-On Master Secret Server hosten, müssen Sie diesen Wert möglicherweise anpassen, um sicherzustellen, dass genügend Arbeitsspeicher zum Ausführen des Enterprise Single Sign-On-Diensts verfügbar ist. Es ist nicht ungewöhnlich, einen gruppierten instance des Enterprise Single Sign-On-Diensts auf einem SQL Server-Cluster auszuführen, um Hochverfügbarkeit für den Master Secret Server bereitzustellen. Weitere Informationen zum Clustern des Enterprise Single Sign-On Master Secret Server finden Sie im Thema "Clustern des Master Secret Servers" in der BizTalk Server-Dokumentation unter https://go.microsoft.com/fwlink/?LinkID=106874.

Teilen Sie die tempdb-Datenbank auf jeder von BizTalk Server verwendeten SQL Server instance in mehrere Datendateien gleicher Größe auf.

Es ist wichtig, sicherzustellen, dass die für die tempdb verwendeten Datendateien gleich groß sind, da der von SQL Server verwendete proportionale Füllalgorithmus auf der Größe der Datendateien basiert. Dieser Algorithmus versucht sicherzustellen, dass SQL Server jede Datei proportional zum freien Speicherplatz in dieser Datei füllt, sodass sie etwa zur gleichen Zeit ihre maximale Kapazität erreichen. Wenn Datendateien mit ungleichen Größen erstellt werden, verwendet der Proportionalfüllalgorithmus die größte Datei mehr für GAM-Zuordnungen, anstatt die Zuordnungen auf alle Dateien zu verteilen, wodurch der Zweck des Erstellens mehrerer Datendateien verfehlt wird. Die Anzahl der Datendateien für die tempdb-Datenbank sollte so konfiguriert werden, dass sie mindestens der Anzahl der Prozessoren entspricht, die für SQL Server zugewiesen sind.

Aktivieren Sie das Ablaufverfolgungsflag T1118 als Startparameter für alle Instanzen von SQL Server

Wenn Sie Ablaufverfolgungsflaggen implementieren, trägt T1118 dazu bei, Konflikte in den SQL Server-Instanzen zu verringern, indem fast alle Einzelseitenzuordnungen entfernt werden. Weitere Informationen finden Sie unter Microsoft Knowledge Base 328551 – Parallelitätserweiterungen für die tempdb-Datenbank.

Ändern Sie die Standardeinstellungen SQL Server nicht für den maximalen Grad an Parallelität, SQL Server Statistiken oder Datenbankindexneuerstellungen und Defragmentierung.

Wenn Sie über eine SQL Server instance verfügen, die BizTalk Server Datenbanken enthält, ändern Sie nicht die SQL Server Einstellungen für den maximalen Grad an Parallelität, SQL Server Statistiken für die MessageBox-Datenbank und die Einstellungen für die Neuerstellung und Defragmentierung des Datenbankindexes. Weitere Informationen finden Sie unter SQL Server Einstellungen, die nicht geändert werden sollten.