Compressão de dados no SQL Server com Protheus
Inventaria a compressão antes de avaliar benefício e custo.
Visão geral
Compressão de dados por linha ou página é diferente de compactar um arquivo de backup ou executar shrink. A orientação TOTVS de 2021 discute PAGE para Protheus; a Microsoft explica que ganhos de I/O podem vir acompanhados de maior uso de CPU e dependem do objeto e da carga. Edição, versão, espaço temporário, log e janela de manutenção precisam ser avaliados no ambiente real. O exemplo é somente leitura dos metadados de partições: não reconstrói índices nem altera o modelo de recuperação. Não há percentual de economia garantido. (TOTVS, 2021, ref. 1; MICROSOFT, s.d., ref. 2)
Exemplo comentado
-- Inventario somente leitura; executar no banco de homologacao escolhido.
SELECT OBJECT_SCHEMA_NAME(p.object_id) AS schema_name,
OBJECT_NAME(p.object_id) AS table_name,
p.index_id, p.partition_number, p.data_compression_desc
FROM sys.partitions AS p
JOIN sys.tables AS t ON t.object_id = p.object_id
WHERE t.is_ms_shipped = 0
ORDER BY schema_name, table_name, p.index_id, p.partition_number;Lista o estado por objeto/índice/partição visível ao usuário; nenhum objeto é compactado pelo exemplo. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.
- Comparar CPU, leituras, duração e espaço em amostra representativa. Não aplicar scripts globais ou trocar recovery model sem plano do DBA e validação de backup/restauração.
- Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.