Espérance de vie d'une page

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

Espérance de vie d’une page (s) du moteur de base de données 2016

Knowledge Base article:

Résumé

L'espérance de vie d'une page correspond au nombre de secondes pendant lesquelles une page est conservée dans le pool de mémoires tampons sans références. Une espérance de vie élevée pour une page signifie que les données requises se trouvent dans le cache au lieu d'être envoyées sur le disque dur.

Causes

Des valeurs d'espérance de vie d'une page extrêmement basses peuvent indiquer les problèmes suivants :

Capacité de mémoire insuffisante sur le système

Capacité de mémoire insuffisante configurée pour l'usage de SQL Server

Conception d'index médiocre

Solutions

Vérifiez le système d'E/S pour voir comment il gère la charge. Si les valeurs des compteurs Moyenne disque s/lecture et Moyenne disque s/écriture pour l'objet PhysicalDisk sont élevées (généralement supérieures à 10 millisecondes), cela signifie que le système est peut-être surchargé ou qu'il existe des possibilités pour améliorer les requêtes et les index.

Le pool de mémoires tampons peut être surchargé du fait que SQL Server fonctionne avec un volume élevé de tables simultanément, ou qu'une analyse complète est utilisée à la place d'une recherche par critères. Vérifiez SQL Server : méthodes d'accès : compteur des analyses complètes par seconde pour vérifier le problème.

Vous pouvez utiliser SQL Server Profiler et parcourir Showplan Statistics dans la catégorie des performances afin de rechercher une application qui provoque une analyse complète.

Paramètres remplaçables

Nom

Description

Valeur par défaut

Priorité de l'alerte

Définit la priorité de l'alerte.

Normal

Gravité de l'alerte

Définit la gravité de l'alerte.

Erreur

Activé

Active ou désactive le flux de travail.

Oui

Génère des alertes

Définit si le flux de travail génère une alerte.

Oui

Intervalle (en secondes)

L'intervalle de temps récurrent en secondes pendant lequel le workflow est exécuté.

300

Nombre d'échantillons

Indique le nombre de dépassements de seuil d'une valeur mesurée avant la modification de l'état.

6

Seuil

La valeur collectée sera comparée avec ce paramètre.

300

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.PageLifeExpectancy.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2016 : l’espérance de vie d’une page est trop faible
L’espérance de vie d’une page de l’instance SQL « {0} » sur l’ordinateur « {1} » est trop faible. Pour plus d’informations, consultez l’onglet « Contexte de l’alerte ».
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2016.DBEngine.PageLifeExpectancyMonitor" Accessibility="Public" Enabled="true" Target="SQL2016Core!Microsoft.SQLServer.2016.DBEngine" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2016.DBEngine.PageLifeExpectancy.MonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.DBEngine.PageLifeExpectancyMonitor.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>300</Threshold>
<NumSamples>6</NumSamples>
</Configuration>
</UnitMonitor>