Der Monitor warnt, wenn die Länge der Warteschlange für Verarbeitungspoolaufträge für die SSAS-Instanz den konfigurierten Schwellenwert überschritten hat.
Der Monitor warnt, wenn die Länge der Warteschlange für Verarbeitungspoolaufträge den konfigurierten Schwellenwert überschreitet. Die Warteschlange weist möglicherweise darauf hin, dass manche Anforderungen nicht ausgeführt werden können, da auf einen freien Thread aus dem Pool gewartet werden muss, auch wenn die Aufträge selbst ggf. zügig ausgeführt und zurückgegeben werden.
Die Auslastung der verfügbaren Threads aus dem Verarbeitungspool kann mehrere Ursachen haben wie z. B. eine Fehlkonfiguration der Servereinstellungen mit Auswirkungen auf den Pool oder außergewöhnlich hohe Anforderungen an die Instanz durch Benutzer oder geplante Aufträge. Sowohl die Threads zum Ausführen von Benutzerabfragen als auch die Verarbeitungsaufträge werden aus dem Verarbeitungspool zugeordnet, sodass hohe Arbeitsauslastung zu zusätzlicher Belastung führen kann, die diese Bedingung herbeiführt.
Für das Auflösen dieser Warnung müssen Administratoren zahlreiche Faktoren kennen und berücksichtigen, insbesondere die Arbeitsauslastungsanforderungen, Benutzer- und Auftragszeitpläne, andere geplante Vorgänge auf dem Servercomputer sowie die verfügbaren Ressourcen. Zu den möglichen Gegenmaßnahmen beim Überschreiten des konfigurierten Schwellenwerts durch die Länge der Warteschlange für Verarbeitungspoolaufträge gehören:
Ändern Sie die Konfigurationseinstellungen für den Pool, um die Anzahl der verfügbaren Threads im Verarbeitungspool zu erhöhen. Lesen Sie dazu zunächst den SSAS Multidimensional Performance Guide (Handbuch zur Leistung mehrdimensionaler SSAS-Datenbanken). Diese Vorgehensweise ist nicht empfehlenswert, sofern sie nicht gründlich überlegt und getestet wurde. Wenden Sie sich ggf. an den Microsoft-Support.
Verringern Sie die Arbeitsauslastung der SSAS-Instanz, indem Sie Aufträge neu planen, den Entwurf der Datenbank ändern, Benutzerabfragen einschränken oder einen Teil der Arbeitsauslastung auf andere Server verlagern.
Erhöhen Sie die Anzahl der verfügbaren Threads im Pool, indem Sie die Anzahl der Kerne auf dem Server erhöhen. Der Pool wird dadurch dynamisch vergrößert.
Ändern Sie die konfigurierten Schwellenwerte für die Warnung, um die Bedingung zu vermeiden.
Deaktivieren Sie den Monitor ganz, wenn die Warteschlange für Verarbeitungspoolaufträge auf dem Server nicht relevant ist.
Konfigurieren von Servereigenschaften in Analysis Services
TechNet-Dokumentation zu Leistungsindikatoren (SSAS)
Leistungshandbuch für SSAS (mehrdimensional)
Name | Beschreibung | Standardwert |
Aktiviert | Aktiviert oder deaktiviert den Workflow | True (wahr) |
Generiert Warnungen | Definiert, ob der Workflow eine Warnung generiert | True (wahr) |
Intervall (Sekunden) | Das periodische Intervall in Sekunden, in dem der Workflow ausgeführt werden soll. | 900 |
Anzahl der Stichproben | Der Integritätsstatus ändert sich, wenn die Anzahl der Schwellenwertverletzungen höher als die Mindestanzahl der Verletzungen oder gleich der Mindestanzahl der Verletzungen ist. | 4 |
Synchronisierungszeit | Die in einem 24-Stunden-Format angegebene Synchronisierungszeit. Kann ausgelassen werden. |
|
Warnungsschwellenwert | Der Integritätsstatus ändert sich, wenn der Analysis Services-Leistungsindikator den Schwellenwert überschreitet. | 0 |
Target | Microsoft.SQLServer.2014.AnalysisServices.Instance | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2014.AnalysisServices.MonitorType.Instance.CommonPerformanceData | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2014.AnalysisServices.UnitMonitor.Instance.ProcessingPoolJobQueueLength" Accessibility="Public" Enabled="true" Target="SQLAS!Microsoft.SQLServer.2014.AnalysisServices.Instance" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2014.AnalysisServices.MonitorType.Instance.CommonPerformanceData" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.AnalysisServices.UnitMonitor.Instance.ProcessingPoolJobQueueLength.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SQLAS!Microsoft.SQLServer.2014.AnalysisServices.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Data/Context/Value$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Healthy" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="Warning" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<PerformanceCounterName>Processing pool job queue length</PerformanceCounterName>
<CounterName>Processing pool job queue length</CounterName>
<Threshold>0</Threshold>
<SampleCount>4</SampleCount>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>