メモリ最適化データ アクティブ ファイル ペア

Microsoft.SQLServer.2014.Monitor.DBFileGroupFx.ActivePairs (UnitMonitor)

メモリ最適化データ ファイル グループのアクティブ チェックポイント ファイル ペアの数が指定されたしきい値を上回ると、モニターは重大状態を報告し、アラートを生成します。

Knowledge Base article:

概要

メモリ最適化データ ファイル グループのアクティブ チェックポイント ファイル ペアの数が指定されたしきい値を上回ると、モニターは重大状態を報告し、アラートを生成します。

8,000 個の CFP が割り当てられる場合、新しい DML トランザクションを永続的なメモリ最適化テーブルで実行することができません。 チェックポイントとマージ操作のみに、残りの項目の消費が許可されます。

原因

CFP のマージは、内部マージ ポリシーに基づいて開始されます。詳細については、 この記事を参照してください。

解決方法

次の記事で説明するように、手動マージを実行し、強制的にガベージ コレクションを行います。

上書き可能なパラメーター

名前

説明

既定値

アラートの優先度

アラートの優先順位を定義します。

アラートの重要度

アラートの重大度を定義します。

警告

有効

ワークフローを有効または無効にします。

はい

アラートを生成する

ワークフローがアラートを生成するかどうかを定義します。

はい

間隔 (秒)

ワークフローを実行する定期的な実行間隔 (秒)。

300

サンプル数

測定値が何回しきい値に違反すると状態変更が生じるかを示します。

6

スクリプト遅延 (ミリ秒)

このパラメーターは、ワークフローによって実行される、連続する T-SQL クエリ間の遅延を設定します。これは、大量のターゲット オブジェクトが存在する際に、ワークフローによって生成されるフットプリントを削減するのに役立つ場合があります。このパラメーターを変更する前に Microsoft サポートに連絡してください。

0

同期時刻

24 時間形式で指定した同期時刻。省略可能です。

00:02

しきい値

収集された値はこのパラメーターと比較されます。

7900

タイムアウト (秒)

ワークフローが終了して失敗とマークされるまでの、ワークフローの許容実行時間を指定します。

180

Element properties:

TargetMicrosoft.SQLServer.2014.DBFileGroupFx
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2014.MonitorType.DBFileGroupFx.ActiveAndNonActiveFiles
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2014: アクティブな CFP の合計数が制限に達しようとしています
アクティブ チェックポイント ファイル ペアの合計数がしきい値に達しました。
サーバー: {1}
SQL Server インスタンス: {0}
データベース: {2}
ファイル グループ: {3}
アクティブ チェックポイント ファイル ペア: {4}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.Monitor.DBFileGroupFx.ActivePairs" Target="SQL2014Core!Microsoft.SQLServer.2014.DBFileGroupFx" ParentMonitorID="SystemHealth!System.Health.PerformanceState" TypeID="Microsoft.SQLServer.2014.MonitorType.DBFileGroupFx.ActiveAndNonActiveFiles" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Monitor.DBFileGroupFx.ActivePairs.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</AlertParameter3>
<AlertParameter4>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.FileGroup"]/GroupName$</AlertParameter4>
<AlertParameter5>$Data/Context/Property[@Name='ActivePairs']$</AlertParameter5>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ErrorState" MonitorTypeStateID="ErrorState" HealthState="Warning"/>
<OperationalState ID="SuccessState" MonitorTypeStateID="SuccessState" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<ServerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ServerName>
<SqlInstanceName>$Target/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</SqlInstanceName>
<DatabaseName>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</DatabaseName>
<Value>$Data/Property[@Name='ActivePairs']$</Value>
<Threshold>7900</Threshold>
<TimeoutSeconds>180</TimeoutSeconds>
<ScriptDelayMsec>0</ScriptDelayMsec>
<NumSamples>6</NumSamples>
</Configuration>
</UnitMonitor>