Espaço Livre do Banco de Dados

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

O monitor relata um aviso quando o espaço em disco disponível para a pasta de armazenamento do banco de dados multidimensional do SSAS cai abaixo da configuração Limite de Aviso, expressa como percentual da soma do tamanho estimado da pasta de armazenamento do banco de dados mais o espaço livre em disco. O monitor relata um alerta crítico quando o espaço livre cai abaixo do Limite Crítico. O monitor não considera partições localizadas em pastas que não sejam a pasta de armazenamento do banco de dados.

Knowledge Base article:

Resumo

A pasta do banco de dados multidimensional do SSAS geralmente cresce com o tempo conforme mais dados são adicionados das fontes de data warehouse para os aplicativos mais comuns no servidor. Como tal, os administradores desejarão monitorar para garantir que há espaço suficiente restante no local de armazenamento para a pasta do banco de dados. Observe que os administradores também desejarão monitorar o espaço disponível em pastas de partição, que pode ser configurado fora da estrutura de diretórios da pasta do banco de dados. Essas pastas não são monitoradas por essa regra, mas pelo Monitor de espaço disponível de armazenamento da partição do SSAS.

Causas

Quando o espaço em disco disponível na unidade em que o local de armazenamento do banco de dados está configurado se tornar muito baixo, podem ocorrer falhas, comprometendo o processamento de dados bem-sucedido, atrasando as consultas dos usuários ou afetando também outros aplicativos que compartilham a mesma alocação do espaço em disco. Isso não é bom para o servidor. Particularmente para bancos de dados que crescem rapidamente com o tempo, é importante monitorar o problema e garantir que uma margem suficiente de espaço disponível permaneça, para evitar falhas de processamento caras e demoradas que podem incorrer em atrasos ou interrupções na produção. Isso é especialmente verdadeiro para dimensões ou grupos de medidas que tendem a crescer rapidamente ao longo do tempo.

Resoluções

A resolução ou resoluções para pouco espaço em disco disponível dependem da causa raiz, que deve ser investigada em cada ocorrência quando esse problema acontecer. A condição pode ser atenuada por qualquer uma das seguintes abordagens possíveis:

Externo

Configurar propriedades do servidor no Analysis Services

Documentação TechNet para os Contadores de Desempenho do SSAS

Guia de Desempenho Multidimensional do SSAS

Parâmetros Substituíveis

Nome

Descrição

Valor padrão

Limite Crítico (%)

O Estado de Integridade mudará para Crítico quando o contador de desempenho de Espaço Livre do Banco de Dados (%) cair abaixo do limite.

5

Habilitado

Habilita ou desabilita o fluxo de trabalho

Sim

Gerar Alertas

Define se o fluxo de trabalho gera um Alerta

Sim

Intervalo em Segundos

O intervalo de tempo recorrente em segundos no qual executa-se o fluxo de trabalho.

900

Hora da Sincronização

A hora da sincronização especificada usando um formato de 24 horas. Pode ser omitido.

 

Tempo Limite (segundos)

Especifica o tempo que o fluxo de trabalho pode funcionar antes de ser fechado e marcado como com falha.

300

Limite de aviso (%)

O Estado de Integridade mudará para Aviso se o contador de desempenho de Espaço Livre do Banco de Dados (%) cair abaixo do limite, mas ainda for maior que o Limite Crítico (%).

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: Espaço Livre do Banco de Dados Insuficiente
Apenas {5}\% de espaço livre está disponível para a pasta do banco de dados da instância multidimensional do SSAS "{2}" na unidade "{4}", que é menor do que o limite configurado para o monitor.
Unidade (Ponto de Montagem): {4}
Local de armazenamento: {2}
Tamanho do disco: {1} GB
Espaço livre do banco de dados: {6} GB ({5}\%)
Tamanho da pasta do banco de dados: {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>