MSSQL 2016: メモリ最適化データ ガベージ コレクション FILL FACTOR (\%)

Microsoft.SQLServer.2016.CollectionRule.DBFileGroupFx.GarbageCollectionFillFactor (Rule)

メモリ最適化データ ファイル グループのガベージ コレクション Fill Factor (メモリ最適化データ ファイル内のアクティブな行で使用される領域のサイズを、データ ファイルのサイズに対する割合で表したもの) を収集します。注: このルールは既定では無効になっています。必要に応じて上書きを使用し、ルールを有効にしてください。

Knowledge Base article:

概要

ルールはメモリ最適化データ ファイルグループのガベージ コレクションの FILL FACTOR (メモリ最適化データ ファイルグループ内のアクティブな行により使用される領域の量をデータ ファイルのサイズの割合として表したもの) を収集します。

The rule collects Garbage Collection Fill Factor (an amount of space used by active rows in Memory-Optimized Data files, expressed as a percentage of the size of data files) for Memory-Optimized Data Filegroup.

ガベージ コレクションの FILL FACTOR は、挿入/削除された行を含むすべてのアクティブなデータ ファイル/デルタ ファイルの平均 FILL FACTOR を示すメトリックです。このメトリックが 50% より低い場合、自動マージが遅れていることを示します。CFP (チェックポイント ファイルのペア) の数が 8000 を下回り、メモリ最適化データ ファイル グループで利用できるストレージが十分ある場合、これは問題の直接的な原因にはなりません。

詳細は、sys.dm_db_xtp_checkpoint_files (Transact-SQL) ドキュメントで参照できます

More information can be found under the sys.dm_db_xtp_checkpoint_files (Transact-SQL) documentation

http://go.microsoft.com/fwlink/?LinkId=799285

ガベージ コレクションの動作に関するセクションは、トピック「メモリ最適化オブジェクト用ストレージの作成と管理」で見つかります。

http://go.microsoft.com/fwlink/?LinkId=799286

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

名前

説明

既定値

有効

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

いいえ

間隔 (秒)

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

900

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

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

0

同期時刻

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

00:05

タイムアウト (秒)

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

300

Element properties:

TargetMicrosoft.SQLServer.2016.DBFileGroupFx
CategoryPerformanceCollection
EnabledFalse
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.SQLServer.2016.DataSource.DBFileGroupFx.GarbageCollectionPerf Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.SQLServer.2016.CollectionRule.DBFileGroupFx.GarbageCollectionFillFactor" Target="SQL2016Core!Microsoft.SQLServer.2016.DBFileGroupFx" Enabled="false">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.SQLServer.2016.DataSource.DBFileGroupFx.GarbageCollectionPerf">
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<ServerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ServerName>
<SqlInstanceName>$Target/Host/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.ServerRole"]/InstanceName$</SqlInstanceName>
<ObjectName>Memory-Optimized Filegroup</ObjectName>
<CounterName>Memory-Optimized Data Garbage Collection Fill Factor (%)</CounterName>
<InstanceName/>
<DatabaseName>$Target/Host/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.Database"]/DatabaseName$</DatabaseName>
<Value>$Data/Property[@Name='StorageUsageFillFactor']$</Value>
<TimeoutSeconds>300</TimeoutSeconds>
<ScriptDelayMsec>0</ScriptDelayMsec>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>