Consommation de mémoire du pool de ressources (Rollup)

Microsoft.SQLServer.Linux.Rollup.Database.MemoryConsumption (DependencyMonitor)

Le moniteur signale un état critique et génère une alerte quand la quantité de mémoire utilisée par le pool de ressources dépasse le paramètre de seuil, exprimé en pourcentage de mémoire disponible pour les tables de données à mémoire optimisée du pool de ressources. Ce moniteur est un moniteur de dépendance (Rollup).

Knowledge Base article:

Récapitulatif

Le moniteur signale un état critique quand la quantité de mémoire utilisée par le pool de ressources dépasse le paramètre de seuil, exprimé en pourcentage de mémoire disponible pour les tables de données à mémoire optimisée du pool de ressources. Ce moniteur est un moniteur de dépendance (Rollup).

Quand le pool de ressources nommé est mappé à une base de données avec des tables à mémoire optimisée, il surveille la mémoire allouée à toutes les tables à mémoire optimisée, y compris les tables internes utilisées pour différentes structures au sein du moteur de données à mémoire optimisée.

Causes

Les données à mémoire optimisée de SQL Server utilisent plus de mémoire que SQL Server et différemment de SQL Server. Il est possible que la quantité de mémoire que vous avez installée et allouée pour les données à mémoire optimisée devienne inadéquate pour vos besoins croissants. Si c’est le cas, la mémoire pourrait s’avérer insuffisante.

Pour plus d'informations, consultez cet article : Liaison d’une base de données comprenant des tables à mémoire optimisée à une liste de ressources partagées.

Résolutions

Pour remédier au problème de mémoire faible ou épuisée, vous devez libérer de la mémoire existante en réduisant son utilisation ou de rendre plus de mémoire disponible pour vos données à mémoire optimisée. Les actions pour y remédier sont notamment les suivantes :

Paramètres remplaçables

Nom

Description

Valeur par défaut

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.

Non

Element properties:

TargetMicrosoft.SQLServer.Linux.Database
Parent MonitorSystem.Health.PerformanceState
AlgorithmWorstOf
Source MonitorMicrosoft.SQLServer.Linux.Monitor.UserResourcePool.MemoryConsumption
RelationshipMicrosoft.SQLServer.Linux.DatabaseReferencesUserResourcePool
CategoryPerformanceCollection
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveFalse
RemotableTrue
AccessibilityPublic

Source Code:

<DependencyMonitor ID="Microsoft.SQLServer.Linux.Rollup.Database.MemoryConsumption" Accessibility="Public" Enabled="true" Target="SqlDiscL!Microsoft.SQLServer.Linux.Database" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" RelationshipType="SqlDiscL!Microsoft.SQLServer.Linux.DatabaseReferencesUserResourcePool" MemberMonitor="Microsoft.SQLServer.Linux.Monitor.UserResourcePool.MemoryConsumption">
<Category>PerformanceCollection</Category>
<Algorithm>WorstOf</Algorithm>
<MemberUnAvailable>Error</MemberUnAvailable>
</DependencyMonitor>