SQL Server 2014 記憶體最佳化資料檔案數目 (積存)

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

當資料庫中記憶體最佳化資料檔案群組內作用中之成對的檢查點檔案數高於指定的閾值時,此監視器會回報重大狀態。此監視器為相依性 (積存) 監視器。

Knowledge Base article:

摘要

當資料庫中記憶體最佳化資料檔案群組內作用中之成對的檢查點檔案數高於指定的閾值時,此監視器會回報重大狀態。

記憶體最佳化檔案群組最多可有 8192 個作用中的 CFP (成對的檢查點檔案) 來儲存在持續記憶體最佳化資料表中所插入、更新及刪除的資料列。當配置的 CFP 達到 8,000 個時,將無法再對持續記憶體最佳化資料表執行新的 DML 交易。只有檢查點與合併作業才能取用剩餘的項目。這可能會導致應用程式無法使用。因此,監視 CFP 計數並採取更正動作十分重要。

原因

有兩個主要原因。首先,您可能已超出持續性記憶體最佳化資料表的記憶體最佳化資料大小 256 GB 之限制。其次,背景執行緒所完成的自動合併及 (或) 資料持續性,無法與交易活動同步。

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

解決方式

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

同時,也應該確認記憶體最佳化檔案群組的資料儲存體,是否未低於 IO 壓力。

可覆寫的參數

名稱

描述

預設值

已啟用

啟用或停用該工作流程。

產生警示

定義工作流程是否會產生警示。

Element properties:

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

Source Code:

<DependencyMonitor ID="Microsoft.SQLServer.2014.DependencyMonitor.Database.ActivePairs" 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.ActivePairs">
<Category>PerformanceCollection</Category>
<Algorithm>WorstOf</Algorithm>
<MemberUnAvailable>Error</MemberUnAvailable>
</DependencyMonitor>