Freier Speicherplatz in der Datenbank

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

Der Monitor gibt eine Warnung aus, wenn der verfügbare Speicherplatz auf dem Datenträger für den Speicherordner der tabellarischen SSAS-Datenbank unter die Einstellung für den Warnungsschwellenwert fällt. Dieser Wert wird als Prozentsatz der Summe aus der geschätzten Größe des Speicherordners der Datenbank und dem freien Speicherplatz auf dem Datenträger ausgedrückt. Der Monitor gibt eine kritische Warnung aus, wenn der verfügbare Speicherplatz unter den kritischen Schwellenwert fällt.

Knowledge Base article:

Zusammenfassung

Der Ordner für die tabellarische SSAS-Datenbank kann mit der Zeit wachsen, wenn laufend mehr Daten aus Datenquellen hinzugefügt werden. Administratoren müssen diese Vorgänge daher überwachen, um sicherzustellen, dass jederzeit genügend Speicherplatz für den Datenbankordner vorhanden ist.

Ursachen

Wenn zu wenig verfügbarer Speicherplatz auf dem Laufwerk vorhanden ist, auf dem der Speicherort der Datenbank konfiguriert ist, können Fehler auftreten, durch die Benutzeranfragen verzögert oder andere Anwendungen beeinträchtigt werden, für die derselbe Speicherplatz zugeordnet wurde. Dies kann Probleme auf dem Server verursachen. Daher ist es wichtig, den Speicherplatz zu überwachen und sicherzustellen, dass genügend Speicherplatz verfügbar ist, um kostspielige und zeitraubende Verarbeitungsfehler zu vermeiden, die Produktionsausfälle oder -verzögerungen verursachen können. Dies gilt insbesondere für Datenbanken, die mit der Zeit schnell wachsen.

Lösungen

Die Lösungen bei wenig verfügbarem Speicherplatz auf dem Datenträger richten sich nach den jeweiligen Ursachen, die bei jedem Auftreten dieses Problems untersucht werden müssen. Zur Behebung sind folgende Herangehensweisen möglich:

Extern

Konfigurieren von Servereigenschaften in Analysis Services

TechNet-Dokumentation zu Leistungsindikatoren (SSAS)

Leitfaden zur Leistung für SSAS (mehrdimensional)

Parameter, die außer Kraft gesetzt werden können

Name

Beschreibung

Standardwert

Kritischer Schwellenwert (%)

Der Integritätsstatus ändert sich in "Kritisch", wenn der Leistungsindikator für den freien Datenbankspeicherplatz (%) unter den Schwellenwert fällt.

5

Aktiviert

Aktiviert oder deaktiviert den Workflow

Ja

Generiert Warnungen

Definiert, ob der Workflow eine Warnung generiert

Ja

Intervall (Sekunden)

Das periodische Intervall in Sekunden, in dem der Workflow ausgeführt werden soll.

900

Synchronisierungszeit

Die in einem 24-Stunden-Format angegebene Synchronisierungszeit. Kann ausgelassen werden.

 

Timeout (Sekunden)

Gibt die Zeit an, die der Workflow ausgeführt werden darf, bevor er geschlossen und als fehlgeschlagen markiert wird.

300

Schwellenwert für Warnung (%)

Der Integritätsstatus ändert sich in "Warnung", wenn der Leistungsindikator für den freien Datenbankspeicherplatz (%) unter den Schwellenwert fällt, aber noch über dem kritischen Schwellenwert (%) liegt.

10

Element properties:

TargetMicrosoft.SQLServer.2016.AnalysisServices.TabularDatabase
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: unzureichender freier Datenbankspeicherplatz
Auf dem Laufwerk "{4}" ist nur {5} \% freier Speicherplatz für den Datenbankordner "{2}" der SSAS-Tabelleninstanz verfügbar. Dieser Wert liegt unter dem konfigurierten Schwellenwert für den Monitor.
Laufwerk (Bereitstellungspunkt): {4}
Speicherort: {2}
Datenträgergröße: {1} GB
Freier Datenbankspeicherplatz: {6} GB ({5} \%)
Größe des Datenbankordners: {3} GB
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2016.AnalysisServices.UnitMonitor.TabularDatabase.FreeSpace" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" Target="SQLAS!Microsoft.SQLServer.2016.AnalysisServices.TabularDatabase" 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.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.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>