MSSQL sur Linux : Consommation de mémoire (\%) du pool de ressources utilisateur

Microsoft.SQLServer.Linux.CollectionRule.UserResourcePool.MemoryConsumptionPercent (Rule)

Récupère la quantité de mémoire utilisée par la liste de ressources partagées, exprimée sous forme de pourcentage de mémoire disponible pour les tables de données à mémoire optimisée d'une liste de ressources partagées donnée.

Knowledge Base article:

Récapitulatif

La règle collecte la quantité de mémoire utilisée par la liste de ressources partagées, exprimée sous forme de pourcentage de mémoire disponible pour les tables de données à mémoire optimisée de la liste de ressources partagées.

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.

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

Active ou désactive le flux de travail.

Oui

Intervalle (en secondes)

Intervalle régulier (en secondes) auquel exécuter le flux de travail.

900

Heure de synchronisation

Heure de la synchronisation spécifiée selon un format de 24 heures. Peut être omise.

 

Délai d'expiration (secondes)

Spécifie la durée pendant laquelle le flux de travail est autorisé à s'exécuter avant d'être fermé et marqué comme ayant échoué.

300

Délai d’attente pour la connexion de base de données (secondes)

Le workflow échoue et enregistre un événement s’il ne peut pas accéder à la base de données pendant la période spécifiée.

15

Element properties:

TargetMicrosoft.SQLServer.Linux.UserResourcePool
CategoryPerformanceCollection
EnabledTrue
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.SQLServer.Linux.ConditionDetection.UserResourcePoolMemoryMapper Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.SQLServer.Linux.CollectionRule.UserResourcePool.MemoryConsumptionPercent" Target="SqlDiscL!Microsoft.SQLServer.Linux.UserResourcePool" Enabled="true">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.SQLServer.Linux.ConditionDetection.UserResourcePoolMemoryMapper">
<MachineName>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<PoolName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.ResourcePool"]/Name$</PoolName>
<CounterName>User Resource Memory Consumption (%)</CounterName>
<ObjectName>SQL User Resource Pool</ObjectName>
<FieldName>PoolUsedMemoryPercent</FieldName>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>