Warteschlangenlänge für Verarbeitungspool-E/A-Aufträge

Microsoft.SQLServer.2012.AnalysisServices.UnitMonitor.Instance.ProcessingPoolIOJobQueueLength (UnitMonitor)

Der Monitor gibt eine Warnung aus, wenn die Länge der Verarbeitungspool-EA-Auftrags-Warteschlange für die SSAS-Instanz den konfigurierten Schwellenwert überschreitet.

Knowledge Base article:

Zusammenfassung

Der Monitor gibt eine Warnung aus, wenn die Größe der Verarbeitungspool-E/A-Warteschlange den konfigurierten Schwellenwert überschreitet. Das Queuing kann anzeigen, dass einige Anfragen eventuell nicht ausgeführt werden, weil auf einen freien Thread aus dem Pool gewartet wird, auch wenn die Aufträge selbst schnell ausgeführt und zurückgegeben werden. Das Queuing des EA-Auftragspools zeigt an, dass auf dem Server ein E/A-Engpass existiert.

Ursachen

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.

Lösungen

Um diese Warnung auflösen zu können, müssen Administratoren verschiedene Faktoren verstehen und berücksichtigen, darunter u. a. Arbeitsauslastungsanforderungen, Benutzer- und Auftragsplanungen, andere geplante Prozesse auf dem Servercomputer und die verfügbaren Ressourcen. Wenn die Länge der Verarbeitungspool-E/A-Warteschlange den konfigurierten Schwellenwert überschreitet, sind folgende Aktionen zur Problemlösung möglich:

Extern

Konfigurieren von Servereigenschaften in Analysis Services

TechNet-Dokumentation zu Leistungsindikatoren (SSAS)

Leistungshandbuch für SSAS (mehrdimensional)

Parameter, die außer Kraft gesetzt werden können

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

Element properties:

TargetMicrosoft.SQLServer.2012.AnalysisServices.Instance
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2012.AnalysisServices.MonitorType.Instance.CommonPerformanceData
RemotableTrue
AccessibilityPublic
Alert Message
SSAS 2012: Warteschlangenlänge für Verarbeitungspool-E/A-Aufträge überschritten.
Die Verarbeitungspool-E/A-Auftrags-Warteschlangenlänge für die SSAS-Instanz {1} auf dem Computer {0} überschreitet den konfigurierten Schwellenwert.
Aktuelle Auftrags-Warteschlangenlänge: {2}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2012.AnalysisServices.UnitMonitor.Instance.ProcessingPoolIOJobQueueLength" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" Target="SQLAS!Microsoft.SQLServer.2012.AnalysisServices.Instance" TypeID="Microsoft.SQLServer.2012.AnalysisServices.MonitorType.Instance.CommonPerformanceData" ParentMonitorID="SystemHealth!System.Health.PerformanceState" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2012.AnalysisServices.UnitMonitor.Instance.ProcessingPoolIOJobQueueLength.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.2012.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 I/O job queue length</PerformanceCounterName>
<CounterName>Processing pool I/O job queue length</CounterName>
<Threshold>0</Threshold>
<SampleCount>4</SampleCount>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>