Spazio libero sul database

Microsoft.SQLServer.2016.AnalysisServices.UnitMonitor.MultidimensionalDatabase.FreeSpace (UnitMonitor)

Il monitoraggio restituisce un avviso quando lo spazio disponibile su disco per la cartella di archiviazione del database multidimensionale di SSAS scende sotto l'impostazione della soglia di avviso, espressa come percentuale della somma delle dimensioni stimate della cartella di archiviazione del database e dello spazio disponibile su disco. Il monitoraggio restituisce un avviso critico quando lo spazio disponibile scende sotto la soglia critica. Il monitoraggio non considera le partizioni che si trovano in cartelle diverse da quella di archiviazione del database.

Knowledge Base article:

Riepilogo

Le dimensioni della cartella del database multidimensionale di SSAS in genere aumentano nel tempo man mano che vengono aggiunti i dati dalle origini del data warehouse per molte applicazioni tipiche del server. Gli amministratori dovranno pertanto controllare che lo spazio rimanente nella posizione di archiviazione per la cartella di database sia sempre sufficiente. Gli amministratori controlleranno anche lo spazio disponibile nelle cartelle delle partizioni che possono essere configurate all'esterno della struttura di directory della cartella di database. Tali cartelle non vengono monitorate da questa regola ma dal monitoraggio dello spazio disponibile per l'archiviazione della partizione di SSAS.

Cause

Quando lo spazio disponibile su disco nell'unità in cui è configurata la posizione di archiviazione del database diventa troppo basso, possono verificarsi alcuni errori impedendo la corretta elaborazione dei dati, ritardando le query dell'utente nonché influendo sulle altre applicazioni che condividono la stessa allocazione dello spazio su disco. Tale condizione è pericolosa per il server. Di conseguenza è importante controllare che rimanga un margine sufficiente di spazio disponibile al fine di evitare errori di elaborazione dispendiosi in termini di tempo e di costi che possono causare interruzioni o ritardi di produzione, in particolar modo per le dimensioni o i gruppi di misure che tendono ad aumentare rapidamente nel tempo.

Soluzioni

Le risoluzioni per lo spazio insufficiente disponibile su disco dipendono dalle cause radice che devono essere investigate caso per caso quando si verifica tale problema. È possibile provare a risolvere tale condizione adottando uno degli approcci potenziali seguenti:

Risorse esterne

Configurare le proprietà del server in Analysis Services

Documentazione TechNet per i contatori delle prestazioni di SSAS

Guida alle prestazioni multidimensionali di SSAS

Parametri di cui è possibile eseguire l'override

Nome

Descrizione

Valore predefinito

Soglia critica (%)

Lo stato di integrità passa a Critico quando il contatore delle prestazioni Spazio disponibile del database (%) scende sotto la soglia.

5

Abilitato

Abilita o disabilita il flusso di lavoro

Genera avvisi

Definisce se il flusso di lavoro genera un avviso

Intervallo (secondi)

Intervallo di tempo ricorrente in secondi in cui eseguire il flusso di lavoro.

900

Ora di sincronizzazione

Ora di sincronizzazione specificata usando il formato a 24 ore. Può essere omessa.

 

Timeout (secondi)

Specifica il tempo di esecuzione consentito per il flusso di lavoro prima che venga chiuso e contrassegnato come non riuscito.

300

Soglia avviso (%)

Lo stato di integrità passa ad Avviso se il contatore delle prestazioni Spazio disponibile del database (%) scende sotto la soglia ma rimane comunque superiore alla soglia critica (%).

10

Element properties:

TargetMicrosoft.SQLServer.2016.AnalysisServices.MultidimensionalDatabase
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2016.AnalysisServices.MonitorType.Database.FreeSpacePercent
RemotableTrue
AccessibilityPublic
Alert Message
SSAS 2016: spazio disponibile del database insufficiente
Il valore dello spazio disponibile per la cartella di database dell'istanza multidimensionale di SSAS "{2}" nell'unità "{4}" è solo pari a: {5}\%. Questo valore è inferiore alla soglia configurata per il monitoraggio.
Unità (punto di montaggio): {4}
Posizione di archiviazione: {2}
Dimensioni disco: {1} GB
Spazio disponibile database: {6} GB ({5}\%)
Dimensioni cartella database: {3} GB
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2016.AnalysisServices.UnitMonitor.MultidimensionalDatabase.FreeSpace" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" Target="SQLAS!Microsoft.SQLServer.2016.AnalysisServices.MultidimensionalDatabase" TypeID="Microsoft.SQLServer.2016.AnalysisServices.MonitorType.Database.FreeSpacePercent" ParentMonitorID="SystemHealth!System.Health.PerformanceState" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2016.AnalysisServices.UnitMonitor.MultidimensionalDatabase.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.2016.AnalysisServices.Database']/StorageLocation$</AlertParameter3>
<AlertParameter4>$Data/Context/Property[@Name='DatabaseDefaultForlderSizeGB']$</AlertParameter4>
<AlertParameter5>$Target/Property[Type='SQLAS!Microsoft.SQLServer.2016.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.2016.AnalysisServices.Instance']/ServiceName$</ServiceName>
<DatabaseName>$Target/Property[Type="SQLAS!Microsoft.SQLServer.2016.AnalysisServices.Database"]/DatabaseName$</DatabaseName>
<ConnectionString>$Target/Host/Property[Type='SQLAS!Microsoft.SQLServer.2016.AnalysisServices.Instance']/ConnectionString$</ConnectionString>
<DataDir>$Target/Host/Property[Type='SQLAS!Microsoft.SQLServer.2016.AnalysisServices.Instance']/DataDir$</DataDir>
<CriticalThreshold>5</CriticalThreshold>
<WarningThreshold>10</WarningThreshold>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>