Espacio disponible en la base de datos

Microsoft.SQLServer.2014.AnalysisServices.UnitMonitor.TabularDatabase.FreeSpace (UnitMonitor)

El monitor proporciona una advertencia cuando el espacio libre disponible para la carpeta de almacenamiento de base de datos tabular de SSAS es inferior al Umbral de advertencia configurado, expresado como porcentaje de la suma del tamaño estimado de la carpeta de almacenamiento de la base de datos más el espacio libre en disco. El monitor emite una alerta crítica cuando el espacio disponible es inferior al Umbral crítico.

Knowledge Base article:

Resumen

La carpeta de base de datos tabular de SSAS puede crecer con el tiempo a medida que se agregan más datos de los orígenes de datos. Como tal, los administradores desearán supervisar para asegurarse de que queda espacio suficiente en la ubicación de almacenamiento para la carpeta de la base de datos.

Causas

Cuando el espacio disponible en el disco de la unidad donde está configurada la ubicación de almacenamiento de la base de datos se vuelva demasiado bajo, se pueden producir errores, retrasando las consultas del usuario o afectando además a otras aplicaciones que comparten la misma asignación de espacio en el disco. Esto es incorrecto para el servidor. En concreto para las bases de datos que crecen con rapidez con el tiempo, es importante supervisar y asegurarse de que queda un margen suficiente de espacio disponible, para evitar costosos errores y que pueden requerir mucho tiempo, que pueden provocar retrasos o interrupciones de la producción.

Soluciones

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:

Externo

Configurar las propiedades del servidor en Analysis Services

Documentación de TechNet para los contadores de rendimiento de SSAS

Guía sobre rendimiento multidimensional de SSAS

Parámetros invalidables

Nombre

Descripción

Valor predeterminado

Umbral crítico (%)

El estado cambia a Crítico si el contador de rendimiento de espacio libre de base de datos (%) es inferior al umbral.

5

Habilitado

Habilita o deshabilita el flujo de trabajo

True

Genera alertas

Define si el flujo de trabajo genera una alerta

True

Intervalo (segundos)

Intervalo de tiempo periódico en segundos en que se ejecuta el flujo de trabajo.

900

Hora de sincronización

Hora de sincronización especificada en un formato de 24 horas. Se puede omitir.

 

Umbral de advertencia (%)

El estado cambia a Advertencia si el contador de rendimiento de espacio libre de base de datos (%) es inferior al umbral pero superior al Umbral crítico (%).

10

Element properties:

TargetMicrosoft.SQLServer.2014.AnalysisServices.TabularDatabase
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2014.AnalysisServices.MonitorType.Database.FreeSpacePercent
RemotableTrue
AccessibilityPublic
Alert Message
SSAS 2014: el espacio libre en la base de datos no es suficiente
Solo está disponible para la carpeta de base de datos de instancia tabular de SSAS "{2}" de la unidad "{4}" el {5}\% del espacio libre, valor inferior al umbral configurado para el monitor.
Unidad (punto de montaje): {4}
Ubicación de almacenamiento: {2}
Tamaño de disco: {1} GB
Espacio libre de base de datos: {6} GB ({5}\%)
Tamaño de carpeta de base de datos: {3} GB
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.AnalysisServices.UnitMonitor.TabularDatabase.FreeSpace" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" Target="SQLAS!Microsoft.SQLServer.2014.AnalysisServices.TabularDatabase" TypeID="Microsoft.SQLServer.2014.AnalysisServices.MonitorType.Database.FreeSpacePercent" ParentMonitorID="SystemHealth!System.Health.PerformanceState" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.AnalysisServices.UnitMonitor.TabularDatabase.DatabaseFreeSpace.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='UsedOnDatabaseDriveGB']$</AlertParameter1>
<AlertParameter2>$Data/Context/Property[@Name='TotalOnDatabaseDriveGB']$</AlertParameter2>
<AlertParameter3>$Target/Property[Type='SQLAS!Microsoft.SQLServer.2014.AnalysisServices.Database']/StorageLocation$</AlertParameter3>
<AlertParameter4>$Data/Context/Property[@Name='DatabaseDefaultForlderSizeGB']$</AlertParameter4>
<AlertParameter5>$Target/Property[Type='SQLAS!Microsoft.SQLServer.2014.AnalysisServices.Database']/MountPoint$</AlertParameter5>
<AlertParameter6>$Data/Context/Property[@Name='DatabaseFreeSpacePercent']$</AlertParameter6>
<AlertParameter7>$Data/Context/Property[@Name='DatabaseFreeSpaceGB']$</AlertParameter7>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Above" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="Between" HealthState="Warning"/>
<OperationalState ID="Error" MonitorTypeStateID="Below" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ServiceName>$Target/Host/Property[Type='SQLAS!Microsoft.SQLServer.2014.AnalysisServices.Instance']/ServiceName$</ServiceName>
<DatabaseName>$Target/Property[Type="SQLAS!Microsoft.SQLServer.2014.AnalysisServices.Database"]/DatabaseName$</DatabaseName>
<ConnectionString>$Target/Host/Property[Type='SQLAS!Microsoft.SQLServer.2014.AnalysisServices.Instance']/ConnectionString$</ConnectionString>
<DataDir>$Target/Host/Property[Type='SQLAS!Microsoft.SQLServer.2014.AnalysisServices.Instance']/DataDir$</DataDir>
<CriticalThreshold>5</CriticalThreshold>
<WarningThreshold>10</WarningThreshold>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
</Configuration>
</UnitMonitor>