Conteúdo e Base de Dados¶
Visão Geral¶
Esta análise foi realizada a partir da importação local do ficheiro .bacpac presente no repositório. A base de dados de produção poderá ser maior.
Dimensão da Base de Dados¶
| Métrica | Valor |
|---|---|
| Tamanho total | 1.7 GB (1,744 MB) |
| Espaço reservado | 1,167 MB |
| Dados | 794 MB |
| Índices | 347 MB |
Tabelas por Dimensão¶
| Tabela | Registos | Tamanho (MB) | Notas |
|---|---|---|---|
icUrlTracker |
1,631,926 | 457.52 | EXCESSIVO - Tracker de redirecionamentos URL |
cmsPropertyData |
870,978 | 255.48 | Valores de propriedades para todas as versões |
LogApp |
396,455 | 188.07 | Logs da aplicação |
cmsPreviewXml |
45,403 | 187.02 | Cache XML de pré-visualização |
cmsDocument |
45,876 | 14.72 | Metadados de documentos |
cmsContentXml |
3,689 | 8.58 | Cache de conteúdo publicado |
cmsContentVersion |
47,485 | 6.27 | Versões de conteúdo |
umbracoLog |
32,336 | 5.58 | Logs do Umbraco |
umbracoNode |
4,468 | 2.42 | Todos os nós de conteúdo |
icUrlTracker: 1.6 Milhões de Registos
A tabela icUrlTracker ocupa 457 MB (26% da base de dados) com 1.6 milhões de registos de redirecionamento de URLs. Esta tabela está severamente inchada e deve ser limpa.
Análise de Versões¶
| Métrica | Valor |
|---|---|
| Total de nós | 4,468 |
| Total de versões | 47,485 |
| Média de versões por nó | ~10 |
| Versões a eliminar (mantendo 2 por nó) | 41,365 |
Registos de cmsPropertyData a eliminar |
838,525 |
Piores Casos¶
Alguns artigos acumularam mais de 1,200 versões cada. Cada versão armazena uma cópia completa de todos os valores de propriedades na tabela cmsPropertyData, contribuindo significativamente para o bloat da base de dados.
Reciclagem¶
Existem 85 nós na reciclagem (recycle bin) que devem ser eliminados permanentemente para libertar espaço e reduzir ruído.
Impacto na Performance¶
O excesso de dados na base de dados tem impacto direto na performance da aplicação:
icUrlTracker(1.6M registos) - Cada pedido pode consultar esta tabela para verificar redirecionamentoscmsPropertyData(870K registos) - O Umbraco carrega dados de propriedades para construir a cache de conteúdocmsPreviewXml(187 MB) - Cache XML de pré-visualização ocupa espaço desnecessário
Recomendações de Limpeza¶
| Ação | Registos a Eliminar | Espaço Estimado |
|---|---|---|
Limpar icUrlTracker |
~1,631,926 | ~457 MB |
| Eliminar versões antigas (manter 2 por nó) | 41,365 versões | ~200+ MB |
Eliminar cmsPropertyData órfãos |
838,525 registos | ~200+ MB |
| Limpar reciclagem | 85 nós | Variável |
Limpar LogApp |
396,455 registos | ~188 MB |
Limpar umbracoLog |
32,336 registos | ~5 MB |
Redução Estimada
Com estas ações de limpeza, é possível reduzir a base de dados de 1.7 GB para menos de 200 MB, uma redução de cerca de 88%.
Script de Limpeza de Versões¶
Para eliminar versões antigas mantendo as 2 mais recentes por nó, é necessário:
- Identificar as versões a manter (2 mais recentes por
contentNodeId) - Eliminar registos de
cmsPropertyDatadas versões a remover - Eliminar registos de
cmsPreviewXmldas versões a remover - Eliminar registos de
cmsContentVersiondas versões a remover - Eliminar registos de
cmsDocumentdas versões a remover
Backup Obrigatório
Fazer sempre um backup completo da base de dados antes de executar qualquer operação de limpeza.