Abfrageaktivitäts-Auflistertyp
Der Abfrageaktivitäts-Auflistertyp ist ein benutzerdefinierter Auflistertyp, der von dem Auflistsatz für die Abfragestatistik, einem der vordefinierten Systemdaten-Auflistsätze, verwendet wird.
Mit diesem Auflistertyp werden Abfragestatistiken und Informationen zur Abfrageaktivität zusammen mit dem Abfrageplan und dem Abfragetext für Abfragen erfasst, die vordefinierten Kriterien entsprechen. Wenn Sie mit diesem Auflistertyp einen eigenen Auflistsatz erstellen, erfasst dieser dieselben Informationen wie der Auflistsatz für die Abfragestatistik. Deshalb empfiehlt es sich, dass Sie den vordefinierten Auflistsatz für Abfragestatistiken verwenden.
Architektur und Verarbeitung
Der Abfrageaktivitäts-Auflistertyp besteht aus den folgenden Elementen:
Einem Schema für Eingabeparameter (intern)
Einem SSIS-Paket zum Erfassen von Daten (QueryActivityCollect.dtsx)
Einem SSIS-Paket zum Hochladen von Daten (QueryActivityUpload.dtsx)
Zusätzlich verwendet dieser Auflistertyp benutzerdefinierte Tasks oder Transformationen zum Analysieren und Auswählen von Daten, die im Verwaltungs-Data Warehouse gespeichert werden sollen.
Der Abfrageaktivitäts-Auflistertyp führt die folgenden Vorgänge aus:
Er listet Beispiele der dynamischen Verwaltungssichten dm_exec_requests und dm_exec_sessions sowie ausgewählter verwandter dynamischer Verwaltungssichten auf. Dies wird als einzelne verknüpfte Abfrage implementiert. Die Datenauflistung erfolgt mit der für das Auflistelement angegebenen Auflistungshäufigkeit.
Er erfasst bei jedem Hochladen der Auflistsätze Snapshots der dynamischen Verwaltungssicht dm_exec_query_stats. In der Standardeinstellung wird der Auflistsatz für Abfragestatistiken alle 15 Minuten hochgeladen.
Auflistungsphase
In der folgenden Tabelle wird die Abfrage angezeigt, die während der Auflistungsphase verwendet wird. Diese Abfrage wird im SSIS-Paket QueryActivityCollect.dtsx definiert.
Auflistungshäufigkeit |
10 Sekunden |
Abfrage |
|
Uploadphase
Während der Uploadphase werden die aufgelisteten Daten analysiert, um zu bestimmen, welche Daten im Verwaltungs-Data Warehouse gespeichert werden sollen. Anhand dieser Analyse werden ein Satz von Abfragestatistiken, Abfragepläne und ein Abfragetext bestimmt, die auf Grundlage der folgenden Kriterien gespeichert werden müssen:
Ein Schlüsselelement ist ein Algorithmus, der auswählt, welche Abfragen und Abfragepläne im Data Warehouse gespeichert werden sollen. Dieser Algorithmus funktioniert wie folgt:
Er erfasst einen Snapshot von sys.dm_exec_query_stats. Dieser Snapshot wird bei jedem Upload der Auflistsätze erfasst. (In der Standardeinstellung ist dies alle 15 Minuten.)
Er ruft den zuletzt (vor 15 Minuten) erstellten Snapshot zum Vergleich mit dem neuen Snapshot ab. Der zuletzt entstandene Snapshot wird lokal zwischengespeichert und muss nicht aus dem Verwaltungs-Data Warehouse abgerufen werden.
Er wählt die obersten drei Abfragen jedes Snapshots mit der folgenden Metrik aus:
Verstrichene Zeit
Arbeitszeit
Logische Lesevorgänge
Logische Schreibvorgänge
Physische Lesevorgänge
Ausführungsanzahl
Dieser Prozess stellt 6 x 3 sql_handles und plan_handles bereit.
Er identifiziert die eindeutigen sql_handles und plan_handles.
Er erstellt einen Durchschnitt zwischen diesem Ergebnis und den im Data Warehouse gespeicherten sql_handles und plan_handles.
Er ruft den Plan und den Text für neue sql_handles und plan_handles vom Server ab. Wird der Plan oder der Text nicht gefunden (da er womöglich bereits aus dem lokalen Cache entfernt wurde), speichert er die Handles im Verwaltungs-Data Warehouse.
Er normalisiert den Text jedes erfassten sql_handle-Texts (beispielsweise entfernt er Parameter und Literale), und er berechnet den eindeutigen Hashwert für den normalisierten Text. Er speichert den normalisierten Text, den Hashwert und die Zuordnung zum ursprünglichen sql_handle im Verwaltungs-Data Warehouse.
In der folgenden Tabelle ist die Abfrage dargestellt, die dazu verwendet wird, die Snapshots zu erhalten und die Daten im Verwaltungs-Data Warehouse zu analysieren und anschließend hochzuladen. Diese Abfrage wird im SSIS-Paket QueryActivityUpload.dtsx definiert.
Abfrage |
|
Abfrageausgabe |
snapshots.query_stats, snapshots.notable_query_text und snapshots.notable_query_plan |
Änderungsverlauf
Aktualisierter Inhalt |
---|
Die Abschnitte "Auflistungsphase" und "Uploadphase" wurden hinzugefügt. |
Er ersetzt die Kriterien, welche Daten im Verwaltungs-Data Warehouse während der Uploadphase gespeichert werden, mit der Abfrage, die im SSIS-Paket QueryActivityUpload.dtsx definiert wird. |
Siehe auch