Percentuale riscontri cache buffer

Microsoft.SQLServer.2016.DBEngine.BufferCacheHitRatioMonitor (UnitMonitor)

Percentuale riscontri cache del buffer per il motore di database 2016

Knowledge Base article:

Riepilogo

Monitoraggio percentuale riscontri cache del buffer per il motore di database di SQL 2016

Percentuale di pagine trovate nel pool di buffer senza dover ricorrere a una lettura dal disco.

Cause

Il valore zero indica un collo di bottiglia della memoria - SQL Server non è in grado di memorizzare nella cache in modo efficace pagine di dati in memoria; le letture da disco sono relativamente alte.

Soluzioni

Parametri di cui è possibile eseguire l'override

Nome

Descrizione

Valore predefinito

Priorità avviso

Definisce la priorità dell'avviso.

Normale

Gravità avviso

Definisce la gravità dell'avviso.

Errore

Abilitato

Abilita o disabilita il flusso di lavoro.

Genera avvisi

Definisce se il flusso di lavoro genera un avviso.

Intervallo (secondi)

Intervallo di tempo ricorrente in secondi in cui eseguire il flusso di lavoro.

300

Numero di campioni

Indica quante volte un valore misurato deve violare una soglia prima che venga modificato lo stato.

6

Soglia

Il valore raccolto verrà confrontato con questo parametro.

0

Element properties:

TargetMicrosoft.SQLServer.2016.DBEngine
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2016.DBEngine.BufferCacheHitRatio.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2016: percentuale di riscontri cache del buffer del motore di database troppo bassa
La percentuale di riscontri cache nel buffer dell'istanza di SQL "{0}" nel computer "{1}" è troppo bassa. Per altre informazioni, vedere la scheda relativa al contesto dell'avviso.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2016.DBEngine.BufferCacheHitRatioMonitor" Accessibility="Public" Enabled="true" Target="SQL2016Core!Microsoft.SQLServer.2016.DBEngine" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2016.DBEngine.BufferCacheHitRatio.MonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.DBEngine.BufferCacheHitRatioMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Normal" MonitorTypeStateID="Normal" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<Threshold>0</Threshold>
<NumSamples>6</NumSamples>
</Configuration>
</UnitMonitor>