El monitor proporciona una advertencia cuando el espacio libre disponible para el contenedor del grupo de archivos OLFTP en memoria es inferior a la configuración del umbral de advertencia, expresado como porcentaje de la suma del tamaño del contenedor del grupo de archivos OLTP en memoria más el espacio libre en disco. El monitor genera una alerta crítica cuando el espacio disponible es inferior al Umbral crítico.
El monitor proporciona una advertencia cuando el espacio libre disponible para el contenedor del grupo de archivos OLFTP en memoria es inferior a la configuración del umbral de advertencia, expresado como porcentaje de la suma del tamaño del contenedor del grupo de archivos OLTP en memoria más el espacio libre en disco. El monitor genera una alerta crítica cuando el espacio disponible es inferior al Umbral crítico.
La carpeta del contenedor del grupo de archivos OLTP en memoria normalmente crece con el tiempo a medida que se agregan más datos a las tablas en memoria. Como tal, los administradores desearán supervisar para asegurarse de que queda espacio suficiente en la ubicación de almacenamiento para la carpeta del contenedor.
Si el espacio disponible en el disco de la unidad donde está configurada la ubicación de almacenamiento de la base de datos es demasiado bajo, se pueden producir errores que impidan el procesamiento correcto de los datos, retrasen las consultas del usuario o afecten a otras aplicaciones que comparten la misma asignación de espacio en el disco.
El almacenamiento se asigna como parte de las operaciones DML en las tablas optimizadas de memoria duradera. Tiene que configurar el almacenamiento hasta el cuádruple del tamaño en memoria de las tablas optimizadas de memoria duradera. Si ha configurado el almacenamiento correctamente pero todavía se ejecuta en un espacio de almacenamiento libre bajo, es posible que la E/S por segundo admitida por los contenedores no pueda admitir la demanda de la carga de trabajo. La recomendación general para los contenedores es admitir el triple de la E/S por segundo de la frecuencia de generación de datos para atender el rellenado de los archivos delta y de datos y para la operación de combinación automática que tiene que leer los archivos delta y de datos de origen y, a continuación, combinarlos en un CFP de destino.
Las soluciones para la escasez del espacio disponible de disco dependen de las causas raíz, que se deben investigar en cada caso cuando se produzca el problema. Existen muchos enfoques potenciales para paliar esta situación:
Disminuya la cantidad de datos almacenados en las tablas en memoria.
Quite los datos que consumen espacio en disco en la misma unidad con la carpeta del contenedor del grupo de archivos de OLTP en memoria.
Agregue otro contenedor al grupo de archivos de OLTP en memoria.
Aumente el tamaño de la unidad lógica en que está almacenada la carpeta del contenedor del grupo de archivos de OLTP en memoria con el Administrador de discos.
Copie toda la carpeta del contenedor del grupo de archivos de OLTP en memoria en una unidad nueva con más espacio disponible.
Modifique los umbrales como corresponda para ajustarlos a la carga de trabajo esperada y a las condiciones del entorno.
Deshabilite el monitor completamente si el espacio en disco no constituye un problema para la instancia.
Nombre | Descripción | Valor predeterminado |
Umbral crítico | El monitor cambiará el estado a 'Crítico' si el valor se sitúa por debajo del umbral. | 10 |
Habilitado |
| Sí |
Genera alertas |
| Sí |
Intervalo (segundos) | Intervalo de tiempo periódico en segundos en que se ejecuta el flujo de trabajo. | 900 |
Retraso de script (milisegundos) | Este parámetro define el retraso entre las consultas T-SQL consecutivas que ejecuta el flujo de trabajo. Puede ayudar a reducir la superficie que genera el flujo de trabajo en caso de gran número de objetos de destino. Consulte con el soporte técnico de Microsoft antes de cambiar este parámetro. | 0 |
Hora de sincronización | Hora de sincronización especificada en un formato de 24 horas. Se puede omitir. |
|
Tiempo de espera (segundos) | Especifica el tiempo durante el que se puede ejecutar el flujo de trabajo antes de que se cierre y se marque como error. | 300 |
Umbral de advertencia | El monitor cambiará el estado a 'Advertencia' si el valor se sitúa por debajo del umbral. | 20 |
Target | Microsoft.SQLServer.2014.Container | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2014.MonitorType.Container.FreeSpacePercent | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2014.Monitor.Container.FreeSpacePercent" Target="SQL2014Core!Microsoft.SQLServer.2014.Container" ParentMonitorID="SystemHealth!System.Health.PerformanceState" TypeID="Microsoft.SQLServer.2014.MonitorType.Container.FreeSpacePercent" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Monitor.Container.FreeSpacePercent.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Container"]/ContainerName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.FileGroup"]/GroupName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</AlertParameter3>
<AlertParameter4>$Target/Host/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</AlertParameter4>
<AlertParameter5>$Target/Host/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter5>
<AlertParameter6>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Container"]/ContainerStorage$</AlertParameter6>
<AlertParameter7>$Data/Context/Property[@Name='DriveTotalSizeMB']$</AlertParameter7>
<AlertParameter8>$Data/Context/Property[@Name='FreeSpacePercent']$</AlertParameter8>
<AlertParameter9>$Data/Context/Property[@Name='FreeSpaceSpaceMB']$</AlertParameter9>
<AlertParameter10>$Data/Context/Property[@Name='AllocatedSizeMB']$</AlertParameter10>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Critical" MonitorTypeStateID="ContainerFreeSpaceCritical" HealthState="Error"/>
<OperationalState ID="Warning" MonitorTypeStateID="ContainerFreeSpaceWarning" HealthState="Warning"/>
<OperationalState ID="Success" MonitorTypeStateID="ContainerFreeSpaceSuccess" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<ConnectionString>$Target/Host/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ConnectionString$</ConnectionString>
<ServerName>$Target/Host/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ServerName>
<SqlInstanceName>$Target/Host/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</SqlInstanceName>
<DatabaseName>$Target/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</DatabaseName>
<DBFileId>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Container"]/ContainerID$</DBFileId>
<Value>Property[@Name='FreeSpacePercent']</Value>
<CriticalThreshold>10</CriticalThreshold>
<WarningThreshold>20</WarningThreshold>
<TimeoutSeconds>300</TimeoutSeconds>
<ScriptDelayMsec>0</ScriptDelayMsec>
</Configuration>
</UnitMonitor>