Linux 上的 MSSQL: 記憶體最佳化資料檔案群組容器的可用空間 (\%)

Microsoft.SQLServer.Linux.CollectionRule.Container.SpaceFreePercent (Rule)

收集記憶體最佳化資料檔案群組容器中的可用空間量 (以磁碟可用空間與記憶體最佳化資料檔案群組容器中所儲存的資料大小總和的百分比表示)。

Knowledge Base article:

摘要

此規則會收集記憶體最佳化資料檔案群組容器中,可用空間的數量 (以磁碟可用空間與記憶體最佳化資料檔案群組容器中所儲存的資料大小之總和的百分比表示)。

因為會將更多資料加入記憶體最佳化資料的資料表,所以記憶體最佳化資料檔案群組容器資料夾一般來說會隨著時間變大。

當設有資料庫儲存體位置之磁碟機上的可用磁碟空間太低時,可能會發生失敗,而導致無法成功處理資料、延遲使用者查詢,或影響其他共用相同磁碟空間配置的應用程式。

可用空間不足的解決方法取決於根本原因,必須在發生這問題時於每種情況下調查。此狀況可透過任何可能方式之一予以減輕:

可覆寫的參數

名稱

描述

預設值

Azure 檔案大小上限 (MB)

Azure BLOB 儲存體中所儲存的資料檔案大小上限。此工作流程會考慮將此值用作每個檔案的儲存體容量上限。

1048576

已啟用

啟用或停用該工作流程。

間隔 (秒)

每次重複執行工作流程之間的時間間隔 (秒)。

900

同步處理時間

同步處理時間使用 24 小時制。可予省略。

 

逾時 (秒)

指定流程被關閉及標示為失敗之前,允許執行的時間。

300

資料庫連線的逾時 (秒)

若工作流程無法在指定的期限之內存取資料庫,將會失敗並登錄一則事件。

15

Element properties:

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

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SQLServer.Linux.CollectionRule.Container.SpaceFreePercent" Target="SqlDiscL!Microsoft.SQLServer.Linux.Container" Enabled="true">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.SQLServer.Linux.DataSource.DBFileSizeRawPerfProvider">
<MachineName>$Target/Host/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Host/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Host/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<DatabaseName>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.Database"]/DatabaseName$</DatabaseName>
<FileName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.File"]/FileName$</FileName>
<AzureMaxFileSizeMB>1048576</AzureMaxFileSizeMB>
<ObjectName>Memory-Optimized Container</ObjectName>
<CounterName>Memory-Optimized Filegroup container free space (%)</CounterName>
<PerfInstanceName/>
<ValuePropertyName>FreeSpacePercent</ValuePropertyName>
<ConnectionString>$Target/Host/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Host/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Host/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<SqlExecTimeoutSeconds>60</SqlExecTimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>