Datengranularität und -aufbewahrung
Aggregation von Datenwerten
-
Der Monitor-Dienst erfasst verschiedene Daten, darunter die Nutzung von Benutzersitzungen, Details zur Benutzeranmeldeleistung, Details zum Sitzungslastenausgleich sowie Informationen zu Verbindungs- und Maschinenausfällen. Daten werden je nach Kategorie unterschiedlich aggregiert. Das Verständnis der Aggregation von Datenwerten, die über die OData-Methoden-APIs präsentiert werden, ist entscheidend für die Interpretation der Daten. Zum Beispiel:
- Verbundene Sitzungen und Maschinenausfälle treten über einen Zeitraum auf. Daher werden sie als Maximalwerte über einen Zeitraum dargestellt.
- Die Anmeldedauer ist ein Maß für die Zeitspanne und wird daher als Durchschnitt über einen Zeitraum dargestellt.
- Die Anzahl der Anmeldungen und Verbindungsfehler sind Zählungen von Vorkommen über einen Zeitraum und werden daher als Summen über einen Zeitraum dargestellt.
Gleichzeitige Datenauswertung
Ihre Sitzungen müssen sich überlappen, um als gleichzeitig zu gelten. Wenn das Zeitintervall jedoch 1 Minute beträgt, werden alle Sitzungen in dieser Minute (unabhängig davon, ob sie sich überlappen) als gleichzeitig betrachtet. Die Größe des Intervalls ist so gering, dass der Leistungsaufwand für die Berechnung der Präzision den Mehrwert nicht rechtfertigt. Wenn die Sitzungen in derselben Stunde, aber nicht in derselben Minute stattfinden, gelten sie nicht als überlappend.
Korrelation von Übersichts- mit Rohdaten
-
Das Datenmodell stellt Metriken auf zwei verschiedene Arten dar:
- Die Übersichts-Tabellen stellen aggregierte Ansichten der Metriken in Minut-, Stunden- und Tagesgranularitäten dar.
-
Die Rohdaten stellen einzelne Ereignisse oder den aktuellen Zustand dar, die in der Sitzung, Verbindung, Anwendung und anderen Objekten verfolgt werden.
-
Beim Versuch, Daten über API-Aufrufe hinweg oder innerhalb des Datenmodells selbst zu korrelieren, ist es wichtig, die folgenden Konzepte und Einschränkungen zu verstehen:
-
Keine Übersichtsdaten für Teilintervalle. Metrikübersichten sind darauf ausgelegt, den Anforderungen historischer Trends über lange Zeiträume gerecht zu werden. Diese Metriken werden für vollständige Intervalle in der Übersichtstabelle aggregiert. Es gibt keine Übersichtsdaten für ein Teilintervall am Anfang (älteste verfügbare Daten) der Datenerfassung noch am Ende. Beim Anzeigen von Aggregationen eines Tages (
Interval=1440) bedeutet dies, dass die ersten und die jüngsten unvollständigen Tage keine Daten enthalten. Obwohl Rohdaten für diese Teilintervalle existieren könnten, werden sie niemals zusammengefasst. Rufen Sie das minimale und maximaleSummaryDateaus einer bestimmten Übersichtstabelle ab, um das früheste und späteste aggregierte Intervall für eine bestimmte Datengranularität zu bestimmen. Die SpalteSummaryDatestellt den Beginn des Intervalls dar. Die SpalteGranularitystellt die Länge des Intervalls für die aggregierten Daten dar. - Korrelation nach Zeit. Metriken werden für vollständige Intervalle in der Übersichtstabelle aggregiert, wie im vorhergehenden Abschnitt beschrieben. Sie können für historische Trends verwendet werden, aber Rohereignisse könnten im Zustand aktueller sein als das, was für die Trendanalyse zusammengefasst wurde. Jeder zeitbasierte Vergleich von Übersichts- mit Rohdaten muss berücksichtigen, dass es keine Übersichtsdaten für Teilintervalle gibt, die auftreten könnten, oder für den Beginn und das Ende des Zeitraums.
- Verpasste und latente Ereignisse. Metriken, die in der Übersichtstabelle aggregiert werden, können leicht ungenau sein, wenn Ereignisse verpasst werden oder während des Aggregationszeitraums latent sind. Obwohl der Monitor-Dienst versucht, einen genauen aktuellen Zustand aufrechtzuerhalten, geht er nicht in der Zeit zurück, um die Aggregation in den Übersichtstabellen für verpasste oder latente Ereignisse neu zu berechnen.
- Verbindungs-Hochverfügbarkeit. Während der Verbindungs-HA gibt es Lücken in den Übersichtsdaten der aktuellen Verbindungen, aber die Sitzungsinstanzen laufen weiterhin in den Rohdaten.
- Datenaufbewahrungsfristen. Daten in den Übersichtstabellen werden nach einem anderen Bereinigungsplan aufbewahrt als die Rohereignisdaten. Daten könnten fehlen, weil sie aus den Übersichts- oder Rohdaten-Tabellen entfernt wurden. Aufbewahrungsfristen können auch für verschiedene Granularitäten von Übersichtsdaten unterschiedlich sein. Daten mit geringerer Granularität (Minuten) werden schneller bereinigt als Daten mit höherer Granularität (Tage). Wenn Daten aufgrund der Bereinigung aus einer Granularität fehlen, könnten sie in einer höheren Granularität gefunden werden. Da die API-Aufrufe nur die spezifisch angeforderte Granularität zurückgeben, bedeutet der Empfang keiner Daten für eine Granularität nicht, dass die Daten für eine höhere Granularität für denselben Zeitraum nicht existieren.
- Zeitzonen. Metriken werden mit UTC-Zeitstempeln gespeichert. Übersichtstabellen werden an stündlichen Zeitzonengrenzen aggregiert. Für Zeitzonen, die nicht auf stündliche Grenzen fallen, kann es zu Abweichungen bei der Datenaggregation kommen.
Granularität und Aufbewahrung
Die Granularität der von Monitor abgerufenen aggregierten Daten ist eine Funktion des angeforderten Zeitraums (T). Die Regeln lauten wie folgt:
- 0 < T <= 30 Tage: stündliche Granularität
- T > 31 Tage: tägliche Granularität
Angeforderte Daten, die nicht aus aggregierten Daten stammen, werden aus den Rohdaten der Sitzungs- und Verbindungsinformationen bezogen. Diese Daten neigen dazu, schnell zu wachsen, und haben daher eine eigene Bereinigungseinstellung. Die Bereinigung stellt sicher, dass nur relevante Daten langfristig aufbewahrt werden. Dies gewährleistet eine bessere Leistung bei gleichzeitiger Beibehaltung der für die Berichterstellung erforderlichen Granularität.
| # | Einstellungsname | Betroffene Schematabelle | Betroffene Tabellen und Diagramme auf Monitor-Seiten | Aufbewahrungstage für Premium | Aufbewahrungstage für Advanced |
|---|---|---|---|---|---|
| 1 | GroomSessionsRetentionDays | MonitorData.Session und Monitordata.Connection-Tabellen | Diese Einstellung wirkt sich auf Sitzungsdetails, die Anmeldedauer pro Benutzersitzung und anwendungsbasierte Nutzungstabellen auf der Seite “Trends” aus. | 90 | 31 |
| 2 | GroomFailuresRetentionDays | MonitorData.MachineFailureLog und MonitorData.ConnectionFailureLog | Seite “Trends”: Diese Einstellung wirkt sich auf Diagramme und Tabellen auf der Registerkarte “Fehler” aus. | 90 | 31 |
| 3 | GroomLoadIndexesRetentionDays | MonitorData.LoadIndex | Diese Einstellung wirkt sich auf die Daten aus, die auf der Registerkarte “Lastauswertungsindex” auf der Seite “Trends” angezeigt werden. | 3 | 3 |
| 4 | GroomDeletedRetentionDays | MonitorData.Machine-, MonitorData.Catalog-, MonitorData.DesktopGroup- und MonitorData.Hypervisor-Entitäten, die einen LifecycleState von „Deleted“ aufweisen. Diese Einstellung löscht auch alle zugehörigen Session-, SessionDetail-, Summary-, Failure- oder LoadIndex-Datensätze. | Machine-, Catalog-, DesktopGroup- und Hypervisor-Entitäten, die einen LifecycleState von „Deleted“ aufweisen. Diese Einstellung löscht auch alle zugehörigen Session-, SessionDetail-, Summary-, Failure- oder LoadIndex-Datensätze. | 90 | 31 |
| 5 | GroomSummariesRetentionDays | MonitorData.DesktopGroupSummary, MonitorData.FailureLogSummary und MonitorData.LoadIndexSummary | Diese Einstellung wirkt sich auf alle Diagrammdaten auf der Seite “Trends” aus. | 365 | 31 |
| 6 | GroomMachineHotfixLogRetentionDays | MonitorData.Hotfix | Diese Einstellung wirkt sich auf die VDA-Hotfix-Daten aus, die auf der Seite “Maschinendetails” angezeigt werden. | 90 | 31 |
| 7 | GroomHourlyRetentionDays | alle Summary-Tabellen | Dies wirkt sich auf die wöchentlichen Diagramme aus, die auf der Seite “Trends” angezeigt werden. | 32 | 31 |
| 8 | GroomApplicationInstanceRetentionDays | MonitorData.ApplicationInstance | Diese Einstellung wirkt sich auf das Diagramm und die Tabellen auf der Registerkarte “Kapazitätsmanagement” sowie auf die Anwendungsnutzungstabellen auf der Seite “Trends” aus. | 90 | Nicht zutreffend |
| 9 | GroomNotificationLogRetentionDays | MonitorData.NotificationLog | Diese Einstellung wirkt sich auf die in Monitor angezeigten Warnungen aus. | 90 | Nicht zutreffend |
-
10 GroomResourceUsageRawDataRetentionDays MonitorData.Resourceutilization Diese Einstellung wirkt sich auf die CPU- und Arbeitsspeicherdiagramme aus, die auf der Seite “Maschinendetails” unter “Historische Maschinenauslastung” angezeigt werden, sowie auf die Datenberechnung im Bereich “Kostenoptimierung” auf der Registerkarte “Workload-Größenanpassung”. 3 3 11 GroomResourceUsageHourDataRetentionDays MonitorData.Resourceutilizationsummary Diese Einstellung wirkt sich auf die CPU- und Arbeitsspeicherdiagramme aus, die auf der Seite “Maschinendetails” unter “Historische Maschinenauslastung” angezeigt werden, sowie auf die Datenberechnung im Bereich “Kostenoptimierung” auf der Registerkarte “Workload-Größenanpassung”. 30 30 -
12 GroomResourceUsageDayDataRetentionDays MonitorData.Resourceutilizationsummary Diese Einstellung wirkt sich auf das CPU- und Arbeitsspeicherdiagramm aus, das auf der Seite “Trends” unter “Ressourcenauslastung” der Maschine und auf der Seite “Maschinenauslastung” für eine bestimmte Maschine angezeigt wird. 365 31 13 GroomProcessUsageRawDataRetentionDays MonitorData.ProcessUtilization Diese Einstellung wirkt sich auf die Ressourcentrendinformationen pro Prozess aus, die auf der Seite “Historische Maschinennutzung” angezeigt werden. 1 1 14 GroomProcessUsageHourDataRetentionDays MonitorData.ProcessUtilizationHourSummary Diese Einstellung wirkt sich auf den CPU- und Arbeitsspeichernutzungstrend pro Prozess aus, der auf der Seite “Historische Maschinennutzung” angezeigt wird. 7 7 15 GroomProcessUsageDayDataRetentionDays MonitorData.ProcessUtilizationDaySummary Diese Einstellung wirkt sich auf den CPU- und Arbeitsspeichernutzungstrend pro Prozess aus, der auf der Seite “Historische Maschinennutzung” angezeigt wird. 30 30 16 GroomSessionMetricsDataRetentionDays MonitorData.Sessionmetrics Diese Einstellung wirkt sich auf alle Diagramme aus, die auf der Registerkarte “Sitzungsleistung” der Benutzerdetailseite angezeigt werden. 1 1 17 GroomMachineMetricDataRetentionDays MonitorData.Machinemetrics Diese Einstellung wirkt sich auf das Diagramm und die Tabelle auf der Registerkarte “Ressourcenauslastung” auf der Seite “Trends” aus. 3 3 18 GroomMachineMetricDaySummaryDataRetentionDays MonitorData.MachineMetricDaySummary Diese Einstellung wirkt sich auf das Diagramm und die Tabelle auf der Registerkarte “Ressourcenauslastung” auf der Seite “Trends” aus. 365 31 19 GroomApplicationErrorsRetentionDays MonitorData.ApplicationError Diese Einstellung wirkt sich auf die Fehlerdetails aus, die in der Spalte “Anwendungsfehler” auf der Seite “Anwendungen” angezeigt werden. 1 1 20 GroomApplicationFaultsRetentionDays MonitorData.Applicationfailure Diese Einstellung wirkt sich auf die Spalte “Anwendungsfehler” auf der Seite “Anwendungen” aus. 1 1
Vorsicht:
Sie können die Werte in der Monitor Service-Datenbank nicht ändern.
Die langfristige Aufbewahrung von Daten hat folgende Auswirkungen auf die Tabellengrößen:
-
Stündliche Daten. Wenn stündliche Daten bis zu zwei Jahre in der Datenbank verbleiben dürfen, kann eine Site mit 1000 Bereitstellungsgruppen dazu führen, dass die Datenbank wie folgt wächst:
1000 Bereitstellungsgruppen x 24 Stunden/Tag x 365 Tage/Jahr x 2 Jahre = 17.520.000 Datenzeilen. Die Leistungsauswirkungen einer so großen Datenmenge in den Aggregationstabellen sind erheblich. Da die Dashboard-Daten aus dieser Tabelle stammen, können die Anforderungen an den Datenbankserver groß sein. Übermäßig große Datenmengen können die Leistung dramatisch beeinträchtigen.
-
Sitzungs- und Ereignisdaten. Dies sind die Daten, die jedes Mal erfasst werden, wenn eine Sitzung gestartet und eine Verbindung/Wiederverbindung hergestellt wird. Für eine große Site (100.000 Benutzer) wachsen diese Daten schnell. Zum Beispiel würden zwei Jahre dieser Tabellen mehr als ein TB an Daten sammeln, was eine High-End-Datenbank auf Unternehmensebene erfordern würde.