Analysieren Ihrer Datenbank-Arbeitslast auf einer Amazon RDS for SQL Server-DB-Instance mit Database Engine Tuning Advisor - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Analysieren Ihrer Datenbank-Arbeitslast auf einer Amazon RDS for SQL Server-DB-Instance mit Database Engine Tuning Advisor

Database Engine Tuning Advisor ist eine von Microsoft bereitgestellte Client-Anwendung, die die Datenbank-Arbeitslast analysiert und basierend auf den Arten von Abfragen, die Sie ausführen, einen optimalen Satz von Indizes für Ihre Microsoft SQL Server-Datenbanken empfiehlt. Wie SQL Server Management Studio führen Sie Tuning Advisor von einem Client-Computer aus, der eine Verbindung zu Ihrer Amazon RDS DB-Instance herstellt, auf der SQL Server ausgeführt wird. Der Client-Computer kann ein lokaler Computer sein, den Sie lokal in Ihrem eigenen Netzwerk ausführen, oder es kann sich um eine Amazon EC2 Windows-Instance handeln, die in derselben Region wie Ihre Amazon RDS DB-Instance läuft.

In diesem Abschnitt wird gezeigt, wie ein Workload für eine Analyse im Optimierungshelfer erfasst wird. Dies ist das bevorzugte Verfahren zur Erfassung eines Workloads, da Amazon den Hostzugriff auf die SQL Server-Instance RDS einschränkt. Weitere Informationen finden Sie unter Database Engine Tuning Advisor in der Microsoft-Dokumentation.

Um den Optimierungshelfer zu verwenden, müssen Sie dem Helfer eine sogenannte Workload zur Verfügung stellen. Ein Workload besteht aus einer Reihe von SQL Transact-Anweisungen, die für eine oder mehrere Datenbanken ausgeführt werden, die Sie optimieren möchten. Der Datenbankmodul-Optimierungsratgeber verwendet bei der Optimierung von Datenbanken Ablaufverfolgungsdateien, Ablaufverfolgungstabellen, SQL Transact-Skripten oder XML Dateien als Workload-Eingabe. Wenn Sie mit Amazon arbeitenRDS, kann ein Workload eine Datei auf einem Client-Computer oder eine Datenbanktabelle in einer Amazon RDS for SQL Server-DB sein, auf die Ihr Client-Computer zugreifen kann. Die Datei oder Tabelle muss Abfragen für die zu optimierenden Datenbanken enthalten, die in einem Format vorliegen, das für eine erneute Wiedergabe geeignet ist.

Damit der Optimierungshelfer optimal arbeiten kann, muss eine Workload so realistisch sein wie möglich. Sie können eine Workload-Datei oder -Tabelle erzeugen, indem Sie ein Trace für Ihre DB-Instance durchführen. Sie können während der Ausführung eines Trace entweder eine Belastung Ihrer DB-Instance simulieren oder Ihre Anwendungen mit normaler Belastung ausführen.

Es gibt zwei Arten von Traces: clientseitig und serverseitig. Eine clientseitige Ablaufverfolgung ist einfacher einzurichten, und Sie können verfolgen, wie Trace-Ereignisse in Echtzeit im SQL Server Profiler erfasst werden. Eine serverseitige Ablaufverfolgung ist komplexer einzurichten und erfordert etwas Transact-Scripting. SQL Da der Trace in eine Datei auf der RDS Amazon-DB-Instance geschrieben wird, wird außerdem Speicherplatz durch den Trace verbraucht. Es ist wichtig, zu beachten, wie viel Speicherplatz die Ausführung eines serverseitigen Trace benötigt, da die DB-Instance in den Storage-Full-Status wechseln könnte und dann nicht mehr verfügbar ist, sobald der Speicherplatz ausgeht.

Bei einem clientseitigen Trace können Sie, wenn eine ausreichende Menge an Trace-Daten im SQL Server Profiler erfasst wurde, die Workload-Datei generieren, indem Sie den Trace entweder in einer Datei auf Ihrem lokalen Computer oder in einer Datenbanktabelle auf einer DB-Instance speichern, die Ihrem Client-Computer zur Verfügung steht. Der Hauptnachteil bei der Verwendung eines clientseitigen Trace ist der, dass unter großer Auslastung eventuell nicht alle Abfragen vom Trace erfasst werden. Das könnte die Effektivität der vom Datenbank-Engine-Optimierungshelfer durchgeführten Analyse negativ beeinträchtigen. Muss ein Trace unter großer Auslastung ausgeführt werden und Sie möchten sicherstellen, dass während einer Trace-Sitzung alle Abfragen erfasst werden, sollte ein serverseitiger Trace zum Einsatz kommen.

Für einen serverseitigen Trace müssen die Trace-Dateien in der DB-Instance in einer geeigneten Workload-Datei gespeichert oder der Trace in einer Tabelle in der DB-Instance gespeichert werden, nachdem der Trace abgeschlossen ist. Sie können den SQL Server Profiler verwenden, um den Trace in einer Datei auf Ihrem lokalen Computer zu speichern, oder den Tuning Advisor aus der Trace-Tabelle auf der DB-Instance lesen lassen.