記憶體回收狀態 (彙總)

Microsoft.SQLServer.2014.DependencyMonitor.Database.GarbageCollectionState (DependencyMonitor)

如果所有記憶體內資料檔案中,使用中的資料列所用掉的空間量 (以資料檔案大小的百分比表示) 低於臨界值設定,則此監視器會回報重大狀態,並引發警示。此監視器是相依性 (彙總) 監視器。

Knowledge Base article:

摘要

附註: 這個監視器是相依性 (彙總) 監視器。此監視器的健全狀況狀態是由任何成員監視器的最佳狀態決定。另請參閱相關單位監視器的知識庫文章。

如果記憶體回收行程填滿因數 (記憶體內資料檔案的使用中資料列所使用的空間量,以資料檔案大小的百分比表示) 低於所有相關單位監視器的 [臨界值] 設定,此監視器便會回報重大狀態,並引發警示。

記憶體最佳化資料檔案群組的記憶體回收填滿因數是一種衡量標準,顯示所有含已插入/刪除資料列之使用中資料/差異檔案的平均填滿因數。如果此衡量標準低於 50%,即表示自動合併落後。只要 CFP (檢查點檔案配對) 數目低於 8000,而且您有大量儲存體可用記憶體內最佳化檔案群組,這就不會立即造成問題。

您可以在<sys.dm_db_xtp_checkpoint_files (Transact-SQL)>文件中找到詳細資訊

http://msdn.microsoft.com/library/dn133201%28v=sql.120%29.aspx

<記憶體回收運作方式>一節位於<建立及管理記憶體最佳化物件的儲存體>主題下

http://msdn.microsoft.com/library/dn133174%28v=sql.120%29.aspx

原因

已根據內部合併原則開始合併 CFP。如需詳細資料,請參閱 這篇文章

解決方式

依下列文章所述,執行手動合併與強制記憶體回收:

可覆寫的參數

名稱

描述

預設值

已啟用

 

產生警示

 

Element properties:

TargetMicrosoft.SQLServer.2014.Database
Parent MonitorSystem.Health.PerformanceState
AlgorithmWorstOf
Source MonitorMicrosoft.SQLServer.2014.Monitor.DBFileGroupFx.GarbageCollectionState
RelationshipMicrosoft.SQLServer.2014.RelationshipType.DBHostsDBFileGroupFx
CategoryPerformanceCollection
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveTrue
RemotableTrue
AccessibilityPublic

Source Code:

<DependencyMonitor ID="Microsoft.SQLServer.2014.DependencyMonitor.Database.GarbageCollectionState" Accessibility="Public" Enabled="true" Target="SQL2014Core!Microsoft.SQLServer.2014.Database" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" RelationshipType="SQL2014Core!Microsoft.SQLServer.2014.RelationshipType.DBHostsDBFileGroupFx" MemberMonitor="Microsoft.SQLServer.2014.Monitor.DBFileGroupFx.GarbageCollectionState">
<Category>PerformanceCollection</Category>
<Algorithm>WorstOf</Algorithm>
<MemberUnAvailable>Error</MemberUnAvailable>
</DependencyMonitor>